2016-11-15 6 views
0

유니티 지형의 특정 텍스처를 플레이어가 걷지 않도록하는 방법을 알고 싶습니다. 플레이어가 어느 질감에 서 있는지를 감지하는 스크립트를 만들었습니다. 운동을 위해 강체 속도를 사용하므로 충돌 자에게 문제가 없습니다. 그런 다음C# Unity - 특정 지형 텍스쳐에 플레이어가 위치하지 못하도록 함

Vector3 lastPos; 

선수 시작에 현재의 위치로 설정 :

첫째, 글로벌 변수 lastPos을 만듭니다

답변

0

:) 미리 감사드립니다 나는 같은 것을 할 것

void Start() { 
    lastPos = player.gameObject.transform.position; 
} 

그런 다음 업데이트에서 lastPos 변수를 플레이어의 현재 위치로 설정합니다. 다음으로 if 문을 사용하여 플레이어가 잘못된 텍스처에 있는지 확인합니다. 플레이어가 잘못된 질감에 있으면, 그것은 lastPos 다시 위치의 설정 : 때 잘못된 질감에

void Update() { 
    if (playerOnInvalidTexture) { 
    player.gameObject.transform.position = lastPos; 
    } 
    lastPos = player.gameObject.transform.position; 
} 

는 기본적으로이 올바른 위치에 플레이어를 배치합니다.

+0

작동하지 않습니다 ... 조금 이상합니다. 잠깐, 내가 먼저 확인한 다음 lastPost를 설정해서는 안됩니까? –

+0

그 일을 한 네, 확인 후 lastPos를 설정해야만했습니다. 감사합니다 : D –

+0

아, 네가 맞아, 이것을 반영하기 위해 답을 업데이트한다 *. 환영합니다, 행운을 빌어 요 !! – KenSchnetz

관련 문제