프로그레시브 CPU 라이트매퍼(프리뷰)
라이트매핑: 시작하기

프로그레시브 CPU 라이트매퍼

프로그레시브 라이트매퍼는 고속 경로 추적 기반 라이트매퍼 시스템으로, Unity 에디터의 프로그레시브 업데이트를 통해 베이크된 라이트맵과 라이트 프로브를 제공합니다. 이 라이트매퍼 시스템은 영역이 작고 각도 오류가 없으며 겹치지 않는 UV와 차트 사이의 충분한 패딩을 필요로 합니다

프로그레시브 라이트매퍼는 짧은 준비 단계를 통해 지오메트리와 인스턴스 업데이트를 처리하고 G버퍼 및 차트 마스크를 생성합니다. 그런 다음 결과물을 즉시 생성한 후 점진적으로 다듬기 때문에 인터랙티브 조명 워크플로를 크게 개선할 수 있습니다. 또한 프로그레시브 라이트매퍼는 베이크하는 동안 예상 시간을 제공하기 때문에 베이크 시간을 더욱 쉽게 예측할 수 있습니다.

또한 프로그레시브 라이트매퍼는 업샘플링 방식을 사용하거나 복사 조도 캐시 또는 기타 전역 데이터 구조를 사용하지 않고 각 개별 텍셀(texel)의 라이트맵 해상도 수준으로 전역 조명(GI)을 베이크할 수 있습니다. 또한 라이트맵 일부를 선택하여 베이크할 수 있으므로 더욱 빠르게 씬을 테스트하고 반복할 수 있습니다.

인터랙티브 워크플로에 대한 자세한 내용은 개발 - 프로그레시브 라이트매퍼(In Development - Progressive Lightmapper)(YouTube) 비디오 가이드를 참조하십시오.

설정

설정을 열려면 Window > Rendering > Lighting Settings 로 이동합니다.

Property: Function:
Lighting Mode Specifies which lighting mode Unity should use for all mixed lights in the Scene. Options are Baked Indirect, Distance Shadowmask, Shadowmask, and Subtractive.
Lightmapper Use this to specify which internal lighting calculation software to use to calculate lightmaps in the Scene. The options are Progressive and Enlighten. The default value is Progressive. If you want to use the Enlighten system, see documentation on Enlighten.
Prioritize View Enable this to make the Progressive Lightmapper apply changes to the texels that are currently visible in the Scene View, then apply changes to the out-of-view texels.
Direct Samples The number of samples (paths) shot from each texel. This setting controls the number of samples Progressive Lightmapper uses for direct lighting calculations. Increasing this value can improve the quality of lightmaps, but increases the baking time.
Indirect Samples The number of samples (paths) shot from each texel. This setting controls the number of samples Progressive Lightmapper uses for indirect lighting calculations. For some Scenes, especially outdoor Scenes, 100 samples should be enough. For indoor Scenes with emissive geometry, increase the value until you see the result you want.
Bounces Use this value to specify the number of indirect bounces to do when tracing paths. For most Scenes, two bounces is enough. For some indoor Scenes, more bounces might be necessary.
Filtering Configure the post-processing of lightmaps to limit noise. You can set it to None, Auto or Advanced. The Advanced option offers three additional parameters for manual configuration. In Auto mode, the default values from the Advanced mode are used. For every parameter, Gaussian or A-Trous filter can be used separately.
Auto Uses default values for post-processing lightmaps.
Advanced Offers three additional parameters for manual configuration. You can use the Gaussian or A-Trous filters separately for direct and indirect settings. Note that the Gaussian filter values define the radius, while the A-Trous filter value defines the “sigma”. Sigma is a parameter that determines the threshold at which the filter acts on differences in the image.
Direct Filter Select a filter to use for direct light in the lightmap.
Gaussian Select this to use a Gaussian filter for direct light in the lightmap.
Direct Radius The radius of the Gaussian filter in texels for direct light in the lightmap. A higher radius increases the blur strength.
A-Trous Select this to use an A-Trous filter for direct light in the lightmap.
Direct Sigma The sigma of the A-Trous filter in texels for direct light in the lightmap. A higher sigma increases the blur strength.
None Select this to use no filter for direct light in the lightmap.
Indirect Filter Select a filter to use for indirect light in the lightmap.
Gaussian Select this to use a Gaussian filter for indirect light in the lightmap.
Indirect Radius The radius of the Gaussian filter in texels for indirect light in the lightmap. A higher radius increases the blur strength.
A-Trous Select this to use an A-Trous filter for indirect light in the lightmap.
Indirect Sigma The sigma of the A-Trous filter in texels for indirect light in the lightmap. A higher sigma increases the blur strength.
Ambient Occlusion Filter Select a filter to use for Ambient Occlusion (see below) in the lightmap. Filter only available when you enable Ambient Occlusion.
Gaussian Select this to use a Gaussian filter for Ambient Occlusion in the lightmap.
Ambient Occlusion Radius The radius of the Gaussian filter in texels for Ambient Occlusion in the lightmap. A higher radius increases the blur strength.
A-Trous Select this to use an A-Trous filter for Ambient Occlusion in the lightmap.
Ambient Occlusion Sigma The sigma of the A-Trous filter in texels for Ambient Occlusion in the lightmap. A higher sigma increases the blur strength.
None Select this to use no filter for indirect light in the lightmap.
Lightmap Resolution Use this to specify the number of texels per unit to use for lightmaps. Increasing this value improves lightmap quality, but also increases bake times. Note that doubling this value causes the number of texels to quadruple (because the value refers to both the height and width of the lightmap). Check the Occupied texels count in the stats, documented below this table.
Lightmap Padding Use this to specify the separation (in texel units) between separate shapes in the baked lightmap. The default value is 2.
Lightmap Size The size (in pixels) of the full lightmap texture, which incorporates separate regions for the individual GameObject textures. The default value is 1024.
Compress Lightmaps A compressed lightmap requires less storage space, but the compression process can introduce unwanted visual effects into the texture. Tick this checkbox to compress lightmaps, or untick it to keep them uncompressed. The checkbox is ticked by default.
Ambient Occlusion Tick this checkbox to open a group of settings which allow you to control the relative brightness of surfaces in ambient occlusion. Higher values indicate a greater contrast between the occluded and fully lit areas. This only applies to the indirect lighting calculated by the GI system. This setting is enabled by default.
Max Distance Set a value to control how far the lighting system casts rays in order to determine whether or not to apply occlusion to an object. A larger value produces longer rays and contributes more shadows to the lightmap, while a smaller value produces shorter rays that contribute shadows only when objects are very close to one another. A value of 0 casts an infinitely long ray that has no maximum distance. The default value is 1.
Indirect Contribution Use the slider to scale the brightness of indirect light as seen in the final lightmap (that is, ambient light, or light bounced and emitted from objects) from a value between 0 and 10. The default value is 1. Values less than 1 reduce the intensity, while values greater than 1 increase it.
Direct Contribution Use the slider to scale the brightness of direct light from a value between 0 and 10. The default value is 0. The higher this value is, the greater the contrast applied to the direct lighting.
Directional Mode You can set the lightmap up to store information about the dominant incoming light at each point on the objects’ surfaces. See documentation on Directional Lightmapping for further details. The default mode is Directional.
Directional In Directional mode, Unity generates a second lightmap to store the dominant direction of incoming light. This allows diffuse normal mapped materials to work with the GI. Directional mode requires about twice as much storage space for the additional lightmap data. Directional lightmaps cannot be decoded on SM2.0 hardware or when using GLES2.0. They fall back to Non-Directional lightmaps.
Non-directional Non-directional mode switches Directional option off.
Indirect Intensity Use this slider to control the brightness of indirect light stored in realtime and baked lightmaps, from a value between 0 and 5. A value above 1 increases the intensity of indirect light while a value of less that 1 reduces indirect light intensity. The default value is 1.
Albedo Boost Use this slider to control the amount of light Unity bounces between surfaces, from a value between 1 and 10. To do this, Unity intensifies the albedo of materials in the Scene. Increasing this draws the albedo value towards white for indirect light computation. The default value of 1 is physically accurate.
Lightmap Parameters Unity uses a set of general parameters for the lightmapping in addition to properties of the Lighting window. A few defaults are available from the menu for this property but you can also create your own lightmap parameter file using the Create New option. See the Lightmap Parameters page for further details. The default value is Default-Medium.

통계

Auto GenerateGenerate Lighting 옵션 밑에 있는 패널에는 다음과 같은 라이트매핑 통계가 표시됩니다.

  • Unity가 생성한 라이트맵 개수

  • Memory Usage: 현재 라이트매핑에 필요한 메모리 양입니다.

  • Occupied Texels: 라이트맵 UV 공간에서 사용된 텍셀 수입니다.

  • Lightmaps in view: 씬 뷰에 있는 라이트맵 개수입니다.

  • Lightmaps not in view: 씬 뷰 밖에 있는 라이트맵 개수입니다.

    • Converged: 이 라이트맵에 대한 계산은 완료된 상태입니다.

    • Not Converged: 이 라이트맵에 대한 베이킹이 아직 진행 중입니다.

  • Bake Performance: 초당 mrays 수입니다. 이 값이 2보다 낮으면 설정을 조정해야 합니다. 그러지 않으면 하드웨어가 한 번에 더 많은 광선을 처리해야 합니다.

Auto 모드에서 Unity는 라이트맵과 라이트 프로브를 자동으로 계산합니다. Auto 모드를 비활성화한 경우 Build 버튼을 눌러 베이크를 시작해야 합니다.

베이크 진행 중

프로그레시브 라이트매퍼는 베이크가 진행 중일 때 필요에 따라 베이크를 모니터링하거나 중지할 수 있는 옵션을 제공합니다.

ETA

Unity가 라이트맵을 베이크하는 동안 표시되는 진행 표시줄은 “완료 예상 시간”(ETA 로 표시)을 제공합니다. ETA는 현재 베이크가 완료될 예상 시간(단위: 초)입니다. 이를 통해 베이크 시간을 훨씬 쉽게 예측하고, 현재 조명 설정에서 베이크 시간이 얼마나 걸리는지 빠르게 파악할 수 있습니다.

강제 종료

수동 베이크를 진행하는 중 언제든지 Force Stop 를 눌러 베이크 프로세스를 중지할 수 있습니다. 이 기능을 이용하면 원하는 결과가 나올 때 프로세스를 바로 멈출 수 있습니다.


2018.1에서 프로그레시브 라이트매퍼 추가됨 NewIn20181

2018–11–27 일부 편집 리뷰를 거쳐 페이지 수정됨

프로그레시브 CPU 라이트매퍼(프리뷰)
라이트매핑: 시작하기