Unity상에서 Light는 현실과 빛이 동작하는 방식과 근사하게 동작한다.
Light의 종류에는 현실처럼 두가지의 종류가 있다
조명을 많이 사용하면 시각적인 효과는 극대화되지만 프로세스가 처리해야할 부하는 늘어난다. 유니티에서 제공하는 다양한 옵션을 사용하면 부하를 효과적으로 줄일 수 있다.
두 가지다 동시에 사용가능하다.
두 가지다 동시에 사용가능하다.
빛을 방출하는 오브젝트이다.
직접 조명과 간접 조명을 모두 모델링하여 사실적인 결과를 제공하는 기술이다.
조명에 대한 연산을 미리 해놓아 프로세스의 부하를 줄일 수 있다.
- Light Mapping, Light Probe, Reflection Probe로 이루어져 있다.
- 모든 랜더 파이프라인은 Bake된 전역조명 시스템을 지원한다.
씬의 조명 밝기를 미리 연산하고 결과를 Light Map이라고 불리는 Texture에 저장하는 기능이다.
씬의 표면에 닿는 광원에 대한 정보를 저장한다.
오른쪽 이미지 : 조명이 배치된 씬
왼쪽 이미지 : 배치된 조명으로 만들어진 Light Map. 그림자 및 광원 정보가 모두 저장된다.
직접광과 간접광이 모두 포함될 수 있다.
씬의 빈 공간을 지나가는 빛에 대한 정보를 Probe에 저장한다.
노란 점들을 Probe라고 한다.
RunTime시점에 동적 게임 오브젝트에 담는 간접광은 해당 오브젝트와 가장 가까운 Probe의 값을 불러와 근사화된다.
Light Map과 다르게 동적 오브젝트에게도 고품질의 조명을 제공할 수 있다.
특정 지점들의 반사광을 미리 연산하여 Probe에 저장한다.
Probe를 둘러싼 모든 방향의 정적 오브젝트를 캡쳐하여 CubeMap으로 저장하여, 반사 재질을 가지는 객체에서 사용가능하다.
참조 : https://docs.unity3d.com/kr/2021.1/Manual/LightingOverview.html