Unityでゲームを作ろう

Unityを使ったゲーム開発と学習方法や勉強会の記録など

1.基本的な使い方とプレハブの配置

「Unityで個人開発をしたい人のための 3Dゲーム試作ワークショップ -トライコア勉強会- #1」の講義内容のまとめ

Unityについて

Unityとは、ユニティ・テクノロジーズ社が提供する、ゲームエンジン
3D描画/2D描画、サウンド再生などゲームを作る為の機能が備わっている

料金

プランは以下の3つ、基本的な機能は全て Personal で十分使用可能
Personal(無料)
Plus(4,200円/月額)
Pro(15,000円/月額)
Unity - Store

プロジェクトを作る

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

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

モノの配置

ボール の生成

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

シーンビュー - Unity マニュアル
ヒエラルキーウィンドウ - Unity マニュアル

配置されている Sphere の詳細は [Inspector] にComponent 毎に表示される
The Inspector window - Unity マニュアル

[Inspector] > Transform の値を調整する
f:id:kazafe:20180213004417p:plain

[Hierarchy] で Cube を選択して F2 を押して名前を ball に変更する

地面 の生成

GameObject > 3D Object > Sphere
立方体が生成されるので、Scaleを調整して大きくする

[Inspector] > Transform の値を調整
f:id:kazafe:20180213005053p:plain

[Hierarchy] で Sphereを選択して F2 を押して名前を ground に変更する

この時点でゲームの再生を押しても何も動きは見られない
f:id:kazafe:20180213005221p:plain

物理の動きを付ける

オブジェクトに物理法則を適用する Component を追加する

ball を選択して [Inspector] の一番下にある Add Component ボタンを押して
Physics > Rigidbody
の順で選択する(虫眼鏡アイコンの横に名前を入力して Rigidbody を検索することも可能)
f:id:kazafe:20180213005457p:plain

これで再生するとボールは重力によって下に落ちていくようになる

オブジェクトの見た目を変える

色を付ける

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

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

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

好きな画像を表示する

今度は ground に好きな画像を表示する

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

[Project] に好きな画像をドラッグ&ドロップで追加する

[Inspector] の Albedo 左の□に追加した画像をドラッグ&ドロップで設定する
f:id:kazafe:20180213012027p:plain

groundの Mesh Renderer にある
Material の項目に作った New Material をドラッグ&ドロップで設定

f:id:kazafe:20180213012055p:plain


ボールを跳ねさせる

材質を決める

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

プロジェクトウィンドウ - Unity マニュアル

[Inspector] の Bounciness に0.1~1までの好きな値を設置
f:id:kazafe:20180213010220p:plain


ballの Sphere Collider にある
Material の項目に作ったNew Phisycs Material をドラッグ&ドロップで設定
f:id:kazafe:20180213010338p:plain

これで再生するとボールは床と当たると跳ね返るようになる

オブジェクトを組み合わせる

[Hierarchy] でオブジェクトを別のオブジェクトにドラッグ&ドロップすることで、親子関係を作ることができます。
親子関係を作る場合、大本の親のオブジェクトは 空のオブジェクトを使います。
f:id:kazafe:20180213013910p:plain

空のオブジェクトを親にして、Cube を3つ作り、Transform を調整してその子供にします。
ここでは空のオブジェクトをフォルダの様な使い方をします。

f:id:kazafe:20180213014216p:plain
f:id:kazafe:20180213014224p:plain
f:id:kazafe:20180213014226p:plain

f:id:kazafe:20180213013915p:plain

親のオブジェクトを動かしたりすると、子供のオブジェクトも同じように移動します。

繰り返し使う

繰り返し使用するオブジェクトを[Hierarchy] から [Project] にドラッグ&ドロップすることでプレハブが生成される

[Project] にあるプレハブを[Hierarchy]にドラッグ&ドロップするとプレハブ化したものと同じオブジェクトが生成される

親のオブジェクトをプレハブ化すれば子供もセットでプレハブ化される
プレハブ化することで同じ設定のオブジェクトを簡単に生成で来たり
一部のオブジェクトの修正を同じプレハブから生成した他のオブジェクトに簡単に適用できたりします。

プレハブ - Unity マニュアル


--------------------ポイント--------------------
プレハブにする GameObject の親の Transform の Position、Rotation は全て0、Scaleは全て1にする
f:id:kazafe:20180213004543p:plain

作業内容の保存

シーンの保存

これまでの作業の保存
File メニューから Save Scene を選択するか、 Ctrl/Cmd + S

プロジェクトの保存

File メニューから “Save Project” を選択

ゲームを作ったら