유니티에서 실행하면, 정상적으로 작동되지만
exe로 빌드하여 실행하면, 일부기능이 작동하지 않습니다.
콘솔에 빨간색 오류는 생기지 않습니다.
exe파일과 Data파일을 삭제하고 다시 빌드해도 똑같습니다.
OnTrigger가 실행이 잘 되지 않습니다.
string Data = "";
void OnTriggerEnter(Collider other)
{
if (other.gameObject.tag == "Npc")
{
Data = "NPC 인식!";
m_vecNpc.Add(other.gameObject.GetComponent<Npc>());
}
else if (other.gameObject.tag == "DropItem")
{
m_vecDropItem.Add(other.gameObject.GetComponent<DropItem>());
}
else if (other.gameObject.tag == "Monster")
{
Data = "몬스터 인식!";
m_vecEnemy.Add(other.gameObject.GetComponent<Enemy>());
}
}
void OnGUI()
{
GUI.Box(new Rect(10, 10, 300, 200), Data);
}
이 코드로 NPC는 인식이 가능하지만 Monster는 인식이 불가능 합니다.
※유니티에서 실행하면 정상적으로 작동
- 유니티에서 실행했을경우 -
- exe로 실행했을 경우 -
이런 경우는 주로 nullreferenceexception에의 해서 어떠한 특수 오브젝트나 스크립트가 비어있을때 발생할수도 있습니다.
정확하게 진단은 어렵지만 현재 한것과 같이 디버깅수단을 이용해 문제점을 디버깅찾아보거나 실행파일시 파일을 생성하고 해당파일에 로그를 기록해서 확인하도록 하는게 좋은 수단이 되겠습니다.