WEBOPIXEL

3Dゲームが簡単に作れるUnityちょっとやってみた[1]

Posted: 2013.07.24 / Category: Unity 

Unityは3Dゲーム統合開発環境です。すごくざっくり言うと3Dゲームに特化したFlashなイメージです。
PCゲームはもちろんiPhoneやAndroidも開発できてしまうのが売りらしいです。
ちょっと使ってみたので、さらっと書いてみます。

Sponsored Link

環境
Windows 8
Unity 4.1.5

Unity本体のダウンロードとインストール

まずはインストールしなきゃ始まらない!
下記URLからUnityをダウンロードしてください。

Unity – ダウンロード

Windows環境でインストールができない問題

Windows8の場合インストール時Microsoftアカウントと紐づけしている場合インストールが失敗する場合があります。
原因は「C:\Users」の現在のユーザーのフォルダ名が日本語になっているからです。この場合、新規ユーザーでローマ字で作成してください。

新規プロジェクトの作成

無事インストールしてUnityを立ち上げたら「File」->「New Project…」で新規プロジェクトを作成します。

新規プロジェクト作成

「Create New Project」タブの「Project Location:」で適当なパスを選択して「Create」ボタンを押します。

Unity基本画面

まっさらな画面が表示されました。

オブジェクトの作成

ゲームとして成り立たせるには、キャラクターだったり、アイテムだったり、テキストだったりなんらかの表示するオブジェクトが必要ですね。
Unityではすべてのオブジェクトを画面左側にあるHierarchyビューで管理します。
新規作成時には「Main Camera」が一つだけあります。

試しに丸いボールを作成してみましょう。
Hierarchyビューの「Create」ボタンをクリックします。

Unity基本画面

ドロップダウンが表示されるので「Sphere」を選択します。
Hierarchyビューに「Sphere」が追加されて、中央のSceneビューに丸い物体が表示されましたね。

オブジェクトの編集

作成した「Sphere」の位置や大きさなどのパラメータを数値で編集するには、画面右側のInspectorビューで行います。
「Sphere」の名前を「Boll」に変更してみましょう。

Inspectorビューで名前の変更

Position(位置)やScale(大きさ)なども変更してみてください。

マテリアルを作成して色を付ける

作成したボールは真っ白でつまらないので、色をつけてみましょう。
色はオブジェクトに直接設定するのではなく、マテリアルというものを作成します。

画面下のProjectビューの「Assets」の中でを右クリックします。
メニューから「Create」->「Material」を選択します。

Projectビューでマテリアル作成

名前を「BollMT」とします。

マテリアルの編集はオブジェクトと同じくInspectorビューで行います。
カラーは「Main Color」の右側の四角部分をクリックすると編集できます。
Shaderを「Specular」にすると光沢のあるマテリアルになります。
他にも色々用意されていますので、弄ってみてください。

Projectビューでマテリアル作成

オブジェクトに適用する

作成したマテリアルをオブジェクトに適用します。
Projectビューで「BollMT」をHierarchyの「Boll」までドラッグします。もしくはSceneビューのボールに直接ドラッグしてもできます。
Sceneビューでボールが作成したマテリアルの色に変わりましたね。

ライトの作成

綺麗なマテリアルも作成したことだし、現在の成果を確認してみましょう。
画面上の中央にある再生ボタンを押してGmaeビューに切り替えます。

再生ボタン

結果は真っ暗で残念な結果になっていることでしょう。
このままではよろしくないのでシーンにライトを配置して明るくしてみましょう。
もう一度再生ボタンを押すことでGmaeビューを終了することができます。
Hierarchyビューの「Create」から「Directional light」を選択します。
Hierarchyビューで「Directional light」が作成されたのを確認して、再生ボタンを押します。今度はいい感じになってますね。

ライトを作成したプレビュー

物理シミュレーションで動きをつける

表示するものができたので次はアニメーションを付けてみます。

ボールを落下させる

ボールを落下させるアニメーションをつけてみます。
Unityには物理シミュレーションが簡単に設定できる仕組みがありますので、この機能を利用してみます。
Hierarchyビューで「Boll」を選択します。
Inspectorビューの一番下にある「Add Component」ボタンを押すとメニューが表示されるので「Physics」を選択。次のメニューで「Rigidbody」を選択します。

Add Componentで物理シミュレーション

再生ボタンを押すと動きが確認できます。
ボールが落下するはずです。でも、下に何もないのでどこまでも落下してしまってあまり面白くありませんね。
床を作ってボールが止まるようにしてみましょう。

床を作って止める

Hierarchyビュー「Create」->「Cube」で四角いオブジェクトを作成して、名前を「Floor」にします。
Inspectorビューの数値入力やSceneビューで直接移動させたりして、下記イメージになるように「Floor」の上に「Boll」を配置してください。
ちなみにSceneビューの基本操作は下記です。

回転 Alt + 左クリック
ズーム&ズームアウト マウススクロール
パン マウス中央ボタン

床の作成

再生してみましょう。
確かにボールは止まりましたが、ピタッと止まってしまいましたね。これはよろしくないですね。

ボールをバウンドさせる

バウンドさせるには色を付けたマテリアルと同じように物理計算させるための「Physic Material」というのを使います。
Projectビューの「Assets」で右クリック「Create」->「Physic Material」を選択します。

床の作成

名称は「Floor PMT」にして、Inspectorビューで「Bounciness」を「1」にします。
あとは、通常のマテリアルと同じように「Floor」ドラッグしてにアサインしましょう。

再生で確認すると、今度はボールが床にぶつかるとバウンドするようになりました。
バウンドしすぎたと感じたら「Bounciness」の数値を調節してみてください。

長くなってしまったので、とりあえず以上です。
ここまでだと単なる3Dソフトじゃねーか!って感じはありますが、次回はもう少しインタラクティブ的な要素も入れてゲームっぽくしてみたいと思います。