2013-04-09 9 views
3

저는 Unity에 익숙하지 않습니다. 자습서를 몇 권하고 있지만, 저를 미치게했습니다. 상자에 충돌자가있는 회전 큐브가 있습니다. 모든 이벤트는 OnMouseDown()을 제외하고 작동합니다. 나는 무엇이 문제인지 모르겠다 ... 여기에 코드 스 니펫이있다.OnMouseDown() 이벤트 관련 문제 Unity

void onMouseDown() {   
    Debug.Log ("On Mouse Down Event!!!!!!!!!"); 
} 

void OnMouseUp() { 
    Debug.Log("On Mouse Up Event"); 
} 

void OnMouseOver() { 
    Debug.Log("On Mouse Over Event"); 
} 

void OnMouseEnter() { 
    Debug.Log("On Mouse Enter Event"); 
} 

void OnMouseDrag() { 
    Debug.Log("On Mouse Drag Event"); 
} 

콘솔에서 "On Mouse Down Event !!!!!!!!!"메시지가 표시됩니다. 큐브에서 엄청나게 많은 클릭 수는 중요하지 않습니다.

+8

당신은'OnMouseDown'에서'o'를 대문자로 쓰는 것을 잊었습니다. 위키의 강조 표시조차도 그것을 포기합니다 : P – Serdalis

+0

더 많은 관련 정보 : http://answers.unity3d.com/questions/716227/onmouse-event-handlers- might-impact-performance-mo.html – cregox

답변

15
void OnMouseDown() {   
    Debug.Log ("On Mouse Down Event!!!!!!!!!"); 
} 

OnMouseDown 메서드는 작성자가 소문자가 아닌 대문자 O이어야합니다. 시도해 보면 효과가있다.

+1

메서드 이름이 유효하기 때문에 컴파일러가 불평하지 않습니다. –

+0

또한 (안드로이드/아이폰 용으로 제작할 계획이라면)이 마우스 방식은 컴퓨터 (리눅스, 윈도우, iOS, 플래시, 웹 등)에서만 작동합니다. 휴대폰 게임을 만들려면 다른 메서드 (Input.MouseDown 또는 Touch.Touch를 사용하여 터치 한 객체를 가져 오는 것)를 조사해야합니다. –

+0

@StevenMills 실제로 @StevenMills는 필요하지 않습니다.이 메서드는 자동으로 사용됩니다 해당하는 경우 터치 장치에서도 사용할 수 있습니다. 필자는 모바일 용 데스크톱 게임을 최근 테스트 해 보았습니다. 모든 인터페이스와 상호 작용은 작동했지만 OnMouseOver와 같은 이벤트는 지원하지 않았습니다. –

관련 문제