Unity3Dの公式マニュアル翻訳やってる人がiPhone, Androidでのゲームアプリ開発について記事にしています。Unity3Dでの開発をメインにAsset Storeで入手できるNGUI, Playmakerや, Oculus Riftなど作者サイトからの英語情報を翻訳していきます
2012年8月7日火曜日
NGUI:複数デバイス解像度対応
iPhoneアプリを作成するとき、iPhone 3G対応に頭を悩ませる。解像度の差異があるのでiPhone4とサイズの異なる画像を用意しないといけないためだ。
今回はNGUIでこの複数デバイスの解像度対応を行うためのスクリプトについて、NGUI作者がフォーラム投稿者の回答を引用しているため、紹介したい。
June 25, 2012, 04:48:43 PM
http://www.tasharen.com/forum/index.php?topic=832
ランタイムでAtlasを動的に切替する方法の議論はこのフォーラムでも何度かあった。私もスクリプト作成したので共有したい。
動作の条件として事前作業があるが、あまり難しくないんでぜひ試してほしい。
準備するもの:
・参照元Atlas - UI全体をこのAtlasで作成し、以下のAtlasを参照させる
・参照元Font
以下、解像度別
・SD Atlas - (iPhone 3GS以前)
・SD フォント
・HD Atlas - (初期iPad, iPad2, iPhone4以降)
・HD フォント
・SHD Atlas - (iPad3)SHD=超高解像度だけどiPad3解像度対応をしないなら不要
・SHD フォント -
これら3つの「実体」Atlasおよびフォントをresourcesフォルダ配下に、さらにGUI/SD, GUI/HD, GUI/SHDというフォルダ階層に置く。(参照元ではない点に注意)明確にするために私自身はAtlas関係ファイル(プレハブ、画像イメージ、マテリアル)はすべてこのフォルダにそれぞれ置いている。
以下のスクリプトを任意の空ゲームオブジェクトに貼り付ける
http://www.tasharen.com/forum/index.php?topic=832
(注:リンク先でスクリプト参照のこと)
■■ 重要 ■■
Unity上でEdit→Project Setting→Script Execution Orderにてスクリプト実行順序を変更するメニューに遷移をして、解像度変更コントローラ(ResolutionsSwitchController)を一覧に追加し、実行順を上になるように変更する。目的は出来るかぎり最初に実行することであり、必須条件としてNGUIスクリプトより先に実行すること。私自身はlocalizationの次の実行順としている。
メモ
・横長画面(landscape)想定でスクリプトは動作する(すなわち解像度チェックは横幅Widthを基準に行われている。将来的には変更すべきとおもっているし、自身でも変更可)
・2つあるラベルはデバッグ目的。想定どおりの解像度で動作していることを保証するため
・スクリプトはエディタ(editor)上で動作しないようにも変更できる。(参照をおかしくしてしまうリスクもあるため)
自分のニーズにあわせてこのスクリプトを実行、更新、修正することは自由。このスクリプトが誰かの役に立つことを祈る!
-----
Androidの複数解像度対応は最初からサジを投げたくなるようなものだが、たしかにiPhone 3GS対応はまだまだ手抜きが許されるものでない。
良く考えてるぞNGUI!
登録:
コメントの投稿 (Atom)
自己紹介
- gamesonytablet
- Unity3D公式マニュアル翻訳やってる人がスマホ(iPhone, Android)のゲーム開発しています。気軽に面白く初心者が遊べる内容がモットー。Blogでは開発情報をひたすら、Twitterではゲーム作成の過程で参考にしている情報を中心につぶやきます
ページビューの合計
ゲーム開発記事の目次
過去7日間の人気投稿
-
Unity使っててプロジェクトをインポートするときなどに稀に Missing (Mono Script) などと表示されていることがある。 慣れている方なら「仕方ないな」といって手動で正しいスクリプト見つけて修正していくのだが、これをエディタ上で自動的に修正してくれるパッケー...
-
今回は Unify Community で紹介されている Tips からカレントディレクトリの変更に関する Tips を紹介したい: http://wiki.unity3d.com/index.php/Tip_of_the_day Feb 2013 Tip #5...
-
前回記事に引き続いてCharacter Controllerの正しい使い方についてUnity Gemsからの翻訳を投稿する: ------- http://unitygems.com/mistakes1/ October 15, 2012 Character ...
ブログ アーカイブ
-
▼
2012
(141)
-
▼
8月
(50)
- PlaymakerでOSイベントに対応
- NGUI Flashビルドのメモリリーク
- NGUI 2.1.6
- ちょっと休憩~Unity Editorを日本語にしてみる実験
- Unityプログラミング応用(グラフ作成) ~その3
- Unityプログラミング応用(グラフ作成) ~その2
- Unityプログラミング応用(グラフ作成) ~その1
- NGUI Unity4の新フォントシステムに対応できる?
- Unityシェーダについて考える ~その2
- Unityシェーダについて考える ~その1
- セーブ機能を実現するAsset
- NGUI 2.1.5 - Unity4ベータ対応
- Unityプログラミング基礎(時計の作成) ~その2
- XNAゲームのUnity3D移行
- Unityプログラミング基礎(時計の作成) ~その1
- NGUI UIの配置変更と注意事項
- UnityとBlenderでアニメーションの切り分けは?
- NGUI 2.0.2
- 新しいiPadの解像度とゲーム開発
- Blender アニメーションの作業時間短縮
- 街全体をBlenderで作成する
- NGUI 2.00
- NGUI 2.0.1
- NGUI 2.0.3
- NGUI 2.0.4
- NGUI ドラッグパネルのパフォーマンス
- タイトルを目立たせるBlenderカメラテクニック
- NGUI 背景をボヤかすテクニック
- iTween 複数動作を簡単実現
- NGUI 2.1.4
- NGUI TweenのBounce使える?
- NGUI 2.0.5
- NGUI パーティクルでも活用すべき?
- FingerGestures 50%セール
- NGUI Unity4.0での動作状況
- NGUI作者にメールしてみた
- NGUI:複数デバイス解像度対応
- Playmaker入門ビデオについて
- NGUI ちょっと息抜き:「天才作者」について(続編)
- NGUI 2.0.9
- NGUI 2.0.7
- NGUI 2.0.8
- NGUI 2.0.6
- PlaymakerでiPhoneスワイプにてゲームを動かす
- NGUI 2.1.3
- NGUI ちょっと一息:「天才作者」インディーズゲームの未来は?
- NGUI 攻撃ダメージ表示の作成
- NGUI ちょっと息抜き:「天才作者」の販売方針
- Unity Asset Storeゲームサンプルのダウンロード
- NGUI iPhoneビルドでのパフォーマンス改善
-
▼
8月
(50)
0 件のコメント:
コメントを投稿