여기서 스플라인의 정의는 hermite 같은 스플라인이 아니라 말 그대로 짧은 직선들로 궤적을 만드는 경우. waypoint 단위 직선이지.
programmer(successor)2015-07-20 16:39
그게 이동 그룹 갯수만큼 메모리에 존재할텐데, 지형 octree 에 포함시켜버리는거지.
programmer(successor)2015-07-20 16:39
그리곤 방해물 크기 보다 조금 반경을 넓힌 원이 똬 하고 메모리에 등장할때 충돌 탐색을 수행한 후 충돌이 있으면 충돌한 낱개의 spine 과 ID 가 같은, 즉 하나의 완전한 spline set 에 대해 재탐색을 걸거나, 원의 반경을 따라 그린 waypoint 조정 만으로 처리가 되는거임
programmer(successor)2015-07-20 16:41
밥먹고 왓는데 댓글 엄청달렷네 ㅋㅋ 매프레임마다 길찾기 하긴햇음 성능테스트로 .
작성자(121.176)2015-07-20 17:07
이동시엔 캐릭터 몸통 정도를 이동속도만큼 쉬프팅 시킨 영역이 비어있는지만 판단하고 계획대로 계속 이동시키는거임 -> 쉬프팅이 뭔말임?
설마 각 마리마다 a* 를 쓰려고?
그렇게햇엇는데 그러면안될거같다고 깨달음방금
폰 사양도 썩 나쁘진 않던데 구현도 좀 잘못했을것 같긴 하네.
스타는 완전한 a* 가 아님.
A*랑 매쉬네비게이션 섞어서 하면 개꿀
계산을 이동 명령할때 일단 한번만 하고 자기가려는 길이 막히면 다시 계산하면 됨
스레드를 사용해보는건어때?
스레드는 근본 해결이 아닐듯
이분 솔직히 매 프레임 다시 길 찾기 시켰을 듯
대열을 어떻게 계획하느냐에 달렸는데.
보통은 마우스 클릭 등 이동명령 1회당 1회의 a* 만 수행하면 됨.
1열 종대로 갈꺼면 눈에 보이지 않는 리더 캐릭터를 따라가게 하는 방법이 있고
(그러면 근거리 계산밖에 없지)
하지만 유닛 충돌, 동적 지형 장애물이 등장한다면....
이동시엔 캐릭터 몸통 정도를 이동속도만큼 쉬프팅 시킨 영역이 비어있는지만 판단하고 계획대로 계속 이동시키는거임
내말은 뭐냐하면 이미 찾은 경로로 따라가다가 도중에 어떤 길이 열려서 그길이 더 빠른 경우
스타같은 경우 일정 주기마다 재계산 하는 것 같음
전체 맵 만큼의 탐색맵을 두고 다른 캐릭터들의 이동으로 마킹된 영역에 새로운 방해물을 놓아야 할 땐 마킹의 그룹을 재탐색하게 하는 방법이 있음.
메모리 널럴하면 맵의 가로 세로 만큼의 vector 를 생성하면 됨.
길찾기 결과노드 단위(타일이나 일정 영역)에 여길 지나가려는 유닛들을 링크 시켜둔다 그건가여
spline 들과 원의 충돌 탐색으로 처리해도 되고 말야.
여기서 스플라인의 정의는 hermite 같은 스플라인이 아니라 말 그대로 짧은 직선들로 궤적을 만드는 경우. waypoint 단위 직선이지.
그게 이동 그룹 갯수만큼 메모리에 존재할텐데, 지형 octree 에 포함시켜버리는거지.
그리곤 방해물 크기 보다 조금 반경을 넓힌 원이 똬 하고 메모리에 등장할때 충돌 탐색을 수행한 후 충돌이 있으면 충돌한 낱개의 spine 과 ID 가 같은, 즉 하나의 완전한 spline set 에 대해 재탐색을 걸거나, 원의 반경을 따라 그린 waypoint 조정 만으로 처리가 되는거임
밥먹고 왓는데 댓글 엄청달렷네 ㅋㅋ 매프레임마다 길찾기 하긴햇음 성능테스트로 .
이동시엔 캐릭터 몸통 정도를 이동속도만큼 쉬프팅 시킨 영역이 비어있는지만 판단하고 계획대로 계속 이동시키는거임 -> 쉬프팅이 뭔말임?