ワープの作り方 - acro-takahashi/Unity_Study_Kit GitHub Wiki
ワープを実装しよう
- ワープオブジェクトとなる任意のオブジェクトを作成する
- オブジェクト名を「WarpObject」に変更する
- キューブなどの実際にワープするオブジェクトを作成する ※今回はキューブで作成
- 手順3のオブジェクトのインスペクターにリジッドボディを付ける
- 新しいスクリプトを作成する
↓名称は「PlayerWarp」で作成
↓スクリプト「PlayerWarp」をダブルクリックで開いて下記のコードを入力(保存する) 図の下にコピペ用を用意してあります。
public class PlayerWarp : MonoBehaviour
{
[Header("ワープする座標(Rキー)")]
public float X = 0f;
public float Y = 0f;
public float Z = 0f;
// Start is called before the first frame update
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.R))
{
transform.position = new Vector3(X, Y, Z);
}
}
void OnCollisionEnter(Collision obj)
{
if (obj.transform.name == "WarpObject")
// 「""」の中はどのオブジェクトと衝突するか
{
transform.position = new Vector3(X, Y, Z);
}
}
}
- 手順3で作成したオブジェクトにPlayerWarpスクリプトを追加する
以上でRキーや手順2のオブジェクトと手順3のオブジェクトが衝突した際にワープします。