2025_03_27 TIL
이 글은 평범한 취준생이 평범하게 자신이 당일 배운것들과 느낀점들을 쓰기 때문에 정보가 정확하지 않을 수 있습니다.
심화 팀플 0일차, 어제 회의를 한 관계로 오늘 발제가 시작되었지만 바로 본인 역할대로 일하기 시작하였다. 하지만 프로젝트 첫 날 부터 나의 과정은 순탄치 않았다. 오늘의 행적을 되돌아보자.
1. 절차적 맵 생성기
오늘 해당 내용에 대해서 정말 많이 찾아보았다. 일단 "내가 이해한" 우리조에서 원하는 맵의 생성은 이거였다.
- 플레이어가 던전에 입장했을때, 랜덤으로 방과 방을 이어주는 통로가 생성되어 맵이 완성되는 구조
그래서 여러가지를 많이 살펴보았다. 하지만, 내가 이해를 하지 못했다. 물론 방법은 많았다. BSP부터 시작해서 A스타 알고리즘까지.. 그리고 제작자 본인들이 완성해놓고 직접 시연하는 영상들까지... 이것들을 토대로 이해하고 내가 구현하고 싶었지만, 그러지 못했다. 일단 링크들을 여기 게시해놓고 나중에 한번 더 봐야겠다.
https://www.youtube.com/watch?v=rfKcpp8UDQ0&t=253s
https://bueong-e.tistory.com/286
[랜덤 맵 생성] A* 알고리즘을 이용한 절차적 맵 제작 방법 정리
A* 알고리즘을 이용한 절차적 맵 생성은 아래와 같은 단계로 이루어져 있다. 맵 생성 절차 1. 우선 맵의 배열 수를 정해준다. 정해준 MAX ROW ,MAX COL 은 2차원 배열로 맵의 전체 크기를 뜻한다. 2. 정
bueong-e.tistory.com
물론 이대로 구현할 것은 아니다. 위에서 말했듯이 나는 이것들을 다 할 자신이 없어서 맵에 필요한 방들을 프리팹으로 만들어서 랜덤으로 생성할 것이다.
2. 맵 프리팹 제작
오랜만에 하는 타일 맵 찍기였다. 나는 원래 내가 찾아봤던 에셋으로 하려고 했는데, 내가 에셋을 잘못짜른건지 원래의 에셋이 그런건지 "막대"의 표현이 되지 않았다. 풀어서 쓰자면 막대의 밑 부분은 고정되어 있는 느낌이라 플레이어와 부딪히지만, 위에는 떠있는 느낌이라 플레이어가 통과가 되는 표현이다. 그래서 내가 저번에 2D 메타버스를 구현할 때 사용했던 에셋을 사용했다. 그리고 콜라이더가 적용될 부분, 적용되지 않을 부분을 나누어 위의 느낌을 나게 만들어준다.
물론 플레이어가 지나갈 때 해당 타일이 플레이어에 가려질지, 아니면 플레이어가 가려질 지를 잘 판단해야 한다. 이건 order in layer로 설정이 가능하다.
3. 마무리
뭔데 벌써 끝나는가 싶을 수 있지만, 위의 절차적 맵 생성기에 내 시간과 노력을 쏟기도 했고, 커피를 끊겠다고 아침부터 커피를 안마시니 졸음과 피로가 나를 고문해서 너무 힘들기도 헀다. (근데 이러고 다 이해 못한 내가 레전드긴 하다) 그래서 일단 내일은 맵 프리팹을 완성하고, 해당 프리팹을 이용해서 랜덤으로 생성되는 기믹을 짜 보도록 할 것이다.