13:50
583
작성한 질문수 14
안녕하세요!
13:50부터 등장하는 플레이어가 이동할 때 몬스터를 밀 수 있는 현상을 고치시는 방법에 대한 질문입니다.
이 밀리는 현상이 NavMeshAgent를 사용해서 이동시키는 것과 어떤 관계가 있는 것인지 잘 와닿지가 않아서요! ㅠㅠ 왜 nma.Move 함수 사용에서 transform.position 을 업뎃해주는 방식으로 바꾸면 위 현상이 고쳐지는 것인가요?
답변 3
4
https://stackoverflow.com/questions/23451983/how-to-avoid-two-navmeshagent-push-away-each-other-in-unity
특별히 '이해'를 하는 영역이 아니라,
그냥 유니티가 그렇게 되어 있습니다.
NavMeshAgent를 붙여서 NavMesh를 이용한 이동 방식은
(Collision을 이용해) 기본적으로 Agent끼리 서로 피해가도록 되어 있는데,
하나를 이동시키면 너무 인접하게 되어 의도하지 않게 상대를 밀치기도 합니다.
이를 가장 쉽게 해결할 수 있는 방법은
박쥐처럼 앞으로 레이저를 쏴서 정말 이동 가능한지를 한 번 더 확인하는 것인데
NavMeshAgent을 사용하지 않고
일반 이동을 할 경우에는 위 현상이 일어나지 않습니다.
3
Collider가 붙었다고 무조건 꼭 충돌이 되는 것은 아니고,
어떤 함수(기능)을 사용했느냐가 중요합니다.
유니티 물리 시스템을 사용했다거나, NavMeshAgent 등을 사용했다거나
하는 조건에 따르는데, 만약 IsKinematic 설정으로 물리 시스템도 적용받지 않는 상태라면
Collider는 그냥 참고용 정보일 뿐입니다.
추가로 MMO에서는 서버단에서 충돌 체크하기가 워낙 힘들기 때문에
유닛끼리 충돌은 하지 않는 경우가 거의 99%입니다.
1
답변 감사드립니다.
근데 답변 보고 생긴 논외의 질문이긴한데..
이제 NavMeshAgent로 이동하지 않으니까 플레이어와 몬스터가 서로 밀지 않고 심지어 관통해서 지나갈 수도 있게 되었더라구요.
근데 플레이어도 몬스터도 둘 다 Is Trigger가 체크되어 있지 않은 Collider가 붙어 있는데 생각해보니 왜 관통이 될까 싶기도 하네요. Collider가 붙어있으면 관통이 되지 않는걸로 알고 있는데 혼란스럽습니다.
UI 기능 관련 질문이 있습니다!
0
31
2
픽셀 좌표 스크린 좌표
0
31
0
전체적으로 코드 읽는게 굉장히 오래 걸리네요...
0
71
2
카메라 #2 수업 캐릭터 쓰러짐 해결
0
82
1
플레이어 움직임이 끝날때, 기울어짐 현상
0
81
1
Input 적용과 관련하여 질문 있습니다.
0
73
1
디버그 불가.. Unity에 연결 불가
0
79
1
달리기 애니메이션 에러
0
86
2
오랜만에 게임을 만들다가 사운드 관련해서 뭔가 궁금한게 있어서 봤습니다
0
64
1
GetKey 오류
0
109
2
에셋을 어디에 올려두신지 알 수 있나요?
0
105
1
재귀호출? 오류나는데 왜 이래요 ?
0
167
6
Animation blending 파라미터 계산
0
66
1
newPos와 to지점이 겹쳐져야 하는거 아닌가요?
0
95
3
오브젝트 복제하니까 자꾸 이런게 뜨면서 꺼집니다
0
86
2
질문있습니다
0
142
2
아 이거 소스코드 같은거 없나요?
0
140
3
질문 드립니다. string.IsNullOrEmpty(name)
0
85
2
@Managers 가 씬에 배치되어 있어도 문제가 되지 않나요?
0
134
2
유니티6 NavMesh 안되는분들
1
174
1
Unity6 Unity-Chan Material 마젠타 문제 해결법
7
525
1
GetComponent<Poolable> 질문드립니다.
0
100
2
UI 불러오지 못함
0
116
2
UI 자동화 #1 - Util.cs의 FindChild함수에서 component.name에 컴포넌트 이름이 뜹니다.
0
155
2





