Version: 2023.1
언어: 한국어
라이팅 창
조명 모드

조명 설정 에셋

조명 설정 에셋은 베이크된 전역 조명과 인라이튼 실시간 전역 조명 시스템에 대한 데이터를 저장하는 LightingSettings 클래스에 저장된 인스턴스를 나타냅니다. Unity 에디터는 이 시스템 중 하나 또는 둘 모두를 사용하는 씬에 대해 조명 데이터를 사전 계산할 때 이 데이터를 사용합니다.

동일한 조명 설정 에셋 또는 LightingSettings 클래스의 인스턴스를 두 개 이상의 씬에 할당할 수 있으므로 여러 씬에서 전역 조명 시스템 설정을 간편하게 공유할 수 있습니다.

조명 설정 에셋 생성

Unity 에디터에서 조명 설정 에셋을 생성하는 방법에는 두 가지가 있습니다.

프로젝트 뷰에서 조명 설정 에셋을 생성하려면 다음 단계를 따르십시오.

  1. 프로젝트 뷰에서 추가(+) 버튼을 클릭하거나, 컨텍스트 메뉴를 열고 Create로 이동합니다.
  2. Lighting Settings를 클릭합니다. Unity는 프로젝트 뷰에 새로운 조명 설정 에셋을 생성합니다.

라이팅 창에서 조명 설정 에셋을 생성하고 자동으로 할당하려면 다음 단계를 따르십시오.

  1. 라이팅 창(메뉴: Window > Rendering > Lighting)을 엽니다.
  2. Scene 탭을 엽니다.
  3. New Lighting Asset을 클릭합니다. Unity가 프로젝트 뷰에 새로운 조명 설정 에셋을 생성한 후 활성 씬에 즉시 할당합니다.

스크립트에서 조명 설정 에셋을 생성할 수도 있습니다. 이렇게 하려면 LightingSettings 클래스의 인스턴스를 생성한 후 디스크에 저장하거나, 씬에 할당한 후 해당 씬을 저장하십시오. 자세한 내용과 코드 예제는 LightingSettings API 문서를 참조하십시오.

조명 설정 에셋을 씬에 할당

Unity 에디터에서 조명 설정 에셋을 씬에 할당하려면 다음 단계를 따르십시오.

  1. 조명 설정 에셋을 할당하려는 씬을 엽니다.
  2. 씬이 두 개 이상 열려 있는 경우 조명 설정 에셋을 할당하려는 씬이 활성 씬인지 확인합니다.
  3. 라이팅 창(메뉴: Window > Rendering > Lighting)을 엽니다.
  4. Scene 탭을 엽니다.
  5. 조명 설정 에셋을 Lighting Settings 필드로 드래그하거나, Lighting Settings 필드 오른쪽에 있는 아이콘을 클릭한 후 리스트에서 조명 설정 에셋을 선택합니다.

스크립트에서 조명 설정 에셋을 활성 씬에 할당할 수도 있습니다. 이렇게 하려면 조명 설정 에셋을 로드한 후 LightingSettings 클래스의 인스턴스를 가져온 후 Lightmapping.lightingSettings API를 사용하여 해당 LightingSettings 인스턴스를 활성 씬에 할당하십시오. 자세한 내용과 코드 예제는 LightingSettings API 문서를 참조하십시오.

조명 설정 에셋의 프로퍼티 확인 및 편집

Unity 에디터의 다음 두 위치에서 조명 설정 에셋의 프로퍼티를 확인하고 편집할 수 있습니다.

  • 프로젝트 뷰에서 조명 설정 에셋을 선택하면 인스펙터에서 해당 프로퍼티를 확인하고 편집할 수 있습니다.
  • 활성 씬에 조명 설정 에셋이 할당된 경우 라이팅 창의 Scene 탭에서 해당 조명 설정 에셋의 프로퍼티를 확인하고 편집할 수 있습니다.

스크립트에서 조명 설정 에셋의 프로퍼티를 읽거나 조명 설정 에셋의 프로퍼티에 쓸 수 있습니다. 이렇게 하려면 조명 설정 에셋을 로드하고, LightingSettings 클래스의 인스턴스를 가져온 후 해당 프로퍼티에 액세스하십시오. 자세한 내용과 코드 예제는 LightingSettings API 문서를 참조하십시오.

기본 LightingSettings 데이터

씬에 조명 설정 에셋이 할당되지 않은 경우 Unity는 해당 씬에 기본 LightingSettings 오브젝트를 사용합니다. 기본 LightingSettings 오브젝트는 LightingSettings 클래스의 읽기 전용 내부 인스턴스입니다.

기본 ’LightingSettings’를 사용하는 씬의 ‘LightingSettings’ 데이터는 변경할 수 없지만, Unity는 해당 설정을 사용하여 베이크를 수행할 수 있습니다.

씬의 LightingSettings 데이터를 변경하려면 Unity 에디터를 사용하여 조명 설정 에셋을 생성 및 할당하거나, 스크립트를 사용하여 LightingSettings 오브젝트를 생성, 설정 및 할당해야 합니다. 자세한 내용과 코드 예제는 LightingSettings API 문서를 참조하십시오.

Unity는 자동으로 앰비언트 프로브기본 반사 프로브를 생성하여 환경 조명이 기본적으로 씬과 그 안의 게임 오브젝트에 영향을 미치도록 합니다. 이 기능에 대한 자세한 내용은 SkyManager를 참조하십시오.

프로퍼티

인스펙터 또는 라이팅 창에서 조명 설정 에셋을 확인하는 경우 확인하거나 편집할 수 있는 프로퍼티는 다음 섹션으로 이루어져 있습니다.

Realtime Lighting

이 섹션에는 인라이튼 실시간 전역 조명 시스템과 관련된 설정이 포함되어 있습니다.

프로퍼티 기능
Realtime Global Illumination 이 프로퍼티를 활성화하여 이 조명 설정 에셋을 사용하는 씬에서 인라이튼 실시간 전역 조명 시스템을 사용합니다.
Realtime Environment Lighting 인라이튼 실시간 전역 조명 시스템을 사용하여 주변광을 실시간으로 계산하고 업데이트하려면 이 프로퍼티를 활성화합니다.

이 프로퍼티는 씬에서 인라이튼 실시간 전역 조명베이크된 전역 조명이 모두 활성화된 경우에만 사용할 수 있습니다.
Indirect Resolution 실시간 라이트맵에 사용할 단위당 텍셀 수를 지정합니다.이 값을 높이면 라이트맵 품질이 향상되지만 렌더링 시간도 늘어납니다.

이 프로퍼티는 Realtime Global Illumination을 활성화한 경우에만 사용할 수 있습니다.

Mixed Lighting

이 섹션에는 조명 설정 에셋을 사용하는 씬 내 베이크된 광원혼합 광원의 동작에 영향을 주는 설정이 나와 있습니다.

프로퍼티: 기능:
Baked Global Illumination 이 설정을 활성화하면 Unity는 이 조명 설정 에셋을 사용하는 씬에 대해 베이크된 전역 조명 시스템을 활성화합니다. 이 설정을 비활성화하면 Unity는 이 조명 설정 에셋을 사용하는 씬에 대해 베이크된 전역 조명 시스템을 비활성화합니다.

베이크된 전역 조명 시스템을 활성화하면 Unity는 라이트매핑의 경우에만 씬에서 베이크된 광원을 사용하고, 혼합 광원은 Lighting Mode 설정에 따라 동작합니다. 베이크된 전역 조명 시스템을 비활성화하면 Unity는 씬의 모든 베이크된 광원과 혼합 광원이 실시간 광원처럼 동작하도록 강제로 지정합니다.
Lighting Mode Unity가 이 조명 설정 에셋을 사용하는 씬 내 모든 혼합 광원에 사용할 조명 모드를 지정합니다.

조명 모드를 변경하면 이 조명 설정 에셋을 사용하는 씬의 조명 데이터를 다시 베이크해야 합니다.
Baked Indirect 이 광원 설정 에셋을 사용하는 씬의 모든 혼합 조명에 대해 베이크된 간접 조명 모드를 사용합니다.

베이크된 간접 조명 모드에서 혼합 조명은 실시간 직접 조명을 제공하고 Unity는 간접 조명을 라이트맵과 라이트 프로브에 베이크합니다.실시간 섀도우 맵은 섀도우를 제공합니다.
Shadowmask 이 광원 세팅 에셋을 사용하는 씬의 모든 혼합 조명에 대해 Shadowmask Lighting Mode를 사용합니다.

섀도우 마스크 라이팅 모드에서 혼합 조명은 실시간 직접 조명을 제공하는 동시에 간접 조명은 라이트맵과 프로브에 베이크됩니다.이 모드는 실시간 그림자와 베이크된 그림자를 결합합니다.
Subtractive 이 광원 설정 에셋을 사용하는 씬의 모든 혼합 조명에 대해 서브트랙티브 조명 모드를 사용합니다.

서브트랙티브 조명 모드에서 혼합 조명은 정적 오브젝트에 베이크된 직접 조명과 간접 조명을 제공합니다.동역학 오브젝트는 방향 광원을 사용하여 실시간으로 직접 조명을 받고 그림자를 캐스트합니다.

Lightmapping Settings

프로퍼티 기능
Lightmap Resolution 라이트맵에 사용할 단위당 텍셀 수를 지정합니다. 이 값을 높게 설정하면 라이트맵 품질이 개선되지만 베이크 시간도 늘어납니다. 이 값을 두 배로 늘리면 라이트맵의 높이와 너비가 모두 2배가 되기 때문에 텍셀 수는 4배로 증가합니다. 조명 창의 통계 영역에서 Occupied texels 수를 확인할 수 있습니다.
Lightmap Padding 베이크된 라이트맵의 개별 셰이프 간 간격을 텍셀 단위로 결정합니다. 기본값은 2입니다.
Max Lightmap Size 개별로 포함된 게임 오브젝트 영역을 통합하는 전체 라이트맵 텍스처의 크기(픽셀 단위)를 지정합니다. 기본값은 1024입니다.
Lightmap compression 에디터가 라이트맵에 사용하는 압축 수준입니다.
- None: 라이트맵을 압축하지 않습니다.
- Low Quality: 보통 품질보다 메모리와 저장 공간을 덜 사용하지만 시각적 결함이 발생할 수도 있습니다.
- Normal Quality: 메모리 사용량과 화질 사이의 균형을 유지합니다.
- High Quality: 보통 품질보다 더 많은 메모리와 저장 공간이 필요하지만 더 나은 시각적 결과를 제공합니다.
Ambient Occlusion 베이크된 앰비언트 오클루전에서 상대 표면 밝기를 제어할 수 있습니다. 이것은 조명을 베이크하는데 사용하는 라이트매퍼에 의해 계산된 간접 조명에만 적용됩니다. 기본적으로 활성화되어 있습니다. 앰비언트 오클루전이 활성화되면 최대 거리, 간접 조정, 직접 조정의 세 가지 설정이 노출됩니다. 세 가지 설정 모두 값이 높을수록 오클루전된 영역과 조명을 완전히 받은 영역 간의 콘트라스트가 더욱 증가합니다.
Max Distance 오브젝트에 오클루전을 적용할지 결정하기 위해 조명 시스템에서 광선을 투사하는 거리를 지정합니다. 값이 높을수록 더 긴 광선이 생성되고 라이트맵에 그림자가 더 많이 추가되는 한편, 값이 낮을수록 오브젝트가 서로 매우 가까이에 있는 경우에만 그림자를 추가하는 더 짧은 광선이 생성됩니다. 값을 0으로 설정하면 최대 거리가 없는 무한하게 긴 광선이 투사됩니다. 기본값은 1입니다.
Indirect Contribution 최종 라이트맵의 오브젝트에서 바운스되고 방출되는 간접 주변광의 밝기를 스케일합니다. 0과 10 사이의 값으로 기본값은 1입니다. 값이 1보다 작으면 강도가 감소하고 값이 1보다 크면 증가합니다.
Direct Contribution 직접광의 밝기를 스케일합니다. 0과 10사이의 값으로 기본값은 0입니다. 값이 높을수록 에디터가 직접 조명에 적용하는 콘트라스트가 증가합니다.
Directional Mode 오브젝트 표면의 각 포인트에서 가장 우세하게 비추는 광원의 특성에 관한 정보를 저장할 수 있는 라이트맵을 활성화합니다. 자세한 내용은 방향성 라이트매핑을 참조하십시오. 기본 모드는 Directional입니다.
Directional Directional 모드에서 Unity는 광원에서 비추는 우세한 방향을 저장하는 두 번째 라이트맵을 생성합니다. 이를 통해 디퓨즈 노멀 매핑된 머티리얼을 전역 조명 시스템과 연동할 수 있습니다. 셰이더는 렌더링하는 동안 두 개의 라이트맵 텍스처를 샘플링합니다. 결과적으로 방향성 모드는 추가 라이트맵 데이터를 위해 비방향성 모드보다 약 2배의 비디오 메모리를 필요로 합니다. 추가 방향성 텍스처를 생성하면 베이킹 성능에 영향을 줍니다. 방향 라이트맵은 SM2.0 하드웨어에서 또는 GLES2.0을 사용할 때 디코드할 수 없습니다.
Non-directional Non-directional 모드 라이트맵에는하나의 텍스처만 포함됩니다. 결과적으로 방향 라이트맵보다 비디오 메모리와 저장 공간이 적게 필요하며 셰이더에서 더 빠르게 디코드할 수 있습니다. 이러한 최적화는 화질을 저하합니다.
Indirect Intensity 실시간 및 베이크된 라이트맵에 저장되는 간접광의 밝기를 결정합니다. 0과 5 사이의 값입니다. 값을 1보다 크게 설정하면 간접광의 강도가 증가하고, 값을 1보다 작게 설정하면 간접광의 강도가 감소합니다. 기본값은 1입니다.
Albedo Boost Unity가 표면 사이에서 바운스하는 광원의 양을 지정합니다. 이 값은 1에서 10 사이입니다. 이 값을 높게 설정할수록 간접광 계산을 위해 알베도 값을 흰색으로 끌어옵니다. 기본값은 1이며 물리적으로 정확합니다.
Lightmap Parameters 라이트맵 파라미터 에셋은 베이크된 전역 조명과 관련된 설정 값을 저장합니다. 에디터는 선택할 수 있는 몇 가지 기본 라이트맵 파라미터 에셋을 제공하지만 Create New 옵션을 사용하여 자체 라이트맵 파라미터 파일을 만들 수도 있습니다. 자세한 내용은 라이트맵 파라미터를 참조하십시오. 기본값은 Default-Medium입니다. 옵션은 Default-Medium, Default-HighResolution, Default-LowResolution 및 Default-VeryLowResolution입니다.

이에 관한 추가적인 설정은 프로그레시브 라이트매퍼를 참조하십시오.

자동 생성

인스펙터에서 조명 설정 에셋을 확인하는 경우 이 프로퍼티는 인스펙터 상단에 표시됩니다. 라이팅 창에서 조명 설정 에셋을 확인하는 경우 이 프로퍼티는 라이팅 창 하단의 Generate Lighting 버튼 옆에 표시됩니다.

프로퍼티 기능:
Auto Generate Auto Generate가 활성화된 경우 Unity는 씬을 변경할 때 조명 데이터를 자동으로 미리 계산합니다.

이 데이터에는 베이크된 전역 조명 시스템용 라이트맵, 인라이튼 실시간 전역 조명 시스템용 데이터, 광원 프로브 및 반사 프로브가 포함됩니다.

Unity는 일반적으로 씬을 변경한 후 몇 초 후에 베이크를 시작합니다.Auto Generate가 비활성화된 경우 Lighting 창의 Generate Lighting 버튼이나 Lightmapping.Bake 또는 Lightmapping.BakeAsync API를 사용하여 베이킹을 수동으로 호출해야 합니다.

Auto Generate를 사용하여 조명 데이터를 미리 계산할 때 미리 계산된 조명 데이터는 프로젝트의 에셋으로 저장되지 않습니다.대신 메모리에 저장되고 씬의 일부로 직렬화됩니다.참고:Unity 에디터 버전 2022.2부터 Entities 패키지가 설치되어 있을 경우 Auto Generate 모드는 사용할 수 없습니다.Entities 패키지를 설치한 프로젝트에서 조명을 생성할 때 Unity 에디터가 로드된 모든 서브씬을 열면 에디터 성능이 느려질 수 있기 때문입니다.
  • 2020.1에서 조명 설정 에셋 추가됨 NewIn20201

LightingSettings

라이팅 창
조명 모드