ExtendedSceneEnvironment QML Type
SceneEnvironment 일반적으로 사용되는 렌더링 효과를 제공합니다. 더 보기...
Import Statement: | import QtQuick3D.Helpers |
Since: | Qt 6.5 |
Inherits: |
속성
- adjustmentBrightness : real
- adjustmentContrast : real
- adjustmentSaturation : real
- colorAdjustmentsEnabled : bool
- depthOfFieldBlurAmount Sets the : real
- depthOfFieldEnabled : bool
- depthOfFieldFocusDistance : real
- depthOfFieldFocusRange : real
- ditheringEnabled : bool
- exposure : real
- fxaaEnabled : bool
- glowBlendMode : int
- glowBloom : real
- glowEnabled : bool
- glowHDRMaximumValue : real
- glowHDRMinimumValue : real
- glowHDRScale : real
- glowIntensity : real
- glowLevel : int
- glowQualityHigh : bool
- glowStrength : real
- glowUseBicubicUpscale : bool
- lensFlareApplyDirtTexture : bool
- lensFlareApplyStarburstTexture : bool
- lensFlareBloomBias : real
- lensFlareBloomScale : real
- lensFlareBlurAmount : real
- lensFlareCameraDirection : vector3d
- lensFlareDistortion : real
- lensFlareEnabled : bool
- lensFlareGhostCount : int
- lensFlareGhostDispersal : real
- lensFlareHaloWidth : real
- lensFlareLensColorTexture : Texture
- lensFlareLensDirtTexture : Texture
- lensFlareLensStarburstTexture : Texture
- lensFlareStretchToAspect : real
- lutEnabled : bool
- lutFilterAlpha : real
- lutSize : real
- lutTexture : Texture
- sharpnessAmount : real
- tonemapMode : enumeration
- vignetteColor : color
- vignetteEnabled : bool
- vignetteRadius : real
- vignetteStrength : real
- whitePoint : real
상세 설명
ExtendedSceneEnvironment
는 QtQuick3D 의 SceneEnvironment 유형을 확장한 것으로, 일반적으로 사용되는 효과 모음이 기본으로 제공됩니다. 효과는 제어하는 효과의 이름 앞에 접두사가 붙은 속성 집합을 통해 노출됩니다.
이러한 효과 중 하나 이상을 활성화하면 SceneEnvironment 의 effects 목록에 포스트 프로세싱 효과를 수동으로 추가하는 것과 비슷한 결과가 나타납니다. 그러나 확장된 씬 환경은 독립형으로는 사용할 수 없는 효과를 제공하며, 더 중요한 것은 활성화된 효과를 효율적으로 결합하여 필요한 추가 렌더 패스 수를 줄여 씬에 개별 포스트 프로세싱 효과를 적용하는 것보다 훨씬 더 나은 성능을 제공할 수 있다는 점입니다. 확장된 장면 환경은 톤 매핑과도 잘 작동하며, 더 복잡한 다중 패스 효과와 여러 효과를 활성화하고 함께 결합할 때도 마찬가지입니다. 독립형 효과의 경우 항상 그렇지는 않았습니다.
참고: SceneEnvironment 의 effects 목록에 추가 포스트 프로세싱 효과가 추가되면 해당 효과는 ExtendedSceneEnvironment 유형에서 제공하는 효과보다 먼저 적용됩니다.
톤 매핑과 같은 SceneEnvironment 의 특정 기능은 익스텐디드 씬 환경의 추가 프로퍼티를 통해 상속 및 확장됩니다. 예를 들어 SceneEnvironment 는 tonemapMode 프로퍼티를 제공하는 반면, ExtendedSceneEnvironment 는 톤매퍼의 노출, 화이트 포인트, 선명도 및 디더링 설정에 대한 제어 기능도 추가합니다. tonemapMode 프로퍼티는 중복되지 않지만 ExtendedSceneEnvironment는 SceneEnvironment 에서 모든 것을 상속하므로 톤 매핑 모드의 기본 설정은 View3D 과 연결된 환경 유형에 관계없이 사용할 수 있지만 추가 프로퍼티는 ExtendedSceneEnvironment를 사용할 때만 사용할 수 있습니다. 화면 공간 앰비언트 오클루전(SSAO) 또는 포그와 같은 다른 효과는 SceneEnvironment 에 완전히 포함되며 두 가지 유형의 환경 모두에서 사용할 수 있습니다.
확장 씬 환경 시작하기
확장된 씬 환경이 제공하는 추가 기능을 사용하려면 View3D 인스턴스와 연결하세요. QtQuick3D.Helpers
모듈을 임포트하는 것을 잊지 마세요.
import QtQuick3D import QtQuick3D.Helpers View3D { environment: ExtendedSceneEnvironment { tonemapMode: SceneEnvironment.Filmic vignetteEnabled: true // ... } }
참고: 효과 파라미터를 실험하고 원하는 시각적 결과를 얻기 위해 값을 조정하는 작업은 값이 변경될 때 렌더링된 장면에서 즉각적인 피드백을 제공하는 슬라이더와 같은 컨트롤을 사용하여 시각적으로 수행할 때 더 생산적일 수 있습니다. 따라서 시각적으로 매력적으로 보이는 고품질 씬을 설정하려면 Qt Design Studio 과 같은 디자이너 도구 또는 Qt Quick 3D - 씬 효과 예제와 유사한 테스트 베드를 사용하는 것이 좋습니다.
참고: SceneEnvironment's effect list 에 단일 패스가 있는 이펙트가 추가된 것처럼 SceneEnvironment 을 ExtendedSceneEnvironment 로 전환하면 자동으로 최소 하나의 렌더링 패스가 추가됩니다. 이는 개별 포스트 프로세싱 단계의 활성화 수와 관계없이 적용됩니다. (복잡한 이펙트일수록 하나 이상의 추가 렌더링 패스가 필요할 수 있습니다.)
사용 가능한 효과
다음은 SceneEnvironment 에서 상속된 기능을 포함하여 확장된 씬 환경이 제공하는 효과 및 관련 기능에 대한 개요입니다.
- Tonemapping - 색상이 표시되기 전에 고해상도 범위에서 0-1 범위로 톤 매핑되는 방식을 제어합니다. 확장된 장면 환경은 노출, 화이트 포인트, 선명도 및 디더링에 대한 추가 제어 기능을 추가합니다.
tonemapMode, exposure, whitePoint, ditheringEnabled 속성에 의해 제어됩니다.
- Color adjustments - 밝기, 대비, 채도 조정.
colorAdjustmentsEnabled, adjustmentBrightness, adjustmentContrast, adjustmentSaturation 속성에 의해 제어됩니다.
- Color grading 룩업 테이블(LUT) 텍스처를 통해.
lutEnabled, lutSize, lutFilterAlpha 속성에 의해 제어됩니다.
- Depth of field
depthOfFieldEnabled, depthOfFieldFocusDistance, depthOfFieldFocusRange, depthOfFieldBlurAmount 프로퍼티에 의해 제어됩니다.
- Glow and bloom
glowEnabled, glowQualityHigh, glowUseBicubicUpscale, glowStrength, glowIntensity, glowBloom, glowBlendMode, glowHDRMaximumValue, glowHDRMinimumValue, glowHDRScale 속성에 의해 제어됩니다.
- Vignette
속성에 의해 제어됨 vignetteEnabled, vignetteStrength, vignetteColor, vignetteRadius.
- Lens flare
lensFlareEnabled, lensFlareBloomBias, lensFlareGhostDispersal, lensFlareGhostCount, lensFlareHaloWidth, lensFlareStretchToAspect, lensFlareDistortion, lensFlareBlurAmount, lensFlareApplyDirtTexture, lensFlareApplyStarburstTexture, lensFlareCameraDirection, lensFlareLensColorTexture, lensFlareLensDirtTexture, lensFlareLensStarburstTexture 속성에 의해 제어됩니다.
- Screen space ambient occlusion - 제공: SceneEnvironment.
SceneEnvironment::aoEnabled, SceneEnvironment::aoStrength, SceneEnvironment::aoDistance, SceneEnvironment::aoSoftness, SceneEnvironment::aoDither, SceneEnvironment::aoSampleRate, SceneEnvironment::aoBias 에 의해 제어됩니다.
- Fog - 제공: SceneEnvironment. 이는 포스트 프로세싱 유형의 이펙트가 아니라 씬의 렌더링 가능한 오브젝트의 머티리얼에 적용됩니다.
SceneEnvironment::fog 프로퍼티와 연결된 Fog 오브젝트에 의해 제어됩니다.
- Antialiasing - 멀티샘플링, 슈퍼샘플링, 프로그레시브 안티앨리어싱, 스페큘러 안티앨리어싱, 템포럴 안티앨리어싱은 SceneEnvironment 에서 제공합니다. ExtendedSceneEnvironment 은 a form of FXAA 을 사용하는 옵션을 추가합니다.
FXAA는 fxaaEnabled 에서 제어합니다. 다른 앤티앨리어싱 모드는 SceneEnvironment::antialiasingMode, SceneEnvironment::temporalAAEnabled, SceneEnvironment::temporalAAStrength, SceneEnvironment::specularAAEnabled 에서 제어합니다.
SceneEnvironment 및 Qt Quick 3D - 씬 이펙트 예시도참조하십시오 .
프로퍼티 문서
adjustmentBrightness : real |
장면의 밝기를 조정합니다.
밝기 1 | 밝기 4 |
---|---|
adjustmentContrast : real |
장면의 대비를 조정합니다.
대비 1 | 대비 4 |
---|---|
adjustmentSaturation : real |
장면의 채도를 조정합니다.
채도 1 | 채도 4 |
---|---|
colorAdjustmentsEnabled : bool |
색상 조정을 활성화합니다.
색상 조정활성화도 참조하십시오 .
depthOfFieldBlurAmount Sets the : real |
초점 범위를 벗어난 개체에 적용되는 블러의 양입니다. 적절한 값은 0~10 범위입니다. 값이 0이면 추가 블러가 적용되지 않습니다.
흐림 효과 양 0 | 블러 양 15 |
---|---|
depthOfFieldEnabled : bool |
피사계 심도 흐림 효과를 활성화합니다.
depthOfFieldFocusDistance : real |
오브젝트에 초점이 맞춰지는 카메라로부터의 거리를 설정합니다.
여기서 스폰자 씬에는 뷰의 뒤쪽과 앞쪽에 블러를 적용하기에 적합한 큰 범위를 갖기 위해 100
스케일이 적용되었습니다. 아래 그림은 초점 거리 753, 초점 범위 482로 촬영한 것입니다.
depthOfFieldFocusRange : real |
항목에 완전히 초점이 맞춰진 depthOfFieldFocusDistance 주변 거리입니다. 그런 다음 가까운 쪽과 먼 쪽 모두 같은 거리만큼 초점이 흐려져 완전히 흐려집니다.
ditheringEnabled : bool |
디더링을 활성화하여 밴딩 아티팩트를 줄입니다.
exposure : real |
톤 매퍼가 사용하는 노출 수준입니다.
노출 8을 사용한 필름 톤 매핑 | 노출을 0.5로 설정한 필름 톤 매핑 |
---|---|
fxaaEnabled : bool |
빠른 근사 안티앨리어싱(FXAA)을 활성화합니다.
FXAA 비활성화 | FXAA 활성화 |
---|---|
glowBlendMode : int |
글로우 효과를 위한 블렌딩 모드입니다.
사용 가능한 모드는 다음과 같습니다:
- ExtendedSceneEnvironment.GlowBlendMode.Additive
- ExtendedSceneEnvironment.GlowBlendMode.Screen
- ExtendedSceneEnvironment.GlowBlendMode.SoftLight
- ExtendedSceneEnvironment.GlowBlendMode.Replace
Additive
는 하늘이나 태양이 보이는 야외 장면에 권장되는 경우가 많지만, 기본값인 SoftLight
은 실내 환경에 더 적합할 수 있습니다.
Replace
는 블렌딩을 수행하지 않고 글로우/블룸 효과가 실제 콘텐츠와 블렌딩되는 기여도만 표시하는 결과를 가져옵니다. 실제로는 글로우/블룸 효과의 매개 변수를 설정할 때 실험하고 문제를 해결하는 데 유용할 수 있습니다.
블렌드 모드 | 예시 |
---|---|
글로우 비활성화 | |
애디티브 | |
화면 | |
소프트 라이트 | |
대체 |
glowBloom : real |
글로우 효과에 적용되는 블룸의 양을 설정합니다. 0에서 1 사이의 값이 예상됩니다.
glowHDRMinimumValue, glowHDRMaximumValue, glowHDRScale 및 glowBloom 값은 글로우/블룸 효과에 의해 생성되는 luminance feedback
의 양을 함께 제어합니다.
실제로는 원하는 결과를 얻기 위해 glowStrength, glowIntensity, glowBloom 값을 함께 조정하는 경우가 많습니다.
예를 들어 4개의 글로우 레벨을 활성화하고 강도는 1.5, 강도는 1:
글로우 블룸을 0으로 설정 | 글로우 블룸 0.5로 설정 |
---|---|
glowHDRMaximumValue : real |
하이 다이나믹 레인지에서 글로우의 최대 밝기를 설정합니다. 값 범위는 0에서 256까지입니다.
glowHDRMinimumValue, glowHDRMaximumValue, glowHDRScale, glowBloom 값은 글로우/블룸 효과에 의해 생성되는 luminance feedback
의 양을 함께 제어합니다.
glowHDRMinimumValue: real |
글로우의 최소 밝기를 하이 다이나믹 레인지로 설정합니다. 예상 값은 0에서 4 범위입니다.
glowHDRMinimumValue, glowHDRMaximumValue, glowHDRScale, glowBloom 값은 글로우/블룸 효과에 의해 생성되는 luminance feedback
의 양을 함께 제어합니다.
glowHDRScale : real |
HDR 글로우의 블리드 스케일입니다. 예상 값은 0~8 범위입니다.
glowHDRMinimumValue, glowHDRMaximumValue, glowHDRScale 및 glowBloom 값은 글로우/블룸 효과에 의해 생성되는 luminance feedback
의 양을 함께 제어합니다.
glowIntensity : real |
글로우 강도. 예상 값은 0~8 범위입니다.
강도는 사실상 누적된 글로우 색상(모든 레벨 포함)에 대한 스케일 계수(승수)입니다.
실제로는 원하는 결과를 얻기 위해 glowStrength, glowIntensity 및 glowBloom 의 값을 함께 조정하는 경우가 많습니다.
예를 들어 glowStrength 1.0, glowBloom 0.25:
glowIntensity 0.25 | 글로우 강도 1.25 |
---|---|
glowLevel : int |
어떤 블러 패스를 글로우 효과에 적용할지 설정합니다. 총 7가지 레벨을 사용할 수 있습니다.
레벨을 설정하지 않으면 글로우에 시각적 효과가 없습니다.
예를 들어, 글로우 레벨 1과 6을 활성화하려면 두 열거형을 함께 OR하면 됩니다:
glowLevel = (ExtendedSceneEnvironment.GlowLevel.One | ExtendedSceneEnvironment.GlowLevel.Six)
글로우 레벨 값 | 예시 |
---|---|
One | |
1 | 2 | |
1 | 2 | 3 | |
1 | 2 | 3 | 4 |
glowQualityHigh : bool |
다운샘플링 시 글로우에 사용되는 샘플을 증가시켜 글로우 효과의 품질을 향상시킵니다.
참고: 이 옵션을 활성화하면 렌더링 품질과 성능 간에 상충되는 부분이 있습니다. dithering 대신 사용할 수 있는지 고려하세요.
glowStrength : real |
글로우 강도. 허용되는 값은 0에서 2 사이입니다.
강도는 사실상 레벨별로 적용되는 스케일 팩터(배율)입니다. 즉, glowLevel 에서 활성화된 레벨이 많을수록 글로우 강도가 클수록 효과가 더 뚜렷해집니다.
실제로는 원하는 결과를 얻기 위해 글로우 강도, glowIntensity, glowBloom 의 값을 함께 조정하는 경우가 많습니다.
예를 들어 glowIntensity 1.0, glowBloom 0.25로 설정하고 처음 네 단계를 활성화합니다:
글로우 강도 0.5 | 글로우 강도 1.5 |
---|---|
glowUseBicubicUpscale : bool |
에일리어싱 아티팩트와 글로우 효과의 박싱이 줄어듭니다.
참고: 바이 큐빅 업스케일링을 사용하면 성능이 저하될 수 있습니다. dithering 대신 사용할 수 있는지 고려하세요.
lensFlareApplyDirtTexture : bool |
lensFlareApplyStarburstTexture : bool |
lensFlareBloomBias : real |
렌즈 플레어 블룸이 시작되는 레벨을 설정합니다.
바이어스 값은 하이 다이나믹 레인지 색상 값에서 빼고 결과는 0으로 고정됩니다. 즉, 장면에 따라 렌즈 플레어를 명확하게 하기 위해 1보다 낮은 값으로 설정해야 하는 경우가 있습니다(예: 1 미만). 따라서 기본값은 0.95입니다. 반면 색상 범위가 넓을 때는 더 큰 값이 더 적합할 수 있습니다.
바이어스 0.81 | 바이어스 0.31 |
---|---|
lensFlareBloomScale : real |
렌즈 플레어 블룸 효과의 스케일을 설정합니다. 예상되는 스케일 값의 범위는 0에서 20까지입니다.
실제로는 0으로 고정된 색상 값에서 lensFlareBloomBias 을 뺀 값의 승수 역할을 합니다.
스케일 2, 바이어스 0.81 | 스케일 20, 바이어스 0.81 |
---|---|
lensFlareBlurAmount : real |
렌즈 플레어에 적용할 블러 양을 설정합니다. 범위는 0에서 50까지입니다.
흐림 양을 0으로 설정 | 블러 양을 30%로 설정 |
---|---|
lensFlareCameraDirection : vector3d |
장면에서 카메라의 방향을 설정합니다.
lensFlareDistortion : real |
렌즈 플레어에서 색수차의 양을 설정합니다. 예상 값 범위는 0에서 20입니다.
왜곡을 0으로 설정 | 왜곡을 15%로 설정 |
---|---|
lensFlareEnabled : bool |
렌즈 플레어 효과를 활성화합니다.
활성화하면 일반적으로 가장 먼저 조정할 프로퍼티는 lensFlareBloomBias 입니다.
lensFlareGhostCount : int |
렌즈 플레어 고스트의 양을 설정합니다. 예상 값은 0에서 20 사이입니다.
고스트 수 2 | 고스트 카운트 16 |
---|---|
lensFlareGhostDispersal : real |
렌즈 플레어 고스트 사이의 거리를 설정합니다. 예상 값은 0에서 5 사이입니다. 값은 0보다 커야 합니다.
고스트 분산 0.25 | 고스트 분산 0.90 |
---|---|
lensFlareHaloWidth : real |
렌즈 플레어 후광의 크기를 설정합니다. 범위는 0에서 1까지입니다.
lensFlareLensColorTexture : Texture |
렌즈 플레어 렌즈 색상에 사용되는 그라데이션 이미지입니다.
기본적으로 기본 제공 256x256 텍스처가 사용됩니다:
lensFlareLensDirtTexture : Texture |
렌즈의 불완전함을 시뮬레이션하는 데 사용되는 이미지입니다.
lensFlareApplyDirtTexture 이 활성화된 경우에만 효과가 있습니다.
기본적으로 기본 제공 더티 텍스처가 사용됩니다:
lensFlareLensStarburstTexture : Texture |
렌즈 플레어의 별무리 효과를 강화하기 위한 노이즈 이미지입니다. lensFlareApplyStarburstTexture 이 활성화된 경우에만 효과가 있습니다.
기본적으로 기본 제공 노이즈 텍스처가 사용됩니다:
lensFlareStretchToAspect : real |
렌즈 플레어 후광의 둥근 정도에 대한 보정 계수를 설정합니다.
lutEnabled : bool |
룩업 테이블(LUT)을 사용하여 색상 그레이딩을 활성화합니다. 룩업 테이블은 텍스처로 제공됩니다.
lutFilterAlpha : real |
장면과 혼합할 컬러 그레이딩의 양을 설정합니다. 값은 0에서 1 사이가 될 것으로 예상됩니다.
lutSize : real |
LUT 텍스처의 크기를 설정합니다. 텍스처에는 치수가 있어야 합니다:
width = lutSize * lutSize
및 height = lutSize
lutTexture : Texture |
룩업 텍스처의 소스입니다. 텍스처를 설정하지 않으면 기본 제공 아이덴티티 테이블이 사용됩니다.
아래 그림은 기본값 lutSize 의 16과 일치하는 256x16 크기의 텍스처 예시입니다.
이 효과의 결과입니다:
sharpnessAmount : real |
선명도 양을 설정합니다. 유효한 값은 0.0
(꺼짐)에서 1.0
(최대)까지입니다.
선명도를 0으로 설정한 필름 톤 매핑 | 선명도를 1로 설정한 필름 톤 매핑 |
---|---|
tonemapMode : enumeration |
이 속성은 렌더링 전에 색상이 톤 매핑되는 방식을 정의합니다. Qt Quick 3D 의 모든 렌더링은 선형 색상 공간에서 수행되므로 많은 경우 표시할 수 없는 색상 값이 생성될 수 있습니다. 톤맵모드는 색상을 표시 가능한 범위로 다시 매핑하는 데 사용되는 기술을 결정합니다.
기본값은 SceneEnvironment.TonemapModeLinear
Constant | 설명 |
---|---|
SceneEnvironment.TonemapModeNone | 모든 톤 매핑이 무시됩니다. 이 모드는 포스트 프로세싱 효과를 수행할 때 유용합니다. |
SceneEnvironment.TonemapModeLinear | 선형 톤 매핑이 적용됩니다. 색상이 감마 보정되어 sRGB 색 공간으로 반환됩니다. |
SceneEnvironment.TonemapModeAces | 아카데미 컬러 인코딩 시스템 톤 매핑이 적용됩니다. |
SceneEnvironment.TonemapModeHejlDawson | 헤일-도슨 톤 매핑이 적용됩니다. |
SceneEnvironment.TonemapModeFilmic | 필름 톤 매핑이 적용됩니다. |
참고: 포스트 프로세싱 효과를 사용할 때 많은 효과는 톤 매핑되지 않은 선형 색상 데이터를 사용합니다. 이 경우 SceneEnvironment.TonemapModeNone
값을 사용하여 기본 제공 톤 매핑을 우회하는 것이 중요합니다. ExtendedSceneEnvironment 의 기본 제공 효과는 적절한 톤 매핑을 자동으로 처리하므로 적용되지 않습니다.
톤맵 모드 | 예시 |
---|---|
None | |
Linear | |
Aces | |
HejlDawson | |
필름 |
vignetteColor : color |
비네트 효과의 색상을 설정합니다.
예를 들어 반지름 4, 강도 15로 색상을 빨간색으로 변경합니다:
vignetteEnabled : bool |
비네트 효과를 활성화합니다.
vignetteRadius : real |
비네트 효과의 반경을 설정합니다. 범위는 0에서 5까지입니다.
반경 0.35 | 반경 5.0 |
---|---|
vignetteStrength : real |
비네트 효과의 강도를 설정합니다. 범위는 0에서 15까지입니다.
강도 15 | 강도 10 |
---|---|
whitePoint : real |
톤 매핑이 활성화된 경우 흰색에 대한 기준값입니다. 이 값은 0보다 커야 합니다.
참고: SceneEnvironment.TonemapModeLinear 을 사용할 때는 이 값이 무시됩니다.
화이트 포인트가 0.1로 설정된 필름 톤 매핑 | 화이트 포인트를 1로 설정한 필름 톤 매핑 |
---|---|
© 2025 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.