라이트 베이킹은 수준 내 오브젝트의 조명을 사전 계산하고, 이를 디스크의 텍스처에 저장하는 프로세스입니다. 이 텍스처를 라이트 맵이라고 합니다. 런타임 시, 게임은 매 게임 프레임마다 실시간으로 조명을 계산할 필요 없이 라이트 맵을 로드하고, 사전 계산된 조명을 다시 수준 내 오브젝트에 적용합니다.
장면을 위한 조명을 베이킹해야 하는 몇 가지 아주 좋은 이유가 아래에 간략히 설명되어 있습니다.
매년 새로운 실시간 렌더링 알고리즘과 더욱 강력한 GPU가 출시되고 있지만 실시간 렌더링으로는 여전히 라이트 사전 계산만큼 미묘한 조명 효과를 만들어내지 못합니다. 예를 들어, 조명 베이킹을 통해 수준에 도입할 수 있는 조명 효과에는 다음이 포함됩니다.
장면 내 오브젝트를 비추는 일부 또는 모든 라이트를 사전 계산하면 게임이 매 프레임마다 처리해야 하는 작업량이 줄어듭니다. 장면에서 라이트를 동적으로 처리하는 대신 게임이 처리해야 하는 작업은 각 오브젝트에 추가 텍스처를 적용하는 것뿐이라 상대적으로 처리 비용이 저렴합니다. 결국 장치의 GPU 및 CPU가 다른 작업을 처리할 수 있도록 사이클을 비워주는 효과도 있습니다.
서로 다른 여러 종류의 장치용으로 게임을 개발할 때에는 기능, 성능 및 리소스가 서로 다른 여러 GPU를 사용할 수밖에 없습니다. 이로 인해 결국 각 장치가 보기에도 서로 다른 결과를 내놓거나, 한 장치에서는 잘 작동하는 실시간 조명 설정이 다른 장치에서는 리소스를 과도하게 소모할 수도 있습니다.
조명을 사전 계산함으로써 예측 가능한 성능 수준으로 모든 플랫폼에서 가능한 최적의 결과를 사용할 수 있게 됩니다.
위에 나열한 모든 장점에도 불구하고 항상 조명을 베이킹할 수는 없는 이유가 무엇입니까? 적용을 하는 대신 포기해야 하는 몇 가지 사항이 아래에 나와 있습니다. 게임에서 요구하는 사항에 따라 이를 받아들일지 말지 결정하면 됩니다.
텍스처는 런타임 시 많은 메모리를 소모합니다. 라이트 맵을 베이킹하면 게임에 로드해야 하는 텍스처가 더 추가되고, 결국 게임의 메모리 점유율이 크게 증가합니다.
각 플랫폼에 따라 라이트 맵의 메모리 크기를 선별적으로 감소시켜 이 문제를 해결할 수는 있습니다. 텍스처를 압축하고, 가장 큰 밉맵 단계를 버리는 방법도 있습니다. 자세한 내용은 메모리 사용 최적화 및 텍스처 작업을 참조하십시오.
사실적 전역 조명을 사전 계산하는 작업은 꽤 시간이 걸립니다. 대규모 장면에서 매우 높은 품질의 결과를 얻으려면 최종 베이킹을 수행할 때마다 정말 많은 시간, 때로는 몇 시간에서 며칠까지 필요할 수 있습니다. 수준 디자인 및 제작 워크플로우에 이 추가 시간을 중요 요인으로 포함시켜야 합니다.
내장된 GPU 가속 Stingray 라이트 베이커는 여러 패스를 거치는 반복 작업을 진행하면서 매번 렌더링 품질을 높이는 방식으로 최종 결과를 향해 수렴해갑니다. 덕분에 중간 결과를 빨리 확인할 수 있어 베이킹에 필요한 시간을 줄일 수 있습니다. Bake Lightmaps을 참조하십시오.
라이트 맵은 사전 계산되기 때문에 정적 오브젝트를 비추는 정적 라이트에만 효과적입니다. 하지만 일반적으로 게임에는 장면에서 이리저리 이동하는 동적 요소들이 있기 마련입니다.
약간의 책과 서류가 놓인 책상을 비추는 램프를 설정해둔 장면을 위해 조명을 베이킹한다고 가정해 보겠습니다. 오브젝트들의 라이트 맵 텍스처는 밝게 빛나고, 책상의 라이트 맵 텍스처는 램프에서 비춘 밝은 빛 웅덩이를 책과 서류의 그림자와 함께 보여줄 것입니다. 게임 중에 램프가 움직여도 책상과 오브젝트는 램프가 원래 자리에 그대로 있는 것처럼 계속해서 같은 위치에 같은 빛 웅덩이를 보여줄 것입니다. 반대로, 책과 서류가 움직이면 두 오브젝트는 계속해서 라이트에 의해 밝게 표시되고, 책상에서 책과 서류가 원래 있던 자리에는 그림자가 생길 것입니다.
이를 처리하는 대표적인 방법은 간접 라이트만, 그리고 상대적으로 정적인 오브젝트 및 라이트만 베이킹하는 것입니다. 모든 오브젝트에 대한 직접 조명은 일반적으로 실시간으로 만듭니다. 이와 같이, 움직이는 오브젝트가 계속해서 동적 그림자를 받게 되고, 베이킹된 전역 조명의 간접 조명을 사용하지만 움직이지 않는 오브젝트는 보다 고품질 라이트 맵의 간접 조명을 받게 됩니다.