Unity/Project

[Unity] 내배캠 최종프로젝트 : 루시퍼 서바이벌 5일차,

JEE_YA 2025. 4. 10. 21:13

이전에 내가 해야하는 일에 대해서 짧게 쓴적이 있었는데

내가 해야하는 역할은 맵과 자원, 이중 차주까지는 맵에 대해 어느정도 로직을 짜두어야 한다.

맵에서 해야할일은 해금 기능과 낮/밤 기능으로 크게 두가지이고 둘중 해금 먼저 진행하기로 했다.

 

해금기능은 처음 시작했을때 일정 범위만 맵이 열려있고 플레이하면서 얻는 재화로 맵을 점점 넓혀나갈수 있는데, 3~4일차에 계속 공부했던 타일맵은 이것을 위해 공부했다... 일단 육각형의 타일맵이 해금되지 않은 지역에 깔려있을 예정이고 상호작용을 통해 해금이 되는 형식이다.

다만 3일차에 내가 체인지 타일 메서드 생성 이라는걸로 해서 살짝 적은게 있었는데, 0번 타일타입을 1번 타일타입으로 변경 이거에 대해서는 원래 조원분께서 구상했던건 게임오브젝트 타일맵이 아닌 다른 방식을 생각하고 계셧다고 하셨는데 게임오브젝트 타일맵으로 진행하는게 낫다고 판단하여 타일타입 변경이 아닌 그냥 오브젝트를 파괴하는 형식으로 하려고 한다.

 

타일파괴 시스템은 딕셔너리 구조를 사용하는 방식으로 결정했다.

예전에 딕셔너리를 공부하다 포기했던 적이 있었는데, 이번엔 이해하려고 계속 찾아보면서 어느정도 개념을 이해할 수 있게 되었다.

공부하던 중 오브젝트 풀링 방식도 알게되어 딕셔너리 방식과 비교하여 고민했으나 타일의 양이 많지 않고 여러개를 한번에 파괴하거나 빠르게 한개씩 파괴하는 방식이 아니라는 점에서 딕셔너리 방식으로도 충분하다고 판단했다.

그리하여 딕셔너리 기반으로 코드를 작성했는데 아직 테스트는 하지 못했으므로 테스트를 통해 문제없이 작동하는지 먼저 확인해야 할듯 하다.

 

코드의 흐름은 시작 시 초기화, 플레이어가 사용할 수 있는 상호작용을 위한 타일제거(ClearTile) 메서드 작성 후

그리드 좌표로 전환 / 특정 위치에 타일이 존재하는지 확인 / 상호작용한 위치의 타일 제거의 메서드를 만들어주어 ClearTile 메서드에 넣어주었다.

이 내용은 테스트 후 다시한번 정리하고자 한다.

테스트 하려고 타일도 예쁘게 깔아두었다 :)

 

 

내일은 테스트 후 밤낮구현을 시작하는게 목표다.