
- 作者: BATA,まつだす
- 出版社/メーカー: 翔泳社
- 発売日: 2016/01/23
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
序文
『Unity5ゲーム開発レシピ』6日目。
最近クリエイティブな作業をしていないのでモチベーション下がり気味。
GitHub
進捗
- Part01 基本編
- Chapter04 敵キャラクターを登場させる(途中)
(学習時間:2時間)
コード実装部分
\Chapter1\Assets\Scripts\Enemy.cs
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Enemy : MonoBehaviour { GameObject target; public GameObject shot; float shotInterval = 0; float shotIntervalMax = 1.0f; public GameObject explosion; void Start() { // ターゲットを取得 target = GameObject.Find("PlayerTarget"); } void Update() { // プレイヤーとの距離が近づくと攻撃してくる if (Vector3.Distance(target.transform.position, transform.position) <= 30) { // スムーズにターゲットの方向を向く // エネミーの向くべき方向を算出する Quaternion targetRotation = Quaternion.LookRotation(target.transform.position - transform.position); // スムーズに方向を変える。第三引数はスピード transform.rotation = Quaternion.Slerp(transform.rotation, targetRotation, Time.deltaTime * 10); shotInterval += Time.deltaTime; if (shotInterval > shotIntervalMax) { Instantiate(shot, transform.position, transform.rotation); shotInterval = 0; } } } private void OnCollisionEnter(Collision collider) { // プレイヤーの弾と衝突したら消滅する if(collider.gameObject.tag == "Shot") { Destroy(gameObject); Instantiate(explosion, transform.position, transform.rotation); } } }
- その他実装部分
実行結果
www.youtube.com カメラの操作が覚えられない人の図
感想
やったこと。
- 敵が一定距離まで近づくと攻撃してくるように実装
- 敵に弾が当たるように実装
Unityの操作ってオブジェクト指向プログラミングをGUIでやっているような感覚だと思った。
それぞれのオブジェクトやスクリプトが明確に分離されていて、それらを組み合わせてゲームを作っていく感覚が心地よい。
なるほどC#とは相性が良さそうだ。
カロリーメイトください。
BGM
初恋とはなんぞや / パブリック娘。
www.youtube.com ネタがなくなった