コライダーのisTrigger(トリガーにする)を、スクリプトを使って切り替えてみましょう。
isTriggerのチェックボックスを、左クリックでオン、右クリックでオフにします。
関連記事:
OnCollisionEnterとOnTriggerEnterの違い
OnCollisionやOnTriggerで複数オブジェクトを指定
コライダーの無効化と有効化
コライダーのサイズを変えるスクリプト
触れた相手のコライダーを削除(無効にする)
他のコライダーとの距離を取得
複数のBoxColliderを取得する
「トリガーにする」のチェックボックスを制御
Cubeを作成と、空のオブジェクト(GameObject)を作成します。
TriggerScript.csを作成し、GameObjectに追加します。
TriggerScript.csを記述します。
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 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class TriggerScript : MonoBehaviour { public GameObject cube; public BoxCollider cube_boxCol; void Start() { cube = GameObject.Find("Cube"); cube_boxCol = cube.GetComponent<BoxCollider>(); } void Update() { if (Input.GetMouseButtonDown(0)) { cube_boxCol.isTrigger = true; } if (Input.GetMouseButtonDown(1)) { cube_boxCol.isTrigger = false; } } } |
ゲームプレイして、左右のマウスをクリックしてみましょう。
CubeのisTrigger(トリガーにする)が取得されて、クリックで切り替わります。
関連記事:
OnCollisionEnterとOnTriggerEnterの違い
OnCollisionやOnTriggerで複数オブジェクトを指定
コライダーの無効化と有効化
コライダーのサイズを変えるスクリプト
触れた相手のコライダーを削除(無効にする)
他のコライダーとの距離を取得
複数のBoxColliderを取得する