버그 해결을 위한 모든 질문을 던져
0 votes
202 views

A*알고리즘을 사용하여 도착지점까지의 위치 배열을 얻은 상태입니다.

                if (go) {
                    Vector2Int startPos = new Vector2Int((int)transform.position.x, (int)transform.position.y);
                    PosList = new List<ANode>(moveManager.Move(startPos, targetPos));
                    cnt = PosList.Count;
                    go = false; i = 0;
                }
현재 위치상태를 불러와 시작지점으로 설정하고, 위치 배열을 PosList에 저장한 후
                else {
                    if (i < cnt) {
                        Vector2 target = new Vector2(PosList[i].x, PosList[i].y);
                        player.transform.position = Vector2.MoveTowards(player.transform.position, target, speed* Time.deltaTime);
                        i++;
                    }
                    else {
                        Debug.Log("도착");
                        go = true;
                    }
                }
배열을 다 돌때까지 MoveTowards를 사용해서 캐릭터를 움직이는데 여기서 캐릭터가 도착하지도 않았는데 멈추거나 움직이지 않습니다....혹은 이상한 곳으로 이동하더라구요....
혹시 정상적으로 배열을 다 돌아서 목표지점까지 도착할 방법이 있을까요?
폐쇄 기록: 해결완료
asked (2 point)
closed , 202 views

버그 해결을 위해 도움을 구하고, 도움을 주세요. 우리는 그렇게 발전합니다.

throw bug 는 프로그래밍에 대한 전분야를 다룹니다. 질문,논의거리,팁,정보공유 모든 것이 가능합니다. 프로그래밍과 관련이 없는 내용은 환영받지 못합니다.

620 질문
784 answers
748 댓글
118,442 users