방문자

오늘
—
어제
—
누적
—

불러오는 중

게임 개발 · 기술 동향 · 팀 블로그MIRO
헤드라인

Pixel Foliage

Woodland 숲이 회색으로 보이던 이유

변경 전: Linear 환경에서 낮은 색 대비
변경 전: Linear 환경에서 낮은 색 대비

조명보다 먼저 색 공간을 맞췄습니다

Pixel Foliage의 Woodland 장면이 밝고 흐리게 보인다는 지적을 확인하면서, 원본 프로젝트는 Linear인데 격리 QA는 Gamma였다는 차이를 발견했습니다. 같은 씬을 Linear로 렌더하자 문제가 재현됐습니다. 이전 검증이 서로 다른 색 공간을 비교했다는 점부터 바로잡았습니다.

변경 전: Linear 환경에서 낮은 색 대비

원본과 같은 Linear 환경에서 확인한 변경 전 화면입니다.

수관의 세 가지 색이 읽히도록

잎 색에 들어가던 파스텔 혼합을 되돌리고, 수관 여덟 종류의 잎 RGB를 각각 세 가지로 정리했습니다. 정점 위치와 법선, 바람 가중치, UV와 인덱스는 유지했습니다. 형상을 바꾸지 않고 색 대비가 어떻게 달라지는지 보려는 변경입니다.

Woodland 전용 재질은 공통 바람·접촉·셰이딩 코드를 공유하면서 제작 RGB를 Linear 출력에 맞게 처리합니다. lightBands는 5에서 3으로, lightSoftness는 0.95에서 0.08로 조정했습니다. 이 세 단계는 팔레트 표현이며 물리 그림자를 세 번 계산한다는 뜻은 아닙니다.

하늘과 후처리도 두 씬 안에서 조정했습니다

하늘을 파랑 상단, 민트 중간, 청록 지평선으로 나누고 전체 그림자를 띄우던 후처리를 제거했습니다. 조명색과 블룸 문턱, 노출도 조정했지만 다른 예제에 영향을 주지 않도록 두 Woodland 씬의 범위로 한정했습니다.

변경 후: 수종별 3색과 명확한 하늘 영역

같은 카메라와 바람 시간에서 확인한 변경 후 실제 Unity 렌더입니다.

같은 조건의 렌더로 비교했습니다

Unity 6000.0.83f1 Built-in Linear, 960×600에서 일반 식생 씬과 Pixel Camera 통합 씬을 비교했습니다. 두 씬의 셰이더 오류는 없었고, 수관의 색 수와 기존 배치·카메라 보존도 확인했습니다. 통합 씬의 결과를 Pixel Camera 모듈 자체를 수정한 효과로 설명하지는 않습니다.

원본 레퍼런스의 배치와 볼류메트릭 조명까지 재현한 것은 아닙니다. 실제 프레임 성능과 URP 반사·블룸, 다른 플랫폼도 이번 검증 범위 밖입니다. 색감 문제를 비교할 때에는 화면만 나란히 두기 전에 색 공간과 렌더 파이프라인부터 맞춰야 한다는 점을 남겼습니다.

공통 재질을 바꾸지 않은 이유

Woodland의 색을 맞추려고 공통 Runtime 셰이더까지 바꾸면 다른 예제의 외형도 달라질 수 있습니다. 이번에는 동상 세 종류의 기존 프로필을 복원하고 두 Woodland 씬만 별도 프로필을 참조하게 했습니다. 바뀐 메시·프로필을 다른 예제가 참조하는 경우는 0건으로 확인했습니다.

다음 도표는 원문의 비교 순서를 정리한 것입니다. 숫자를 맞추는 단계보다 원본과 검증 환경이 같은지 확인하는 단계가 앞에 있습니다.

flowchart LR
  A["원본 Linear 확인"] --> B["격리 QA도 Linear로 재현"]
  B --> C["Woodland 전용 색 처리 조정"]
  C --> D["동일 카메라와 바람 시간 비교"]

셰이더 컴파일 통과와 실제 렌더 확인도 구분했습니다. Gamma 분기가 컴파일됐다는 사실만으로 최종 Gamma 외형까지 승인한 것은 아닙니다. 기존 공통 함수의 경고는 남았으며 검토 패키지를 이번 소스로 재포장한 작업도 아니었습니다.

작업 근거

댓글

이 글에 대한 생각을 남겨 주세요.

댓글 삭제

헤드라인

같은 카테고리의 글

프로젝트 개발일지 전체 보기 ↗