RTS Game Tutorial | Unity | Episode 30 - Fog of War
- 안개 전쟁 시스템 구현 🌫️: RTS 게임에서 맵 전체를 가리고 유닛이 탐험할 때만 드러나게 하여 탐험의 재미를 더합니다.
- Fog of War Manager 생성 ⚙️: 빈 오브젝트를 만들어 Fog of War Manager 스크립트를 추가하고, 제공된 링크에서 코드를 복사하여 붙여넣습니다.
- 맵 크기에 따른 월드 사이즈 조정 🗺️: Fog of War 영역은 월드 사이즈에 기반하며, 맵 크기에 맞게 조정해야 합니다.
- 시야 반경 및 텍스처 해상도 설정 👁️: 유닛이 맵을 얼마나 드러낼지 결정하는 시야 반경과 안개의 디테일을 결정하는 텍스처 해상도를 설정합니다.
- 초기 공개 영역 삭제 ❌: 더 이상 사용하지 않는 초기 공개 영역 관련 코드를 제거합니다.
- Fog Texture 및 Vision Sources 관리 🖼️: 안개 텍스처, 픽셀 데이터 배열, Fog Render 참조, Fog 높이, Vision Sources 목록을 관리합니다.
- 싱글톤 패턴 적용 ☝️: Fog of War Manager는 싱글톤으로 구현되어 하나의 인스턴스만 존재합니다.
- 안개 초기화 및 업데이트 🔄: 게임 시작 시 안개를 초기화하고, 유닛 이동에 따라 안개를 지속적으로 업데이트합니다.
- 셰이더를 이용한 픽셀 변경 🎨: 유닛이 이동하면 셰이더를 통해 픽셀 색상을 변경하여 안개를 드러냅니다.
- Vision Source 등록 및 해제 ✅: 유닛이나 건물이 생성될 때 Vision Source로 등록하고, 파괴될 때 해제합니다.
- Fog Revealer 스크립트 생성 🕵️: 안개를 드러내는 모든 오브젝트에 Fog Revealer 스크립트를 추가합니다.
- 초기 공개 영역 설정 📍: 캠페인이나 랜덤 맵 생성 시 초기 공개 영역을 설정하여 시작 위치를 다르게 할 수 있습니다.
- 셰이더 및 머티리얼 생성 ✨: 안개 표현을 위한 셰이더와 머티리얼을 생성하고, Fog of War Manager에 적용합니다.