Unity 베이크된 광원 사용 가이드

개요

Unity에서는 베이크된 광원을 사용하여 게임 씬의 조명 효과를 미리 계산하고 저장할 수 있습니다. 이 문서는 베이크된 광원의 동작, 장점 및 제한 사항에 대해 설명합니다.

베이크된 광원 정의

베이크된 광원은 Unity 에디터 내에서 조명 데이터를 계산하고 이를 디스크에 저장한 후, 게임 실행 시 해당 데이터를 로드하여 씬에 적용하는 방식입니다. 이 과정을 베이크라고 부릅니다.

베이크된 광원의 장점

  • 성능 향상: 복잡한 계산이 미리 수행되므로, 런타임 시점에서의 셰이딩 및 그림자 렌더링 부하가 줄어듭니다.
  • 고정된 조명: 풍경과 같은 변하지 않는 요소에 대한 조명 적용에 유용합니다.

베이크된 광원 동작

Unity는 베이크된 광원에서 다음 두 가지를 포함합니다:

베이크된 광원 구성 요소 내용
직접 조명 라이트맵을 통해 직접 생성된 빛
간접 조명 라이트 프로브를 통해 간접적으로 생성된 빛

라이트맵과 라이트 프로브

  • 라이트맵: 장면에서 빛의 직접 및 간접 효과를 미리 계산하여 저장합니다.
  • 라이트 프로브: 특정 위치에서의 빛의 간접 효과를 샘플링하여 사용할 수 있습니다.

베이크된 광원의 제한 사항

이점이 많지만, 베이크된 광원에는 몇 가지 제한 사항이 있습니다:

제한 사항 내용
프로퍼티 변경 불가 런타임 중에는 베이크된 광원의 프로퍼티를 변경할 수 없습니다.
스페큘러 조명 미포함 베이크된 광원은 스페큘러 조명에 영향을 주지 않습니다.
동적 객체의 한계 동적 게임 오브젝트는 베이크된 광원으로부터 조명이나 그림자를 받지 않습니다.
설정 주의 사항 "Baked Global Illumination"을 비활성화하면 베이크된 광원이 "Realtime" 모드처럼 강제로 동작합니다.

활용 예제

  1. 정적 풍경 조명: 게임에서 이동하지 않는 풍경에 대한 조명을 베이크하여 성능을 최적화합니다.
  2. 실내 조명: 정적 구조물의 내부 조명을 미리 설정하여 경량화를 도모합니다.
  3. 게임 레벨 디자인: 각 레벨의 분위기를 조성하기 위해 베이크된 조명을 사용하여 일관체에서 조명을 손쉽게 관리합니다.

결론

Unity의 베이크된 광원은 성능을 향상시키고 고정된 조명에 효과적입니다. 그러나 몇 가지 제한 사항이 있어 사용시 주의가 필요합니다. 이를 잘 활용하면 게임의 비주얼 품질을 향상시키면서도 효율적인 성능을 유지할 수 있습니다.

이 문서가 Unity에서 베이크된 광원을 이해하고 활용하는 데 도움이 되길 바랍니다.