라이트 프로브의 조명 정보는 스피리컬 하모닉 기본 함수로 인코딩됩니다. L2 스피리컬 하모닉이라고도 하는 3차 다항식을 사용합니다. 이는 각 컬러 채널에 9개씩 27개의 부동 소수점 값을 사용하여 저장됩니다.
Unity의 인라이튼 실시간 전역 조명 구현은 기능의 원래 개발자인 Geomerics와는 다른, 피터 파이크 슬로안의 논문 Stupid Spherical Harmonics (SH) Tricks의 표기 및 재구성 방법인 스피리컬 하모닉 방식을 사용합니다. Geomerics의 원래 방식은 라마무르티/핸러핸의 논문 An Efficient Representation for Irradiance Environment Maps의 표기 및 재구성 방법에 기반한 것입니다.
재구성에 필요한 셰이더 코드는 UnityCG.cginc에서 찾을 수 있으며 피터 파이크의 논문 부록 A10 복사조도 환경 맵을 위한 셰이더/CPU 코드 메서드를 사용합니다.
데이터 내부 순서는 다음과 같습니다.
[L00: DC]
[L1-1: y] [L10: z] [L11: x]
[L2-2: xy] [L2-1: yz] [L20: zz] [L21: xz] [L22: xx - yy]
R, G, B에 해당하는 9개의 계수는 다음과 같은 순서로 배열됩니다.
L00, L1-1, L10, L11, L2-2, L2-1, L20, L21, L22, // red channel
L00, L1-1, L10, L11, L2-2, L2-1, L20, L21, L22, // blue channel
L00, L1-1, L10, L11, L2-2, L2-1, L20, L21, L22 // green channel
Unity의 라이트 프로브 시스템에 관한 자세한 내용은 GDC 2012의 로버트 쿠피스의 강연 내용인 사면체 테셀레이션을 이용한 라이트 프로브 보간법, GDC 2012(영문)를 참조하십시오.
2017–06–08
5.6에 라이트 프로브가 업데이트됨