
~巻き起こせ!教育革命~
投稿日:
執筆者:getabako
関連記事
今回やること VR空間の宝島を冒険して宝を探すゲームをUnityで作ります バージョンは2018でやっていますが恐らく他のバージョンでも問題ないと思います VR用のカメラを入れる UnityRemot …
blenderで車のモデリングをしてから、ペジェでコース作って、Unityでマリオカートみたいなレーシングゲームにするてんこもりなチュートリアル
こんな感じのマリオカートみたいなレーシングゲームを作ります https://getabakoclub.com/wp-content/uploads/2018/11/douga2.mp4 車体を作る様子を …
Unity2018のArgumentException: Value does not fall within the expected rangeへの対処法
さて、Unityで2018にアップデートすると、 ArgumentException: Value does not fall within the expected rangeというエラーがずっと出 …
Unityの便利機能を使いこなそう #4 NavmeshAgentで敵のAIをつくろう
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.AI;//NavMeshagentを使うために記述する public class Enemy : MonoBehaviour { public Vector3[] wayPoints = new Vector3[3];//徘徊するポイントの座標を代入するVector3型の変数を配列で作る public int currentRoot;//現在目指すポイントを代入する変数 public int Mode;//敵の行動パターンを分けるための変数 public Transform player;//プレイヤーの位置を取得するためのTransform型の変数 public Transform enemypos;//敵の位置を取得するためのTransform型の変数 private NavMeshAgent agent;//NavMeshAgentの情報を取得するためのNavmeshagent型の変数 void Start () { agent = GetComponent<NavMeshAgent> ();//NavMeshAgentの情報をagentに代入 } void Update () { Vector3 pos = wayPoints[currentRoot];//Vector3型のposに現在の目的地の座標を代入 float distance = Vector3.Distance(enemypos.position, player.transform.position);//敵とプレイヤーの距離を求める if (distance > 5) {//もしプレイヤーと敵の距離が5以上なら Mode = 0;//Modeを0にする } if (distance < 5) {//もしプレイヤーと敵の距離が5以下なら Mode = 1;//Modeを1にする } switch (Mode) {//Modeの切り替えは case 0://case0の場合 if (Vector3.Distance (transform.position, pos) < 1f) {//もし敵の位置と現在の目的地との距離が1以下なら currentRoot += 1;//currentRootを+1する if (currentRoot > wayPoints.Length -1) {//もしcurrentRootがwayPointsの要素数-1より大きいなら currentRoot = 0;//currentRootを0にする } } GetComponent<NavMeshAgent> ().SetDestination (pos);//NavMeshAgentの情報を取得し目的地をposにする break;//switch文の各パターンの最後につける case 1://case1の場合 agent.destination = player.transform.position;//プレイヤーに向かって進む break;//switch文の各パターンの最後につける } } } |
関連
【初心者向け】Unityで3Dシューティングを作るチュートリアル
今回作るゲームは画像のような3Dシューティングゲームです ス○ーフォッ○スみたいですねw まずはこちらのUnityパッケージをダウンロードして下さい パッケージを入れる方法はこちら プレイヤーの移動 …
2019/02/20
blenderで下絵を入れて人体をモデリングするチュートリアル
2019/01/09
Unityの便利機能を使いこなそう #4 NavmeshAgentで敵のAIをつくろう