アクションゲームの開発画面において衝突判定を可視化する要求に沿ってXcodeのライブラリ PhysicsDebugger を使うべく RubyGems のお膳立てをし Cocoapods もどうやらインストールのなるまで進捗しましたが 肝心の可視化が機能してくれない迄を綴ったのが2016年7月24日の 前編 にて本記事は其の続編、解決編になります。
解決の
開発機:MacBook Air(11-inch, Mid 2013)
MacOSバージョン:OS X 10.9.2
Xcodeバージョン:5.1
言語:Objective-C
主関連アプリ:uPanda Breaks Out Fruits
また勿論ブロック崩しの基本的な仕組みの参考を供与されている tnantoka (Tatsuya Tobioka) 氏の GitHub のソース Add PhysicsDebugger は有用です。
実際に機能している参考サイトのソースを見て 手元のソースを見て其の際の違和感が解決の糸口となりました。
self = [super initWithSize:size];
if (self) {
[YMCPhysicsDebugger init];
/* Create scene contens */
[self drawPhysicsBodies];
}
}
手元では一箇所に記述している PhysicsDebugger の初期化と実行は参考サイトでは一箇所に纏め、繋げて書かれてなどいません。 どうやら両者を纏めて一箇所に記述するのが宜しくなかろうかと、 即ちどうしても赤枠が表示されない、 PhysicsDebuggerが想定通り機能しない問題の原因は ソースの書き順にるのではないかと当たりを付けたのです。
其処で [YMCPhysicsDebugger init]; の位置は最初に一度初期化するだけの上記の位置で問題無しと踏み、 [self drawPhysicsBodies]; をPhysicsBodyを描画した都度、其の後に、書くように変更しました。 例えば -(void)addBlocks メソッドの最後の行であり、 -(void)addBallメソッド 、 -(void)addPaddle メソッドの最後の行に挿入すると言う具合です。
さてどうやら此れが正鵠を得ていたようで 前編 及び逡巡した Command Line Developer Toolsのインストール 、そして今回の後編に渡った目論見は達成されました。
バージョン: 4.12
リリース: 2014年9月15日
更新: 2022年4月20日
サイズ : 10.7 MB
互換性: iOS 14.4 以降のiPhone、iPod touch に対応。および、macOS 11.0以降とApple M1 チップを搭載したMac に対応。