이 페이지에서

Lightmapper QML Type

씬에 대한 라이트맵 베이킹 설정을 지정합니다. 더 보기...

Import Statement: import QtQuick3D
Since: Qt 6.4
Inherits:

QtObject

속성

상세 설명

직접 및 간접 조명을 베이킹할 때 사용됩니다. 이미 생성된 라이트맵을 사용하여 씬을 렌더링하는 경우와 같이, 다른 상황에서는 이러한 설정 대부분이 적용되지 않습니다. 단, ` source`은 예외이지만, 개발 시에는 적절한 기본값이 설정되어 있습니다.

베이킹이 성공적으로 완료되면 ` source`에 지정된 값에 따라 단일 파일이 생성됩니다. 이 바이너리 파일에는 모델별 라이트맵과 라이트맵 호환 UV가 포함된 메쉬 파일을 포함한 베이킹 결과가 담겨 있습니다. 개별 모델 데이터는 ` BakedLightmap::key`을 통해 액세스할 수 있습니다.

생성된 라이트맵 파일에 포함된 데이터는 서로 밀접하게 연동되어 있으며, 현재 씬 상태와도 밀접하게 연결되어 있습니다. 즉, 원본 메쉬 파일이나 Lightmapper 설정을 수정하거나 씬에 다른 변경 사항이 발생하면, 업데이트된 결과를 확인하기 위해 새로운 베이킹을 다시 실행해야 합니다.

참고: Qt 6.4기준 , 라이트맵 베이킹 기능은 초기 기술 미리보기 단계에 있습니다. 향후 릴리스에서 기능, 품질 및 API에 변경 사항이 발생할 가능성이 있습니다.

Lightmapper 객체는 다음 요소들과 연동하여 작동합니다:

'라이트맵 및 전역 조명(Lightmaps and Global Illumination)', 'Qt Quick 3D - 베이킹된 라이트맵 예제', 그리고 'Qt Quick 3D - SSGI 라이트맵 예제'도 참조하십시오 .

속성 설명서

adaptiveBiasEnabled : bool

표면 법선을 기반으로 추가적인 동적 바이어스를 적용할 수 있게 합니다.

기본값은 true입니다.

bias : real

베이킹 시 사용되는 레이캐스팅 바이어스입니다. 아티팩트가 발생하는 경우, 예를 들어 원치 않는 그림자 패턴을 줄이기 위해 이 값을 조정하십시오. 대부분의 경우 기본값으로 충분합니다.

기본값은 0.005입니다.

bounces : int

샘플당 간접광 반사 횟수의 최대값입니다. 이 값은 최소한 1이어야 하며, 그렇지 않으면 간접광 계산이 무의미합니다.

기본값은 3입니다.

이 값은 라이트맵 베이킹 과정에서 생성되는 라이트맵의 성능과 품질 모두에 큰 영향을 미칩니다.

denoiseSigma : real [default: 8, since 6.10]

이 속성은 비국소 평균 기반 노이즈 제거기의 시그마 값을 정의합니다. 즉, 이 값이 높을수록 블러 효과가 더 강해집니다. 노이즈를 제거하면서도 시각적 특징이 손실되지 않도록 이 값을 가능한 한 낮게 유지하십시오.

이 속성은 Qt 6.10에서 도입되었습니다.

indirectLightEnabled : bool

일반적으로 이 값을 변경할 필요는 없습니다. 기본값은 true입니다. 이 속성을 false로 설정하면 라이트맵 베이킹 과정에서 간접광 계산이 비활성화됩니다. 따라서 생성된 텍스처 맵에는 직접광 정보만 포함됩니다. 실행 시 엔진은 해당 맵에 직접광과 간접광 정보가 모두 포함되어 있다고 가정하고, 평소와 같이 맵을 계속 사용합니다.

indirectLightFactor : real

간접광 양에 적용되는 배율입니다. 1이라는 값(즉, 간접광 양 계산에 영향을 주지 않는 값)이 엄밀히 말해 가장 정확한 렌더링 결과를 제공하지만, 라이트맵을 사용할 때는 반사 횟수가 적더라도 이 값을 약간 높게 설정하면 더 보기 좋은 결과를 얻을 수 있는 경우가 많습니다.

기본값은 1입니다.

indirectLightWorkgroupSize : int

표본 작업 그룹의 크기. 이 작업 그룹들은 병렬로 실행되도록 시도됩니다. (정확한 동작은 CPU 코어 수와 QThreadPool 구성에 따라 달라집니다.)

기본값은 32입니다. 기본 샘플 개수가 256개인 경우, 이는 모델당 8개의 그룹을 병렬로 실행하려고 시도함을 의미합니다.

opacityThreshold : real

레이 트레이싱을 통해 조명을 계산할 때, 레이-메시 교차 분석에서 객체가 무시되는 불투명도(알파) 임계값입니다. 불투명도가 이 임계값 아래로 떨어지면 모델(서브메시)은 빛을 가리지 않으므로 그림자도 생성하지 않습니다.

기본값은 0.5입니다.

참고: 라이트매퍼는 ‘ material's opacity ’ 및 ‘ baseColor alpha ’ 값과 ‘ base color map's alpha ’ 값을 종합적으로 고려합니다. 불투명도 맵이나 알파 컷오프 설정과 같은 기타 반투명도 원인은 라이트맵 베이킹 과정에서 무시됩니다.

samples : int

라이트맵 텍셀당 샘플 수.

기본값은 256입니다.

이 값은 라이트맵 베이킹 과정에서 생성되는 라이트맵의 성능과 품질 모두에 큰 영향을 미칩니다.

source : url [default: file:lightmaps.bin, since 6.10]

실행 시 라이트맵 파일을 불러오는 URL과 베이킹이 성공했을 때의 출력 파일 경로입니다.

베이크 시 출력 경로는 URL에서 자동으로 추론되며, 쓰기 권한이 있는 일반 파일 위치로 해결되어야 합니다. 기본값은 file:lightmaps.bin 이며, 이는 파일이 현재 작업 디렉터리에 저장되고 베이크가 성공하면 최종 결과가 즉시 표시됨을 의미합니다.

출력 파일과 동일한 디렉터리에 .raw 파일이 생성되며, 여기에는 최종 라이트맵 파일을 생성하기 전에 사용되는 추가 라이트맵 데이터가 포함됩니다. 이를 통해 .raw 파일이 존재하는 경우, 실행 사이에 전체 씬을 베이킹할 필요 없이 노이즈 제거만 수행할 수 있습니다.

라이트맵을 QRC 리소스로 읽으려면 일반적인 방법으로 임베드하고 URL에 :/ 또는 qrc:/ 접두사를 추가해야 합니다. 다음 예제는 항상 리소스를 통해 임베드된 라이트맵 파일을 로드하려고 시도합니다. 먼저 값을 쓰기 가능한 위치로 설정하고 베이킹을 수행합니다. 그런 다음 생성된 파일을 소스 디렉터리로 복사합니다. 그런 다음 애플리케이션의 CMake 프로젝트에서 해당 파일을 ` /lightmaps ` 접두사 아래의 리소스로 등록하면, 빌드 프로세스가 해당 파일을 인식하여 실행 파일에 포함시킵니다.

Lightmapper {
    source: "qrc:/lightmaps/lightmaps.bin"
    // will attempt to load from :/lightmaps/lightmaps.bin at runtime
    // and write a file to lightmaps/lightmaps.bin when baking.
}

이 속성은 Qt 6.10에서 도입되었습니다.

texelsPerUnit : real [default: 1, since 6.10]

이 속성은 텍셀 스케일을 정의합니다. 즉, texelsPerUnit이 32 인 1x1 크기의 쿼드는 라이트맵에서 대략 32x32 텍셀을 차지하게 됩니다.

이 속성은 Qt 6.10에서 도입되었습니다.

Model::texelsPerUnit도 참조하십시오 .

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.