本文について
なぜUnity Tutorialやってみようと思ったか
- Unityを勉強したくて、いろいろ見た結果、Tutorialをやってみるのが楽しそうだったから
- 他にUnityやってみようと思った人の参考になればいいな。
実行環境
- Unity Personal 2018.1.0f2 (64-bit)
- Windows10
やってみたTutorial
1. Roll-a-ball tutorial(済)
Roll-a-ball tutorial
- 特につまづくところはなかった。動画通りにやっていけば完成する。
- 操作方法すら怪しい状態で2~3hでゲームが完成して感動。rigidbodyすごい。
2. Survival Shooter tutorial(途中)
Survival Shooter tutorial
「2.Player Character 」
- 「2.Player Character 」の動画を進めていくと、「Unity 2018.1.0f2 (64-bit)」では、idle-Move間のTransitionの「Has Exit Time」のチェックを外さないとPlayerがMove時に踊ってくれない。ちょっとはまった。
「4.Creating Enemy #1 」
- 「4.Creating Enemy #1 」にて、Tutorial通りに実行しても、追尾されず。。Unityを再起動したら追尾するようになった。原因は不明。Unityあるあるなのか?
- Navigation-Bakeの設定項目が「Unity 2018.1.0f2 (64-bit)」とTutorialのバージョンで違うけど、項目自体はあるので、落ち着いて設定すれば大丈夫、なはず。Advanced設定の**Inaccuracyは明らかにパラメータがないのだけど、とりあえず無視して大丈夫だった(あとで困るかもしれないので覚えておく)。
- nav Agentの自動追尾すごい。感動。Zombunnyかわいい。
「6.Player Health」
- EnemyAttack.csのAwake()メソッドで[player.GetComponent ();]でなぜかPlayerHealthをゲットできなくてはまる(泣)。現象として、EnemyAttack.UpdateでplayerHealth.currentHealthを呼び出したところでNulReferenceExceptionとなる。
GUI上でPlayerHealthコンポーネントをRemoveしたりAddしたりしたがダメで、物理的にAssetフォルダのファイルを消したり足したりしたら治った。 Playerオブジェクトの中のplayerに「Player」タグをうっかりつけてしまっていたのが間違いだった。タグのつけ方が間違っていただけだった・・
「7.Harming Enemies」
- 説明ではPositionsの下に設定項目「Parameters」があるが、「Unity 2018.1.0f2 (64-bit)」ではない。Widthを0.05にすると、説明と同じになる。軌道のStartとEndの幅を変えたい場合は、グラフがあるので、丸をドラッグして弾の軌道サイズを変更できる。丸は追加できるのでいろいろな軌道幅にできそう(ショットガンとかだと使える?)。
「10.Game Over」
- Animationウィンドウを開く。説明だとcurveとかになってていろいろ文言違うが、add propertyを開くであっている。
- Gameoverの画面がなぜかループしっぱなしになるが、Asset/Animation/GameOverClipの「Loop Time」を外すとうまくいった。
- 完成!