ゲーム開発にCocos2D+Box2Dを使用しています。Box2Dはピクセルではなくメートルを使用するため、ピクセルとメートルの比率を定義する必要があります。したがって、コードの先頭にPTM_RATIOを定義します。
define PTM_RATIO 32
しかし、iPhone <5の場合は32で十分です。他のデバイスの場合は、別の番号を設定する必要があります。デバイスタイプに応じてこの比率を定義することは可能ですか?
ゲーム開発にCocos2D+Box2Dを使用しています。Box2Dはピクセルではなくメートルを使用するため、ピクセルとメートルの比率を定義する必要があります。したがって、コードの先頭にPTM_RATIOを定義します。
define PTM_RATIO 32
しかし、iPhone <5の場合は32で十分です。他のデバイスの場合は、別の番号を設定する必要があります。デバイスタイプに応じてこの比率を定義することは可能ですか?
ところで、コード内のすべてのPTM_RATIOオカレンスを次のように置き換えることができます
[Box2DHelper pixelsToMeterRatio]
このようにして、問題なくRetina解像度と通常の解像度を切り替えることができます。
ファイルhttp://subversion.assembla.com/svn/oiram/trunk/GoLeft/GoLeft/Box2DHelper.mmをチェックして ください
CC_CONTENT_SCALE_FACTORについて知るには、 CC_CONTENT_SCALE_FACTOR()をいつ使用するかを確認してください。
更新:たとえば、iPad用に別のPTMを使用する
#define isIPad UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad
#define PTM_RATIO (isIPad ? 64 : 32)