黒いバーがオブジェクトに接触するたびに、オブジェクトに関する情報が表示されます。2つのオブジェクトが衝突した場合に1つのイベントしか生成しません。
黒いバーがAオブジェクトに接触すると、非表示のUI_A
が表示されます。 競合が終了すると、UI_A
が消えます。
問題は、AとBの両方のオブジェクトが同時にUI_A
とUI_B
に接触すると同時に黒いバーが表示されることです。
ブラックスティックが同時に2つのオブジェクトに接触すると、UI
オブジェクトが1つしか表示されません。
どうすればよいですか? 私を助けてください!
===================================
using UnityEngine;
using System.Collections;
public class TestPopUp : MonoBehaviour {
public GameObject UI_A;
public GameObject UI_B;
public GameObject UI_C;
private bool _IsTriggerEnter = false;
void OnTriggerEnter(Collider col)
{
if (col.tag == "A" && _IsTriggerEnter == false)
{
UI_A.SetActive(true);
_IsTriggerEnter = true;
}
if (col.tag == "B" && _IsTriggerEnter == false)
{
UI_B.SetActive(true);
_IsTriggerEnter = true;
}
if (col.tag == "C" && _IsTriggerEnter == false)
{
UI_C.SetActive(true);
_IsTriggerEnter = true;
}
}
void OnTriggerExit(Collider col)
{
if(col.tag == "A")
{
UI_A.SetActive(false);
_IsTriggerEnter = false;
}
if (col.tag == "B")
{
UI_B.SetActive(false);
_IsTriggerEnter = false;
}
if (col.tag == "C")
{
UI_C.SetActive(false);
_IsTriggerEnter = false;
}
}
}
[一度だけ衝突/衝突を検出]の可能性のある重複は(http://stackoverflow.com/questions/41290547/detect-collision-colliding-only-once) –