라이트매핑은 씬의 표면 밝기를 미리 계산하고 계산 결과를 나중에 사용하기 위해 라이트맵이라고 불리는 텍스처에 저장하는 프로세스입니다.
라이트맵에는 직접광과 간접광이 모두 포함될 수 있습니다. 이 조명 텍스처는 오브젝트의 머티리얼과 연결된 셰이더에서 컬러(알베도) 및 릴리프(노멀) 같은 표면 정보와 함께 사용될 수 있습니다.
라이트맵에 베이크된 데이터는 런타임 시 변경할 수 없습니다. 실시간 광원은 라이트맵이 적용된 씬 위에 오버레이시켜 추가적으로 사용할 수 있지만, 라이트맵 자체를 대화식으로 변경할 수 없습니다.
이 방식을 사용할 경우 게임플레이 시에 광원을 실시간으로 움직일 수 있는 유용성을 잠재적인 성능 향상과 맞바꾸는 것이므로, 모바일 플랫폼처럼 성능이 낮은 하드웨어에 적합합니다.
Unity는 프로그레시브 라이트매퍼를 통해 라이트맵을 베이킹합니다.
라이트매퍼를 설정하는 방법에 관한 도움말은 라이트매핑: 시작하기를 참조하십시오.
프로그레시브 라이트매퍼는 에디터에서 프로그레시브 업데이트 방식으로 베이크된 라이트맵과 라이트 프로브를 제공하는 빠른 경로 추적 기반 라이트매퍼 시스템입니다. 이 라이트매퍼 시스템은 영역이 작고 각도 오류가 없으며 겹치지 않는 UV와 차트 사이의 충분한 패딩을 필요로 합니다.
프로그레시브 라이트매퍼는 짧은 준비 단계를 통해 지오메트리와 인스턴스 업데이트를 처리하고 G버퍼 및 차트 마스크를 생성합니다. 그런 다음 결과물을 즉시 생성한 후 점진적으로 다듬기 때문에 인터랙티브 조명 워크플로를 크게 개선할 수 있습니다. 또한 프로그레시브 라이트매퍼는 베이크하는 동안 예상 시간을 제공하기 때문에 베이크 시간을 더욱 쉽게 예측할 수 있습니다.
또한 프로그레시브 라이트매퍼는 업샘플링 방식을 사용하거나 복사 조도 캐시 또는 기타 전역 데이터 구조를 사용하지 않고 각 개별 텍셀의 라이트맵 해상도로 GI(전역 조명)를 베이크할 수 있습니다. 이를 통해 라이트맵을 견고하게 만들고 라이트맵 일부를 선택하여 베이크할 수 있으므로 더욱 빠르게 씬을 테스트하고 반복할 수 있습니다.
인터랙티브 워크플로를 자세하게 설명하는 동영상은 Unity의 설명 동영상 개발 중 - 프로그레시브 라이트매퍼(YouTube)에서 시청할 수 있습니다.