Cocos2d-Swift 絵を表示するプログラムの解説2
Cocos2d-Swift 絵を表示するプログラムの解説1 - Seasons.NET
前回は、用意した素材がSpriteBuilderによって自動的に解像度毎に画像が生成されプログラム内で自動的に選択されて利用されると説明しました。
具体的には、このコードの部分です。
引数に渡しているファイル名が画像ファイル名ですが、ファイル名をもとに最終的に利用すべき画像ファイルのフルパスをCCSprite内部で判断し、読み込んでいます。
具体的には、実行されているデバイスの情報を用いて、パスを決定しています。iOSでは、下記のように定義されています。
CCFileUtils.m:
iPhone,iPhone HDというのは、いわゆる3.5インチスクリーンのiPhone 3GSやiPhone 4, iPhone 4sといったモデルを指します。
iPhone 5, iPhone 5HDというのは、4インチスクリーンを搭載したiPhone 5や5sといったモデルです。最近追加されたiPhone 6やiPhone 6 Plusといったモデルは、HDモデルと同じ扱いで考えてください。
iPad,iPad HDは、通常のDisplayとRetinaDisplayモデルの2種類で管理されているようです。
ですが、気を付けて欲しい点として、iPad用の画像は、デフォルトの設定では、x2倍されて生成されてしまうので、もしiPhoneと同じリソースを使う前提であれば、以下のように変更しましょう。
ただし、Cocos2d-Swiftでは、Androidの開発も視野に入れた設計になっているため、見た目をなるべく同じにするという点でデフォルトの設定をオススメします。実際に上記設定で表示してみるとiPadではものすごく小さく表示されてみえてしまうので一度試してみると良いでしょう。
設定変更後
デフォルト設定
iPadやAndroidタブレットの高解像度を生かしたコンテンツを作成するのであれば、解像度にあわせたプログラミングが必要になり、手間や工数も当然増えるので注意しましょう。