diff options
author | Mahmoud Badri <mahmoud.badri@qt.io> | 2019-04-16 13:42:13 +0300 |
---|---|---|
committer | Mahmoud Badri <mahmoud.badri@qt.io> | 2019-05-02 10:19:23 +0000 |
commit | 3dc7636713c98ce2748d367f8525fcab85a6c425 (patch) | |
tree | 12411317058e10feae817e25c33f0e5e24577298 /src/Runtime/Source/runtimerender/rendererimpl/Qt3DSRendererImplLayerRenderData.cpp | |
parent | 437593e677cd1ed85ef846a3488dc3212fdde54a (diff) |
Support alpha channel initial work
In this initial work, all (almost) color properties are converted into a new type (float4) to
support an alpha channel. Alpha channel option is shown in the color dialog for Layer and Scene
background properties only. The following is remaining:
- Scene background alpha doesn't work in the editor (works in the viewer RT1)
Task-number: QT3DS-3128
Change-Id: Ib5540ebc8e2ff68709473451e4a92bf66ddb8ad2
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Diffstat (limited to 'src/Runtime/Source/runtimerender/rendererimpl/Qt3DSRendererImplLayerRenderData.cpp')
-rw-r--r-- | src/Runtime/Source/runtimerender/rendererimpl/Qt3DSRendererImplLayerRenderData.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/Runtime/Source/runtimerender/rendererimpl/Qt3DSRendererImplLayerRenderData.cpp b/src/Runtime/Source/runtimerender/rendererimpl/Qt3DSRendererImplLayerRenderData.cpp index 3fb3bc68..eb1563ee 100644 --- a/src/Runtime/Source/runtimerender/rendererimpl/Qt3DSRendererImplLayerRenderData.cpp +++ b/src/Runtime/Source/runtimerender/rendererimpl/Qt3DSRendererImplLayerRenderData.cpp @@ -1489,9 +1489,9 @@ namespace render { NVRenderContextScopedProperty<NVRenderRect> __viewport( theRenderContext, &NVRenderContext::GetViewport, &NVRenderContext::SetViewport, theNewViewport); - QT3DSVec4 clearColor(0.0); + QT3DSVec4 clearColor(0.0f); if (m_Layer.m_Background == LayerBackground::Color) - clearColor = QT3DSVec4(m_Layer.m_ClearColor, 1.0); + clearColor = m_Layer.m_ClearColor; NVRenderContextScopedProperty<QT3DSVec4> __clearColor( theRenderContext, &NVRenderContext::GetClearColor, &NVRenderContext::SetClearColor, @@ -1768,7 +1768,7 @@ namespace render { SLayerRenderPreparationResult &thePrepResult(*m_LayerPrepResult); NVRenderRectF theScreenRect(thePrepResult.GetLayerToPresentationViewport()); - bool blendingEnabled = m_Layer.m_Background == LayerBackground::Transparent; + bool blendingEnabled = m_Layer.m_Background != LayerBackground::Unspecified; if (!thePrepResult.m_Flags.ShouldRenderToTexture()) { theContext.SetViewport( m_LayerPrepResult->GetLayerToPresentationViewport().ToIntegerRect()); @@ -1778,7 +1778,7 @@ namespace render { if (m_Layer.m_Background == LayerBackground::Color) { NVRenderContextScopedProperty<QT3DSVec4> __clearColor( theContext, &NVRenderContext::GetClearColor, &NVRenderContext::SetClearColor, - QT3DSVec4(m_Layer.m_ClearColor, 0.0f)); + m_Layer.m_ClearColor); theContext.Clear(NVRenderClearValues::Color); } RenderToViewport(); |