Unity
もくじ https://tera1707.com/entry/2022/02/06/144447 前提 UnityHubのバージョン:3.5.1(←だいぶふるいっぽい。最新は3.9.1ですよ、という表示が出てた。) 入れようとしたUnity:6000.0.23f1 ※Unity Hubがすでにinstallされた状態から作業する。 Unity6…
もくじ https://tera1707.com/entry/2022/02/06/144447#Unity やりたいこと 前回、ボタンを押したときの処理の書き方を知ったが、他にもやり方がある様子。それもメモっておきたい。 やりかた AddListener()を使う。 ボタンにスクリプトを割り当てる ヒエラ…
もくじ https://tera1707.com/entry/2022/02/06/144447#Unity やりたいこと Unityの画面上にボタンを表示して、それを押したときの処理を書きたい。 やりかた 今回は、Unity Learnの「レッスン 5.3 - ゲームオーバー」で習ったやり方でやってみる。 押したと…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと Unityで時間を測りたい。 前提 Unity 2021.3.31f1 コルーチンを使った待ち処理の作り方 まず、戻り値がIEnumeratorのメソッドを作る。 IEnumerator MyWait() { } その中に、yield return …
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと ランダムな値を取りたい。 やりかた 下記のようにする。 // 0~10の範囲のランダムな値を取得する(整数) Random.Range(0,10); // 0.0~10.0の範囲のランダムな値を取得する(float) Ra…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと あるオブジェクトから、別のオブジェクトに向けて、力を加えたい。 (あるオブジェクトから、別のオブジェクトに向かうベクトルを取得したい。それをAddForceに与えてやったら、その方向…
やりたいこと 最近、アーマードコア6というゲームをしたのだがそのゲームでは、PS5のコントローラーで、 左スティックの上下左右で、キャラクターを前後左右に移動し、 右スティックの上下左右で、視点を上下左右に回転していた。 それがカッコいいのでマネ…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと ゲームコントローラーの入力を受けて、キャラクターを動かすようなことをしたい。 前提 Unity 2021.3.31f1 Input System 1.7.0 やり方 「Input System」を使う。 手順(準備) メニュー >…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 衝突した相手のオブジェクトをとる、であれば、OnCollisionEnter()の引数で取ることができるが、衝突もしてない、離れたオブジェクトについての情報を取りたい。 やりかた GameObject.Fin…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと オブジェクトのPrefabをインスタンス化したい やったこと C#スクリプトに、GameObjectの変数を作る。 public class SpawnManagerX : MonoBehaviour { public GameObject[] objectPrefabs;…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと Update()コマンドの中で判定する。 押しっぱなしを判定したいときは、 Input.GetKey(KeyCode.Space){} のように書く。 一度押された時を取りたいときは、 Input.GetKeyDown(KeyCode.Space…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと オブジェクトをただ移動させたい。 やり方 スクリプトのvoid Update()に、下記のように書く。 transform.Translate(Vector3.left * speed * Time.deltaTime); Time.deltaTimeは、たぶん「…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと パーティクル、いわゆるエフェクト?的な奴を出せるらしい。 出してみたい。 やりかた ParticleSystem変数をpublicで定義する public class PlayerController : MonoBehaviour { private …
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 「Unity Learn」という、Unity公式の勉強サイトで使い方を勉強しようと思った。 例えばこの辺り。 https://learn.unity.com/project/unit-1-driving-simulation-jp?contentId=5f7229b2edb…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと C#スクリプトから音を出したい。 ドカーン、とか。 やりかた スクリプトに、音をあらわすAudioClip moneySound;をpublicで定義する。 public class PlayerController : MonoBehaviour { p…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 重力を軽くしたり重くしたりしたい。 ※重力は、シーン全体に影響するっぽい。 やりかた Physics.gravityに、倍率をかけてやる。 Physics.gravityの初期値は、Vector3で(0.00, -9.81, 0.00…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと C#のスクリプトから、オブジェクトの大きさを取得したい。 transformのscaleをとっても、大きさの値じゃなさそうな値しか取れなかった。 やりかた 今回は、この町の背景オブジェクトの大…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと オブジェクトにつけられているComponentを取る。 付けられてるコンポーネントとは、下図に出てる、「RigidBody」「AudioSource」などのヤツら。 これらが取れると、C#スクリプトから、 Ri…
やりたいこと Prefabをつくりたい。 Prefab:好きなアセットの、好きなパラメータをセットされた「お気に入りオブジェクト」的な奴。 Prefabを作っておけば、そのお気に入りオブジェクトをC#スクリプトから複製できたりする。 やりかた Assetsフォルダの下に…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 3Dアクションゲーム的なものを作ってみたいので、3Dのフィールドをつくりたい。 やりかた Terrainを使って地形をつくる。 Terrain用アセットをインポートする WIndow > パッケージマネー…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 3Dのアクションゲーム的なものをつくるときに、家とか木とかのオブジェクトを自分で作れる気がしないので、無料のアセットを取ってきて使いたい。 アセットを自分のUnityプロジェクトで使…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと モノ同士が衝突したときに、片方をカキーンと跳ね返したい。 やりかた RigidBodyのAddForce()メソッドを使って、当たってきたモノに力を加えて跳ね返す。 https://docs.unity3d.com/ja/20…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと モノとモノが当たったことを判定したい。 本当は当たった判定して、バットとボールのようにカキーンと跳ね返すようなことがしたいが、とりあえず判定だけしたい。 やりかた BoxColiderと…
もくじ https://tera1707.com/entry/2022/02/06/144447 やりたいこと 画面に追加したSphereを、重力に従ってポトンと落としたい。 やりかた RigidBodyのコンポーネントを付ける。 付けたいモノを選択して「Add Component」を押す。 「Rigid Body」を選択 こ…