🗓️ 오늘 하루 일정
✅ 오전
- 09:00 ~ 09:30 : 데일리 스크럼(AM) — 진행 상황 공유, 오늘 목표 확정
- 09:30 ~ 10:30 : Fog of War(FOW) 구현 방식 리서치·비교(타일/CPU 마스크/RT 누적 등)
- 10:30 ~ 12:30 : URP 2D 세팅 점검, 레이어·소팅 정리(FOWProbe/FOW), 전용 카메라/RT 설계
🍽️ 점심시간
- 13:00 ~ 14:00 : 점심
✅ 오후
- 14:00 ~ 15:00 : FOW 프로토타입 구성(ExplorationCam + RT_Frame/VisitedA/VisitedB)
- 15:00 ~ 16:30 : 오버레이 셰이더·머티리얼 연결, 런타임 바인딩 구현
- 16:30 ~ 17:30 : 디버깅(라이트 블렌드/레이어/컬링 마스크 이슈 추적)
- 17:30 ~ 18:00 : 정리(문제 목록화·대응 전략 메모)
🍽️ 저녁시간
- 18:00 ~ 19:00 : 저녁
✅ 저녁
- 19:00 ~ 20:00 : 프로토타입 재확인 및 로그 점검(미리보기 UI로 RT 상태 확인)
- 20:00 ~ 20:30 : 레퍼런스 조사(레딧 FOW/LOS 사례)
- 20:30 ~ 21:00 : 저녁 스크럼 — 내일 작업 배분 결정
- 21:00 ~ 21:30 : 내일 에셋 기반 FOW 도입 계획 수립
- 21:30 ~ 21:45 : TIL 작성
✅ 오늘 학습 키워드
- URP 2D, Light2D(Additive vs Multiply), Target Sorting Layers
- RenderTexture 누적(Graphics.Blit, max 합성)
- UI 오버레이 합성 셰이더(현재 시야=투명 / 방문=회색 / 미탐색=검정)
- 카메라 Culling Mask·레이어 분리 전략
✅ 오늘 학습 한 내용을 나만의 언어로 정리하기
- “지금 비춘 영역”을 전용 카메라로 RT_Frame에 찍고, 이전 누적과 max로 합쳐 VisitedRT에 쌓는다.
- 화면에는 RawImage 오버레이를 얹고, 셰이더에서 현재 프레임 밝은 픽셀은 완전 투명, 누적 픽셀은 회색, 미탐색은 검정으로 표현하면 플레이 가시성과 진행 흔적을 동시에 확보할 수 있다.
- 핵심은 Additive 전용 Light2D와 Global Light2D의 레이어 분리, 그리고 런타임 머티리얼 텍스처 바인딩이다.
🧩 학습하며 겪었던 문제점 & 에러
1) 프로브 평면이 메인 카메라에 노출됨
- 문제 정의: 게임 화면이 회색 부채꼴로 덮여 실제 월드가 가려짐.
- 내가 한 시도: 오버레이 색/알파 조정.
- 해결 방법: Main Camera의 Culling Mask에서 FOWProbe 해제(ExplorationCam만 보게).
- 새롭게 알게 된 점: 프로브용 평면은 전용 카메라로만 렌더링해야 한다.
- 다시 만나면: 씬 진입 시 카메라-레이어 매트릭스를 우선 점검.
2) 화면이 전부 어두움(오버레이만 보임)
- 문제 정의: 현재 시야가 투명 처리되지 않아 월드가 안 보임.
- 내가 한 시도: 셰이더 임계값 변경.
- 해결 방법: overlay.material = new Material(overlayMat)로 인스턴스화,
- overlay.texture = currentVisited, overlay.material.SetTexture("_CurrentTex", rtFrame) 런타임 바인딩. 컷오프 0.2로 조정.
- 새롭게 알게 된 점: 에디터에서 Texture만 넣으면 동작 불가, 코드 바인딩 필수.
- 다시 만나면: 실행 직후 디버그 RawImage로 RT_Frame/Visited 상태 먼저 확인.
3) RT_Frame가 항상 검정
- 문제 정의: 누적 자체가 진행되지 않음.
- 내가 한 시도: 카메라/RT 재설정.
- 해결 방법: FOW 전용 Light2D를 Additive로 전환, Target Sorting Layers=FOW만, Global Light2D에서 FOW 타겟 해제.
- 새롭게 알게 된 점: Multiply 라이트는 마스크 소스로 부적합.
- 다시 만나면: 라이트 Blend/Target Layers부터 체크.
📝 메모
- 내일은 FOW 에셋 기반으로 재구현(기능: 누적/감쇠/미니맵 연동 검토) → 데모 씬 확인 후 프로젝트 통합.
- 내일 담당
- 재은: Fog of War 에셋 도입·통합
- 혜현: 적 상태
- 도현: 컨디션(스태미나)
- 현수: 맵 제작
- 유경: UI 제작
- 추가 아이디어: 방문 영역 감쇠(decay), 가장자리 블러, 세이브/로드 포맷 정의 및 미니맵 동기화.
오늘 하루는 플레이어가 라이트를 비췄던 자리를 회색으로 남기는 기능을 만들고싶었다 하지만.. 실패 ㅠㅜ 그리고 검색을 하다보니 Fog of War이라는 에셋을 찾았다.. 완전히 내가 원하는 기능! 그래서 내일은 이 에셋을 적용시켜보려고 한다! 쉽지는 않겠지만 화이팅!!!
'스파르타 코딩클럽 > TIL작성' 카테고리의 다른 글
내일배움캠프 55일차 TIL [최종 프로젝트 Black Chamber] (0) | 2025.09.15 |
---|---|
내일배움캠프 54일차 TIL [최종 프로젝트 기획+개발] (0) | 2025.09.12 |
내일배움캠프 53일차 TIL [최종 프로젝트 기획+개발] (0) | 2025.09.11 |
내일배움캠프 52일차 TIL [최종 프로젝트 기획+개발] (0) | 2025.09.10 |
내일배움캠프 51일차 TIL [최종 프로젝트 기획] (0) | 2025.09.09 |