スライド使ってお話し
10分くらい
触ってみよう
プロジェクトの作成
- Unityを起動する。(セキュリティの警告はアクセス許可)
- 「NEW」をクリック
- 上がプロジェクト名、下が保存するフォルダ。適当に入力してエンター
- プロジェクトできました。
- 右上の「Layout」をクリックして、「2 by 3」に変更。
エディタの説明
-
Sceneビュー
オブジェクトがどのように配置されているかをGUIで確認/調整できるビュー -
Hierarchyビュー
オブジェクトをツリーで確認できるビュー -
Inspectorビュー
オブジェクトの詳細を確認/調整できるビュー -
Projectビュー
プロジェクトにふくまれているファイルの一覧を確認できるビュー -
Gameビュー
ゲームが起動した時に見ることができるビュー -
Consoleビュー
UnityEditorの実行ログとか、プログラムのコンパイル結果とかが表示されるコンソール
作成
-
オブジェクトの作り方
GameObject > 3D Object > Cube
ゲームオブジェクトとトランスフォーム -
Sceneビューで確認
マウスロールとかして拡大とかできます。
ヒエラルキーの項目をクリックして矢印表示 -
各ツールの紹介
alt+各クリックでいろいろできる
- 手ツール
左クリックで視点操作 - 矢印ツール
オブジェクトの座標移動 x y z - 回転ツール
オブジェクトの回転操作 x y z - スケールツール
オブジェクトの拡縮操作 x y z - 万能ツール
オブジェクトの全部操作 x y z
- Sceneビューの2D表示
Gameビュー3:2 - キューブを一旦削除して、再作成
Transformを初期化。 - カメラの設定変更
- ClearFlag
SolidColor - Projection
Orthographic - Size
XYの調整です
15くらいにセット
- Cube で壁作る
- 天井
Wall roof Sceneビューで拡大して位置を移動
Inspectorで微調整 - 左壁
Cube作成して
Wall left いじって配置
右壁もついでにコピーして作成 - 床作成
天井コピーして移動してくる
名前変更
・Wall Roof
・Wal Left
・Wall Right
・Wall Floor
-
親オブジェクトを作成
Unityはオブジェクトをツリー構造にできるので、Wallオブジェクトを作成してWall~を格納する
CreateEmpty で作成する -
Wallの子にする
Shiftで4つ選択してD&D -
Root作ってWallを突っ込む
-
ユーザーが操作するバーを作る
Playerオブジェクト作ってBar(Cube)を作る
PlayerオブジェクトはEmpty BarはCube(位置調整して大きさ調整) -
Ballオブジェクト作成
Sphereで作成 Ballに名前を変更 -
Rigidbodyをつける
重力体感 -
PhysicsMaterial作成
Bar を作成 -
Barに設定
BarのBoxColliderのMaterialにPlayerBarを設定 -
Bounceを1に設定する
-
BounceCombineをMaxmumに
-
天井に当ててみる
-
roof にBarを設定
-
再生中にセットすると停止した時に元に戻るので、注意
-
再度セット
-
他の壁にもセット
-
Ballの重力消す
-
Ballを動かすスクリプトを書く
AddComponent > New Script
C Sharpであることを確認して
-> Create and Add -
Ball.csを開く
-
AddForce()メソッドを作成する。(public)ついでにpower定義※1
StartとUpdate -
Start()でAddForceを呼び出す。ボールのposition変更しておく
-
BarのFrictionを0にする
-
Playerを動かす
スクリプト作ります。
Input制御 右と左 ※2 -
スピード調整します
speed調整用の変数用意 ※3 -
移動制限つけます
移動の限界座標を確認
移動制限をつけて、座標更新 ※4 -
Blockの親とBlock子を作成する
-
PhysicsMaterialをつける
-
Blockのスクリプト作成
OnCllisionEnter 衝突した時
SetActive() アクティブ切り替え
Destroy() ターミネイト -
Block量産
-
ボールの反射向きを左下に変更してみる。※6
ここまでで基本動作
ゲームにしていく
ゲームオーバー
-
Playerに死亡ステータス ※7
-
GameManagerの作成(Empty)
-
スクリプトをつける(GameManager)
ゲームオーバー処理とstaticインスタンス ※8 -
GameManagerにText(uGUI)を設定
-
死亡タイミングの作成
どんなタイミング?
Floorスクリプトを作成※9 -
Ballを止める※10
-
ゲームオーバー時に呼び出す※11
-
GameManagerにBallを設定
-
GameManagerにPlayerを設定
-
スコア管理※12
加算処理を行うのは、ゲーム管理クラス -
Block壊れた時にスコア送信※13
-
成績表示
ugui
Textオブジェクトを用意 -
GameManagerにTextを用意し、初期化※14
-
GameManagerにTextを設定して再生
-
おしまい
最高スコア
- GameManagerの処理変更※15
- やってみよう
再スタート
- GameManagerにRestartメソッドを用意※16
- BallにWakeUpを用意※17
- PlayerにWakeUpを用意※18
- GameManagerで制御※19