Unityを使った3Dゲームの作り方(かめくめ)Unityを使った3Dゲームの作り方(かめくめ)ゲーム開発エンジンUnityを使った3Dゲームの制作に参考になる情報を公開しています。0UnityのGizmosを使うとシーンビューにアイコンやテクスチャ、メッシュ等を表示する事が出来るようになります。デフォルトでもシーンビューを見るとカメラやライトの表示がされていますよね?Gizmosを使うとそれを自分で作成する事が出来ます。通常はシーンビューのみGizmosが有効になっていますが、ゲームビューでもGizmosボタンを押せば有効になります。↑のボタンを押すとゲームビューでもGizmosが表示されます。スポンサーリンクGizmosを表示するシーンビューにGizmosを表示するにはGizmosクラスを使用します。Gizmosクラスのメソッドを使うとアイコンやテクスチャ、メッシュ等を描画する事が出来るようになります。Gizmosクラスのメソッドを記述する場所GizmosクラスのメソッドはMonoBehaviourクラスに定義されている専用のメソッド内に記述します。OnDrawGismosOnDrawGismosメソッドはスクリプトをゲームオブジェクトに設定している間呼ばれます。通常であればこのメソッドを使用しGizmosクラスのメソッドを中に記述します。{}}OnDrawGizmosSelectedOnDrawGizmosSelectedメソッドはそのゲームオブジェクトがヒエラルキーで選択されている時だけ実行されます。その為スクリプトが設定されているゲームオブジェクトの選択時だけGizmosを表示したい場合はこちらのメソッドを使用します。{}}Gizmosの色を変更するGizmosの色を変更するにはGizmos.colorプロパティを変更します。0.3f);スクリプトで複数のGizmosを表示する時はGizmos表示前に色を変更しておくといいです。四角柱(キューブ)を表示するにはDrawCubeを使います。1));第1引数が表示する中心位置で第2引数が四角柱のサイズを指定します。四角柱をワイヤーフレームだけで表示する事が出来ます。1));第1引数が表示する中心位置、第2引数がサイズです。球を表示するにはGizmos.DrawSphereを使用します。1f);↑の例では最初にGizmosの色を変更しています。DrawSphereの第1引数は表示する中心位置、第2引数が球の半径になります。球のワイヤーフレームはGizmos.DrawWireSphereを使用します。1f);カメラの錐台を表示カメラの錐台を表示するにはGizmos.DrawFrustumを使用します。1.6f);↑の例では最初にGizmosの色を緑色に変更しています。DrawFrustumの第1引数は位置、第2引数はカメラの視野、第3引数が到達点、第4引数がカメラの位置までの距離、第5引数が幅に対する高さの比率になります。説明だけだと解り辛いですね・・・・(^_^;)テクスチャを表示テクスチャを表示するにはGizmos.DrawGUITextureを使用します。texture);}↑の例ではインスペクタでテクスチャを設定出来るようにし、OnDrawGizmosメソッド内でVector2のテクスチャサイズを宣言します。後でRectのサイズを指定しますが、小数点の値を使うと上手く出来なかった為偶数値を設定するようにしました。DrawGUITextureの第1引数ではRect型の値を設定します。これはテクスチャを表示する位置とテクスチャのサイズを指定します。ここで指定する位置はスクリーンの真ん中からの位置になるようなので、テクスチャのサイズの半分のサイズを移動し中央に表示するようにしています。Rectの引数はX、Y座標、テクスチャの幅、高さを個別に指定する事も出来ます。DrawGUITextureの第2引数は表示するテクスチャを指定します。アイコンを表示するアイコンを表示するにはGizmos.DrawIconを使用します。アイコンに使用する画像はAssets/Gizmosフォルダに配置する必要があります。false);DrawIconの第1引数が表示位置、第2引数がAssets/Gizmosフォルダに配置した画像ファイル名、第3引数は画面サイズを変えた時にアイコンを拡大・縮小するかどうかになります。↑のようにアイコンに使用するファイルをAssets/Gizmosに置きます。レイを表示レイを表示するにはGizmos.DrawLineかGizmos.DrawRayを使用します。50f);DrawLineは第1引数にレイの開始位置、第2引数にレイの終了位置を指定します。DrawRayは第1引数にレイの開始位置、第2引数にはレイの方向ベクトルを指定します。メッシュの表示メッシュの表示をするにはGizmos.DrawMeshを使用します。Vector3.one);}インスペクタでメッシュを指定出来るようにしています。Gizmos.DrawMeshの第1引数はメッシュ、第2引数は表示位置、第3引数は角度、第4引数はメッシュのスケールを指定します。メッシュにはStandardAssetsのEthanのBodyのメッシュを指定しました。黄色いイーサンが表示されていますね(^_^)vメッシュのワイヤーフレームを表示メッシュのワイヤーフレームを表示するにはGizmos.DrawWireMeshを使用します。2f);}引数の指定はGizmos.DrawMeshと同じです。↑の例ではスケールを2倍にしたのでさきほどのイーサンの2倍の大きさになります。↑のようにワイヤーフレームのイーサンが表示されました。最後に全部のサンプルを同時に表示した画像を見てみましょう。表示位置がかなりかぶってるのでわかり辛いですね、いったい何の為に載せたんでしょう・・・・(-_-)最後のメッシュのイーサンのサイズ感だけわかればよかったかも・・・・。終わりにGizmosを使用するとスクリプトから目印としてアイコンを表示したりする事が出来ます。その為、敵が巡回する地点をアイコン表示しておき編集時にわかりやすくしたり出来ますね。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。サイト内検索が出来ますプロフィール管理人のかめくめちゃんです。(-_-)メールはこちらにお願いします(記事への質問はコメント欄にお願いいたします)。kamekumechan@gmail.comいずれはSIRENやバイオハザードみたいなアクションゲームを作りたいと思っています。ゲームシナリオが書けないので面白いゲームはなかなか作れません・・・・。(^_^;)名前の由来はカメが好きだからです。Д`)シクシク...お知らせ2020/01/18個人的にUnity2019.2.18f1をインストールしました。2020/01/01あけましておめでとうございます。(^^)/ユニティちゃんのRPGを作ってみようのPartyStatusスクリプトでpartyMembersのListの型がCharacterStatusとなっていたのでAllyStatusに変更しました。変更したというか、元々AllyStatusに書き換える前のスクリプトを掲載していたので修正しました。ユニティちゃんのRPGを作ってみよう10ーコマンド画面の作成とステータスの表示ーユニティちゃんのRPGでコマンド画面の作成とステータスコマンドを作成し、選択したキャラクターのステータスを表示するようにしていきます。20:00GetPartyStatusメソッドの戻り値もそれに伴って変更しています。2018/08/07コメント欄へのわたくしの返信は停止しております。わたくしに出来る事は既に記事にしてあるので、ブログ右上の検索窓を活用してください。(._.)またブログの最初の方の機能を積み上げていく記事に関しての疑問点は当ブログ記事のスクリプトの説明と寄せられた質問への回答Unityを使った3Dゲームの作り方(かめくめ)の機能積み上げ形式の記事のスクリプトの説明と寄せられた記事の機能についての質問への回答を掲載しています。21:41も参照してみてください。コメントの返信はありませんが、回答は記事に反映されている可能性があります。当ブログはハイスピードプランです。WordPressの編集画面の動作が早くなった。Unityを使った3Dゲームの作り方(かめくめ).。