実現したいこと
・実現したいこと
UnityでRaycastを使ってドアの開閉を行いたい。
発生している問題・分からないこと
Raycastをヒットさせて、ドアのアニメーション再生とヒットしている間ずっとテキストを表示させるプログラムです。
最初にraycastがヒットした時は正常に動いていますが
途中からraycastがヒットしたり、しなかったりと少しづつ
反応が悪くなります。
※テキストが点滅して、最終的には表示されなくなります。
該当のソースコード
public class DoorManager : MonoBehaviour { public float interactionDistance; public GameObject intText; public LayerMask Layers; Ray ray; void Update() { RaycastHit hit; ray = new Ray(transform.position, transform.forward); if (Physics.Raycast(ray, out hit, interactionDistance, Layers)) { intText.SetActive(true); if (hit.collider.gameObject.GetComponent<Door>()) { if (Input.GetKeyDown(KeyCode.E)) { hit.collider.gameObject.GetComponent<Door>().openClose(); } } else { intText.SetActive(false); } } else { intText.SetActive(false); } }
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
raycastがヒットしたドアはprefab化したオブジェクトですが、
普通のオブジェクトでも同じ結果になりました。
補足
バージョン:2021.3.10
説明不足でしたらすみません。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/02/17 14:58