뭔 말인지 모르겠는데... Path가 있고, 이걸 일정 속도로 진행 시키고 싶다는 건가?
각 포인트를 잇는 선을 Line이라고 쳐. Line은 길이랑 방향을 미리 계산해두고 이웃 라인 정보도 갖고 있도록 해.
이 Line들의 집합을 Path라고 쳐. Path는 Line들의 총 길이를 갖고 있도록 하고, Initialize랑 Process 인터페이스를 뚫어놔.
초기화는 말그대로 Path 계산을 시작한다는 의미고, Process는 이동량(속도*시간)을 넣어주면 진행된 결과를 저장해놔.
그리고 진행된 결과(Path.CurrentPos)가 니가 원하는 결과가 되겠지.
익명(211.41)2020-04-16 05:42
이건 길따라가는거고 AI마냥 길을 찾아서 움직이고싶으면 길 최적화 알고리즘이 추가되어야하고, 이 와중에 동적 유닛들하고 충돌을 피하고 싶다 하면 RVO 알고리즘 찾아봐.
익명(211.41)2020-04-16 05:46
답글
ㄳㄳ 근데 RVO찾아보니까 정보가 너무없더라;
oo(199.58)2020-04-17 06:58
답글
그리고 길찾기 알고리즘은 이미 구현해놓은 상태고, 그 길찾기 알고리즘으로 나온 길을 따라 오브젝트들을 움직여주는 구현방법을 알고싶다는말임 근데 move position이나 transform.position을 쓰면안되고 무조건 velocity 값만 변경해서 움직여야되는상황
oo(199.58)2020-04-17 06:59
구글검색: unity A* - dc App
익명(106.101)2020-04-16 10:14
답글
길찾기는 이미 구현햇다.. 길따라 움직이기만하면댐
oo(199.58)2020-04-17 06:57
언리얼이 이런식으로 되있음 - dc App
익명(223.39)2020-04-16 10:22
velocity를 써서 가고싶다는거보니 충돌 검사는 하고싶은데 속도손실없게 등속으로 하고싶은거 같은데 그건 rigidbody.movePosition()하면 된다. target포지션-본인포지션 해서 방향 구하고 normalize한다음 속도 곱해서 보내셈 무브포지션이 그냥 포지션 바꾸는것과 동일한데 물리연산도 해주는거임
qwer(112.187)2020-04-16 12:11
답글
ㄳ, 근데 그러면 대부분 게임들의 주인공 제외 오브젝트 (npc, 몹) 물리는 전부 velocity 대신 position 변경으로 이루어지나?
뭔 말인지 모르겠는데... Path가 있고, 이걸 일정 속도로 진행 시키고 싶다는 건가? 각 포인트를 잇는 선을 Line이라고 쳐. Line은 길이랑 방향을 미리 계산해두고 이웃 라인 정보도 갖고 있도록 해. 이 Line들의 집합을 Path라고 쳐. Path는 Line들의 총 길이를 갖고 있도록 하고, Initialize랑 Process 인터페이스를 뚫어놔. 초기화는 말그대로 Path 계산을 시작한다는 의미고, Process는 이동량(속도*시간)을 넣어주면 진행된 결과를 저장해놔. 그리고 진행된 결과(Path.CurrentPos)가 니가 원하는 결과가 되겠지.
이건 길따라가는거고 AI마냥 길을 찾아서 움직이고싶으면 길 최적화 알고리즘이 추가되어야하고, 이 와중에 동적 유닛들하고 충돌을 피하고 싶다 하면 RVO 알고리즘 찾아봐.
ㄳㄳ 근데 RVO찾아보니까 정보가 너무없더라;
그리고 길찾기 알고리즘은 이미 구현해놓은 상태고, 그 길찾기 알고리즘으로 나온 길을 따라 오브젝트들을 움직여주는 구현방법을 알고싶다는말임 근데 move position이나 transform.position을 쓰면안되고 무조건 velocity 값만 변경해서 움직여야되는상황
구글검색: unity A* - dc App
길찾기는 이미 구현햇다.. 길따라 움직이기만하면댐
언리얼이 이런식으로 되있음 - dc App
velocity를 써서 가고싶다는거보니 충돌 검사는 하고싶은데 속도손실없게 등속으로 하고싶은거 같은데 그건 rigidbody.movePosition()하면 된다. target포지션-본인포지션 해서 방향 구하고 normalize한다음 속도 곱해서 보내셈 무브포지션이 그냥 포지션 바꾸는것과 동일한데 물리연산도 해주는거임
ㄳ, 근데 그러면 대부분 게임들의 주인공 제외 오브젝트 (npc, 몹) 물리는 전부 velocity 대신 position 변경으로 이루어지나?