프로그레시브 라이트매퍼는 Unity 에디터에서 프로그레시브 업데이트 방식으로 베이크된 라이트맵과 라이트 프로브를 제공하는 경로 추적 기반 라이트매퍼 백엔드입니다.
프로그레시브 라이트매퍼는 짧은 준비 단계(지오메트리 및 인스턴스 업데이트, G버퍼 및 차트 마스크 생성)를 거쳐 결과물을 매우 빠르게 생성하기 시작합니다. 새 중간 결과가 준비되는 즉시 새 라이트맵과 라이트 프로브가 표시됩니다. 따라서 매우 빠른 반복 워크플로가 가능합니다.
Enlighten 기반이었던 이전의 베이크된 라이트맵용 라이트매퍼는 미리 계산된 실시간 GI를 사용하여 간접 조명을 생성했습니다. 이러한 이유로 조명만 변경하면 새 라이트맵을 꽤 빨리 만들 수 있다는 장점과 사용자가 베이크만 하려 할 때에도 모든 UV 레이아웃 제약이 적용된다는 단점이 공존했습니다. 프로그레시브 라이트매퍼의 UV 요구 사항은 베이크된 라이트매핑에서 요구되는 일반적인 사항과 같습니다.영역이 작고 각도 오류가 없는 겹치지 않는 UV가 있어야 하고, 차트 사이에는 적절한 패딩이 유지되어야 합니다.
새 라이트매퍼는 결과물을 즉시 생성한 후 점진적으로 다듬는 방식으로 작동하므로 조명 워크플로가 크게 개선되어 인터랙티브 조명 워크플로가 가능합니다. 또한 베이크 시간도 훨씬 더 규칙적입니다.
여기에서 인터랙티브 워크플로에 대해 자세히 설명하는 동영상을 확인할 수 있습니다.
또한 이 새로운 기법은 앱샘플링 방식을 사용하거나 복사 조도 캐시 또는 다른 전역 데이터 구조를 사용하지 않고 각 개별 텍셀의 라이트맵 해상도 수준으로 전역 조명을 베이크할 수 있습니다. 따라서 이 기법을 활용하면 라이트맵 일부를 선택하여 베이크할 수 있어 반복 속도를 크게 높일 수 있습니다.
새로 생성된 씬에는 기본적으로 프로그레시브 라이트매퍼가 활성화되어 있습니다. 기존에 만든 씬은 “Progressive (experimental)” 베이크 백엔드를 선택할 때까지 Enlighten이 선택되어 있습니다.
‘Auto Generate’ 및 ‘Generate Lighting’ 옵션 아래의 패널에는 생성된 라이트맵의 양, 뷰 안에 있는 라이트맵과 뷰 밖에 있는 라이트맵 수, 베이크 성능이 표시됩니다.
라이팅 창의 베이크된 GI 설정 외에, Lightmap Parameters 에셋에는 설정 가능한 새로운 파라미터인 Anti-aliasing Samples, Pushoff, Backface Tolerance가 추가되어 있습니다. 씬의 기본 라이트맵 파라미터는 General GI > Default Parameters에서 설정하거나 렌더러별로 설정할 수 있습니다.
나머지는 Unity 5 워크플로입니다. 오브젝트를 정적으로 표시하고, 일부 광원 입력(광원, 환경 조명 또는 정적 오브젝트의 발광 머티리얼)을 베이크됨으로 설정합니다.
“Auto” 모드에서는 라이트맵과 라이트 프로브가 자동으로 연산됩니다. “Auto”를 비활성화했다면 “Build” 버튼을 눌러야만 베이크가 시작됩니다.
Force stop: 요청된 양의 샘플이 실제로 완료되기 전에 베이크를 임의 시점에 중지할 수 있습니다. 조명이 수동으로 빌드된 경우에 사용할 수 있습니다. 최대 샘플 수가 100,000이고 뷰 우선 순위 지정을 비활성화할 수 있는 기능이 있으므로 컴퓨터에서 계속 베이크되도록 놔두고 결과가 좋아 보일 때 언제든지 베이크를 중지할 수 있습니다..
Invalid texels: Backface Tolerance 파라미터(LightmapParameters > General GI)에 따라 유효하지 않은 텍셀이 표시되고, 주위의 유효한 텍셀을 사용하여 유효하지 않은 텍셀을 채웁니다. 이 작업을 처리하는 확장 프로세스는 라이트맵이 계속 개선될 때보다 라이트맵이 통합된 후에 반복을 더 많이 수행합니다.
Supersampling: 조명 품질은 슈퍼샘플링 양에 따라 달라집니다. ‘Anti-aliasing Samples’ 프로퍼티(Lightmap Parameters > Baked GI, 위의 라이트맵 파라미터 섹션 참조)를 사용하여 설정합니다.
이 프로젝트는 프로그레시브 라이트매퍼에 필요한 설정을 사용하여 설정되었습니다. 에셋 스토어에서 제공되는 Tanks! 프로젝트의 한 버전입니다. 5분 내에 베이크되고, 1024x1024 라이트맵이 11개 있습니다. 이 프로젝트의 인터랙티브 워크플로를 설명하는 비디오를 시청할 수 있습니다.