Unity 조명 설정 에셋 및 활용법
이 문서는 Unity에서 조명 설정 에셋을 만들고 관리하는 방법에 대한 가이드를 제공합니다. 조명 설정 에셋은 씬에서의 조명 데이터와 관련된 모든 사항을 저장하며, 이를 통해 비주얼 품질을 향상시킬 수 있습니다.
조명 설정 에셋 이해하기
조명 설정 에셋은 LightingSettings
클래스의 인스턴스를 저장합니다. 이렇게 저장된 데이터는 베이크된 전역 조명 또는 인라이튼 실시간 전역 조명 시스템에 필요한 정보를 포함합니다. 여러 씬에서 동일한 설정 에셋을 공유할 수 있어 효율적인 관리가 가능합니다.
조명 설정 에셋 생성
Unity에서 조명 설정 에셋을 생성하는 방법은 두 가지가 있습니다:
- 프로젝트 뷰를 통한 생성
- 프로젝트 뷰에서 추가(+) 버튼을 클릭하거나, 컨텍스트 메뉴에서 Create를 선택합니다.
Lighting Settings
를 클릭합니다.- 라이팅 창을 통한 생성
- 라이팅 창(메뉴: Window > Rendering > Lighting)을 엽니다.
- Scene 탭에서
New Lighting Asset
을 클릭합니다.
또한, 스크립트를 통해 조명 설정 에셋을 생성할 수도 있습니다.
조명 설정 에셋 할당하기
조명 설정 에셋을 씬에 할당하는 방법은 다음과 같습니다:
- 조명 설정을 할당할 씬을 엽니다.
- 라이팅 창에서 Scene 탭을 엽니다.
- 조명 설정 에셋을
Lighting Settings
필드로 드래그합니다.
이 방법 외에도 스크립트를 사용하여 조명 설정 에셋을 활성 씬에 할당할 수 있습니다.
조명 설정 에셋 프로퍼티 편집하기
Unity 에디터의 두 가지 위치에서 조명 설정 에셋의 프로퍼티를 확인하고 편집할 수 있습니다:
- 프로젝트 뷰에서 선택 후 인스펙터에서 확인
- 활성 씬의 라이팅 창 Scene 탭에서 확인
조명 설정 에셋의 프로퍼티는 스크립트를 통해서도 읽거나 쓸 수 있습니다.
조명 설정 에셋의 주요 프로퍼티
프로퍼티 | 설명 |
---|---|
Realtime Global Illumination | 인라이튼 실시간 전역 조명 시스템 사용 여부를 설정합니다. |
Realtime Environment Lighting | 주변광을 실시간으로 계산 및 업데이트할지를 설정합니다. |
Indirect Resolution | 실시간 라이트맵에 사용할 단위당 텍셀 수를 지정합니다. |
Baked Global Illumination | 베이크된 전역 조명 시스템을 사용할지를 설정합니다. |
Lighting Mode | 혼합 광원에 대한 조명 모드를 지정합니다. |
Lightmap Resolution | 라이트맵에 사용할 단위당 텍셀 수를 지정합니다. |
Max Lightmap Size | 전체 라이트맵 텍스처의 크기를 지정합니다. |
Ambient Occlusion | 베이크된 앰비언트 오클루전에서 표면 밝기를 제어합니다. |
Auto Generate | 씬을 변경할 때 조명 데이터를 자동으로 미리 계산하도록 설정합니다. |
다양한 활용 및 응용 예제
1. 실시간 환경 조명 설정
LightingSettings lightingSettings = new LightingSettings();
lightingSettings.realtimeGlobalIllumination = true;
lightingSettings.realtimeEnvironmentLighting = true;
2. 조명 모드 변경 및 베이크
Lightmapping.lightingSettings.bakedGI = true; // 베이크된 조명 사용
Lightmapping.lightingSettings.lightingMode = LightingMode.BakedIndirect;
3. 자동으로 조명 데이터 생성하기
LightingSettings lightingSettings = Lightmapping.lightingSettings;
lightingSettings.autoGenerate = true; // 씬 변경 시 자동 생성
이러한 설정을 통해 씬의 조명 품질을 높이고 퍼포먼스를 최적화할 수 있습니다. Unity의 조명 설정 에셋을 잘 활용하여 원하는 비주얼과 성능을 달성해 보세요.