일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- Unreal
- A* Algorithm
- CS50
- topdownmove
- 언리얼엔진5 #언리얼 클라이언트 프로그래밍
- Gas
- c++ 베이직
- 원카페#무인카페#카페추천#카페맛집
- Harvard
- CS
- 순환 리스트
- 언리얼
- 메테리얼
- 브론즈
- Module
- UE_5
- 폭설 #미친 날씨
- STL
- 헤더 경로
- leetcode
- 언리얼 엔진5 #언리얼 클라이언트 프로그래밍
- C++
- 네트워크 기초
- 오늘밤 세계에서 이 사랑이 사라진다 해도 #독후감 #오열
- Toon Shading
- 툰쉐이딩
- build.cs
- Console
- 코드리뷰
- 백준
- Today
- Total
목록Console (2)
WN_인생기록

이제는 본격적인 A* 에 대해 진행할 예정이다. 이전의 포스트를 올리면서 코드를 분석해보니, 생각보다 이해안되었던 부분들도 하나하나 보면서 이해했다. void Solve_AStar() { //전체 노드 훑으면서 for (int x = 0; x < nMapWidth; x++) { for (int y = 0; y < nMapHeight; y++) { // 초기화 시키기 nodes[y * nMapWidth + x].bVisited = false; nodes[y * nMapWidth + x].fGlobalGoal = INFINITY; nodes[y * nMapWidth + x].fLocalGoal = INFINITY; nodes[y * nMapWidth + x].parent = nullptr; } } // 두 ..

앞에 포스트에서 기초 세팅이 끝났으니, Update를 해야한다.(아직 그려진거 없음) virtual bool OnUserUpdate(float fElaspedTime) { // 노드의 사이즈와 두께를 정해준다. int nNodeSize = 9; int nNodeBorder = 2; // 마우스 위치를 기반으로, 노드 단위의 위치 식별 int nSelectedNodeX = m_mousePosX / nNodeSize; int nSelectedNodeY = m_mousePosY / nNodeSize; // 마우스를 놓으면 if (m_mouse[0].bReleased) { // 맵의 노드 범위 안에서 if (nSelectedNodeX >= 0 && nSelectedNodeX < nMapWidth) { if (n..