日々惑う -雑記ブログ-

プログラミングやUnityの使い方、ソシャゲ運営の手法など自身の考え方などをまとめていく。

【3Dシューティングゲーム】第一回 オブジェクトの配置

Unityを使用した簡単な3D迷路シューティングゲームの作り方を紹介します。この内容は Unityワークショップ勉強会 - Unityでゲームを作ろう のを元にしています。

今回の概要

プロジェクトの立ち上げから、ゲームの舞台となる簡単な迷路の作成

プロジェクトを作る

Unityを立ち上げて表示されるウインドウの右上「New」ボタンから新規プロジェクトを作成
作成時に気をつけるのは「3D/2D」のチェック、今回は3Dを選択
「Create Project」を押して暫く待つと以下の様な画面が表示
f:id:kazafe:20180210000333p:plain

上部中央にある ▶ (Play Mode)ボタンを押すとゲームが再生

オブジェクトの配置

土台 の生成

3Dシューティングゲームの土台を作成
Cube のオブジェクトを作成して、サイズを変更する

GameObject > 3D Object > Cube
Cubeオブジェクトが生成すると[Scene]と[Hierarchy] に追加されることを確認

[Inspector] の Transform のScale値を変更して大きさを変える
X:10、Z:10
[Hierarchy] で Cube を選択して F2 を押して名前を Groundに変更する

※ オブジェクトを作った時は、基本的に Posision はX:0、Y:0、Z:0に設定しておく。

見た目を変える

見た目を変えるオブジェクト用の Material を作って適用する

[Project] でNew Materialを作る
Assets > Create > Material

New Material の名称を GroundMaterial に変更する

[Inspector] の Albedo 右の白い部分をクリックしてカラーパレットを表示して好きな色を決める
f:id:kazafe:20180213010847p:plain

Ground の Mesh Renderer にある
Material の項目に作った GroundMaterial をドラッグ&ドロップで設定
f:id:kazafe:20180213011447p:plain

壁の作成

Cube を作成して、名称を Wall1 に変更。

[Inspector] の Transform のScale値を変更して大きさを変えます。
X:10、Y:3

作った Wall1 を Transform のScale値を変更して、 Ground の周囲に並べます
X:0、Y:2、Z:4.5

同様に3枚の壁を作ってGround の周囲に並べます。
Grounと同様にMaterial を用意して、適用します。
f:id:kazafe:20180318210657p:plain

出口の作成

迷路なので開始と終了を考えます。
開始は迷路を作りながら考えるとして、終了は迷路からの脱出と考えて出口を用意します。

ゴールの目印として門を作ります。
門は Cube を組み合わせることで作ります。複数のオブジェクトを組み合わせる場合、[Hierarchy] でオブジェクトを別のオブジェクトにドラッグ&ドロップすることで、親子関係を作ることができます。親子関係を作ることで親のオブジェクトに変更を加えると、子供のオブジェクトも同じように移動したり、大きさが変わったりします。

空のオブジェクトを作成して、Gate という名前に変更します。
f:id:kazafe:20180213013910p:plain

ここでは空のオブジェクトをフォルダの様な使い方をします。
空のオブジェクト(Gate )を親にして、Cube を3つ作り、ドラッグ&ドロップでその中に入れた後で、Transform を調整して形を整えます。

f:id:kazafe:20180318195550p:plain

f:id:kazafe:20180318195629p:plain
f:id:kazafe:20180318195638p:plain
f:id:kazafe:20180318195645p:plain
これまでのオブジェクトと同様にMaterial を用意して、適用します。

作った門を適当な壁の端に配置して、門を置いた部分の壁の長さを調節します。
f:id:kazafe:20180318211335p:plain

内壁の作成

内部の迷路を作る為の壁を用意します。
新しくCube を作成し、名称をBlock に変更してTransform を以下の様にします。
f:id:kazafe:20180318211640p:plain

この Block を複数並べて迷路を作っていくので、繰り返し使えるようにプレハブ化します。

プレハブ化

繰り返し使用するオブジェクトを[Hierarchy] から [Project] にドラッグ&ドロップします。
そうすると、[Project] にドラッグ&ドロップしたオブジェクトと同じ名称のプレハブが作成されます。

あとは、[Project] にあるプレハブを[Hierarchy]にドラッグ&ドロップすることでプレハブ化したものと同じオブジェクトが生成されます。
これを使って、Block を必要な分だけ作って、並べて中央から渦巻き状の迷路を作ります。

プレハブ - Unity マニュアル

Hierarchy の整理

空のオブジェクトを作り、Stage と名前を付けて、今回作ったオブジェクトを全てその中に入れます。

f:id:kazafe:20180318213537p:plain

次のステップ