Version: Unity 6.0 (6000.0)
언어 : 한국어
라이트맵의 빛 번짐 효과 해결
조명 설정 에셋의 라이트매핑 설정 레퍼런스

베이킹 최적화

대부분의 설정에서 프로그레시브 GPU 라이트매퍼는 프로그레시브 CPU 라이트매퍼보다 훨씬 빠릅니다. 성능은 선택한 베이킹 프로파일에 따라 달라집니다.

그러나 베이크에 사용하는 GPU의 사양과 해당 GPU 전용 VRAM의 양은 모두 라이트매퍼의 성능 경험에 영향을 미칩니다.

GPU 리소스를 놓고 경쟁하는 다른 애플리케이션도 베이킹 성능에 영향을 미칩니다. 하드웨어 공급업체에 따라 Unity에서 사용할 수 있는 VRAM 양을 줄이면 베이크 프로세스가 느려지거나 실패할 수 있습니다.

프로그레시브 CPU 라이트매퍼와 동일한 품질의 결과를 얻으려면 프로그레시브 GPU 라이트매퍼에 간접광 샘플이 최대 4배 더 필요합니다. 프로그레시브 CPU 라이트매퍼는 각 바운스마다 더 많은 광선을 발사하는 분기 경로 추적이라는 방식을 사용합니다. GPU에는 분기 경로 추적 방식이 적합하지 않습니다.

Unity는 프로그레시브 GPU 라이트매퍼가 씬을 베이크하는 데 필요한 메모리 양을 결정하는 데 도움이 되는 스프레드시트를 제공합니다. 자세한 내용은 프로그레시브 GPU 라이트매퍼 메모리 스프레드시트를 참조하십시오.

라이트매퍼 타일링으로 인한 베이킹 속도 저하 방지

프로그레시브 GPU 라이트매퍼에는 라이트매퍼 타일링이라는 기능이 포함되어 있습니다. 라이트매퍼 타일링은 프로그레시브 GPU 라이트매퍼가 사용 가능한 모든 GPU 메모리를 사용하지 못하게 합니다. 대신 Unity는 CPU에 임시 메모리를 할당한 후 사용 가능한 GPU 메모리 양에 맞게 크기가 조정된 타일 단위로 조명을 베이크합니다. Unity는 선택한 베이크 프로파일에 따라 타일링을 설정합니다. 프로그레시브 CPU 라이트매퍼에는 타일링 기능이 포함되어 있지 않습니다.

타일링 기능이 활성화되어 있고 라이트맵 아틀라스 해상도가 512px 이상인 경우 베이킹 프로세스는 타일링 없이 동일한 씬을 베이크하는 것보다 느립니다.

플랫폼별 제한 사항

macOS에서는 사용 가능한 메모리 양을 확인하기가 더 어렵습니다. 결과적으로 이 플랫폼에서는 CPU 폴백 가능성이 더 높으며 베이크 속도를 최적화하기 위한 지침을 따르는 것이 가장 좋습니다.

베이크 시간을 최적화하는 방법

베이크 시간을 단축하고 베이크용으로 지정된 GPU에서 사용할 수 있는 VRAM을 초과하는 상황을 피할 수 있는 몇 가지 방법이 있습니다.

  • 다른 GPU 가속 애플리케이션을 닫습니다. GPU 가속 2D 이미지 편집 및 3D 모델링 소프트웨어는 VRAM을 사용합니다. 가속 그래픽스 기능을 끄거나 이러한 애플리케이션을 종료합니다.

  • 더 작은 게임 오브젝트에는 라이트 프로브를 사용합니다. 잔해나 소품 같은 게임 오브젝트는 라이트맵의 공간을 차지하지만 씬의 모습에 크게 영향을 미치지 않을 수 있습니다. 베이크 속도를 최적화하려면 이러한 게임 오브젝트의 메시 렌더러에 Contribute Global Illumination을 비활성화하고 라이트 프로브로 조명을 비춥니다.

  • 렌더링과 베이킹을 위한 별도의 GPU를 지정합니다. 컴퓨터에 GPU가 두 개 이상 있는 경우 렌더링용으로 하나, 베이크용으로 하나를 지정할 수 있습니다. 아래의 GPU 선택 설정을 참조하십시오.

  • 안티앨리어싱 샘플을 더 적게 사용합니다. 라이트맵 파라미터 에셋에서 이 설정의 기본값은 8입니다. 이 값을 늘리면 Unity가 더 많은 VRAM을 사용합니다. 라이트맵 크기가 4,096 이상인 경우 많은 소비자 GPU의 메모리를 빠르게 초과할 수 있습니다.

  • 샘플(직접 샘플, 간접 샘플, 환경 샘플)을 더 적게 사용하고 디노이저를 사용하여 라이트맵에 남아 있는 노이즈를 정리합니다.

  • 라이트맵 해상도를 줄입니다.

GPU 선택 설정

GPU가 두 개 이상 있는 경우 하나는 씬 렌더링 작업에, 다른 하나는 조명 베이크 작업에 지정할 수 있습니다. 이렇게 하면 기본 GPU가 씬을 렌더링하고 프로그레시브 GPU 라이트매퍼를 사용하여 베이크하는 데 사용할 수 있는 VRAM이 충분하지 않은 경우 적합할 수 있습니다.

Unity가 베이크에 사용하는 GPU를 변경하려면 다음 단계를 따르십시오.

  1. Lighting 창(메뉴: Window > Rendering > Lighting)을 엽니다.
  2. 조명 데이터를 미리 계산하려면 Generate Lighting을 선택합니다.
  3. GPU Baking Device를 통해 GPU를 선택합니다.
라이트맵의 빛 번짐 효과 해결
조명 설정 에셋의 라이트매핑 설정 레퍼런스