photo © 2006 Matthew Yaktine | more info (via: Wylio)
とりあえずHUDやりたいのでGUIの基礎ざっくり及びHUDっぽいのやってみる。
UnityGUIのシステム
以下のコードは公式リファレンスのGUI Scripting Guideにあるのとほぼ同じサンプル。
OnGUI()は毎フレーム呼び出される。例えばボタンが使いたい場合は、上記サンプルのようにGUI.Button(Rect, "button01")とか書いておけば、Rectで指定した位置とサイズの"button01"ボタンが描画されるようになる。
OnGUI()の呼び出し時にさっき作った"button01"ボタンがクリックされてた場合、GUI.Button(Rect, "button01")がtrueになるので、ifで評価してクリックされてたらprint()実行するようにしてやる等できる、という感じ。
こんな感じに実装したGUI用スクリプトを、カメラコンポーネント等の適当なコンポーネントにくっつけてぶん回してやればいいらしい。
GUI関連のAPI
- GUI : ボタンやテキストエリアなどの標準コントロール群
- GUIStyle, GUISkins : 標準コントロールの見栄えをいじるときに叩くっぽい
簡単なHUD : フレームレートと照準っぽいものの表示
右上隅にフレームレート、および中央に透過PNGでこさえた照準のようなものを表示する。んで、この機能を実装してみたスクリプトがこちら(SimpleHUD.jsとする)。
照準の画像として以下のようなものを作成。アセットとしてロードしとく。
先程のHUD表示スクリプトをカメラの子コンポーネントにし、sightTextureにロードした画像を割り当てる。
動かすと以下のような見栄えになる。この程度まではとりあえず簡単だった。
0 件のコメント:
コメントを投稿