cocos2dx v3.16のBox2DでEXC_BAD_ACCESS修正方法
開発のおはなしです。
cocos2dx v3.16のBox2DでEXC_BAD_ACCESSが発生したのでその修正方法メモ。
この関数でクラッシュしたので調べたら、
void b2Island::Solve(b2Profile* profile, const b2TimeStep& step, const b2Vec2& gravity, bool allowSleep) ・・・
for (int32 j = 0; j < m_jointCount; ++j)
{
bool jointOkay = m_joints[i]->SolvePositionConstraints(solverData);
jointsOkay = jointsOkay && jointOkay;
}
このfor文でm_joints[i]をm_joints[j]に修正するといいです。
Cocos Creatorの実機でドット絵が崩れる問題
Cocos Creatorでドット絵のゲームを作っています。
開発中はブラウザでゲームが動くので、動作確認がすぐとれてとても便利です。
ある時、ブラウザで順調に動作しているので、一旦実機でもテストしてみようと思い、Project→BuildでPlatformをiOSにしてBuildボタンを押します。
するとbuildというフォルダが作られるので、中を漁ってXcodeのプロジェクトを見つけ、それを起動します。
Code Signを自分のものに変更して、iPhoneを接続し、ビルドして転送します。
すると、下記のようにドットが崩れて表示されてしまいました。
なんか変・・・
ですが、色々とCocos Creatorをいじった結果、設定で回避できることがわかりました。
Spriteの設定のTypeをSIMPLEからSLICEDに変更します。
これだけです。
これでもう一度Cocos Creatorでビルド、そしてXcodeでもビルドして実機に転送すればオッケーです。
とりあえずこれで開発を進めていきます!
小さなゲーム機「Tiny Arcade」の開発環境を整える
Tiny Arcadeは自分で書いたプログラムを動かせるみたいなので、まずは作る環境を整えたいと思います。
やり方は公式サイトに書いてあります。(もちろん英語!)
さっきの公式サイトに行って、「SETUP」という項目まで下へスクロールします。そこの「this tutorial」というリンクをクリックします。
すると上のようなページが出ると思うんですが、そこの「Arduino website」というリンクをクリックします。どうもArduinoという名前の統合開発環境をインストールすればいいみたいですね。初めて聞いたなArduinoって。なんて読むんだろ?
自分のパソコン用のをダウンロードしましょう。クリックすると寄付を求められますが、無慈悲に「JUST DOWNLOAD」ボタンを押すと無料でダウンロードが始まります。ちゃんと寄付してあげようね!
zipを解凍すると「Arduino.app」が出てきますね(Macの場合です)。これを起動しましょう。
起動中の画面。
ソフトが起動したら、まずは初期設定をします。上のほうの「Arduino」→「Preferences...」をクリックします。
上の画像の部分に以下のURLを入力して一番したのOKボタンを押します。
http://files.tinycircuits.com/ArduinoBoards/package_tinycircuits_index.json
ここまで書いてなんですがもう説明が面倒になってきたので、あとは公式サイトのやり方を見て頑張ってください!!!ごめんよ!
補足:
途中、ポートを認識するところがあるけど、Tiny ArcadeをUSBでパソコンでつないで、さらに、電源を入れるとポートが表示されるようになるから大丈夫だよ。
あと、説明の最後の方でTinyScreenBasicExampleとかいうデモプログラムをアップロードする項目があるけどそのままやると、、、
こんな感じで電源入れても黒画面のままになってしまうけど、
ボタン二つ押しながら電源ONすると、
ちゃんとブートローダーモードで起動してくれるからあわてないでね!
「ツール」→「Build Option」→「TinyArcade Menu」っていうふうに設定して、もう一度デモプログラムをアップロードしてあげると大丈夫です。
こんな感じでデモ画面がパラパラと表示されればOKです。