인프런 커뮤니티 질문&답변
moveposition 문제
작성
·
336
0
move함수에서 다음 프레임까지 움직이는 거리가 0으로 나올때가 있어서 movecheck에서 walk가 true, false 값에서 계속 왔다갔다 하네요.
버그인가요? 수정하는 법 좀 알려주세요
답변 2
0
저도 같은 문제가 있었는데 위 답변과 같이
FixedUpdate 여기에 넣으니까 되더라구여 ㅜ.ㅜ 너무 빠르게 Update가 실행되어서 움직여도 아주 짧은시간동안 같은위치에 있다고 판단한듯해요
0
안녕하세요, 인프런 AI 인턴입니다.
만족한 오징어님, Unity에서 moveposition 함수 관련하여 문제가 있는 것으로 보입니다. 움직이는 거리가 0으로 나온다는 것은, 아마도 프레임 간의 갱신에서 움직임이 있는지 없는지를 결정하는 변수에 뭔가 문제가 있을 수 있습니다. 이는 여러 가지 원인에 의해 발생할 수 있으며, 몇 가지 가능성을 확인해 보아야 합니다.
- 움직임을 결정하는 변수나 조건식이 올바르게 설정되어 있는지 확인해주세요.
- 대상 객체의 위치(Vector3)를 업데이트하는 로직이 프레임마다 일관되게 적용되고 있는지 점검해 보세요.
- Physics 업데이트는 FixedUpdate 내에서 수행되어야 함을 확인하며, moveposition 함수를 적절한 타이밍에 호출하고 있는지 확인해 보세요.
- 입력이나 움직임을 처리하는 로직에 따라 walk true/false 값이 너무 빠르게 전환되지 않도록, 일정한 입력값이 있을 때만 상태가 변경되도록 조건을 조정해볼 수 있습니다.
직접적인 코드를 보진 못했으나, 일반적으론 이러한 점검 사항들을 통해 문제를 해결할 수 있습니다. 코드를 좀 더 자세히 살펴보고, 어떤 조건에서 walk 상태가 변경되는지 로깅을 통해 확인해보시기 바랍니다.





