summaryrefslogtreecommitdiffstats
path: root/src/runtimerender/rendererimpl/Qt3DSRendererImplShaders.cpp
diff options
context:
space:
mode:
authorKaj Grönholm <kaj.gronholm@qt.io>2019-10-09 20:51:39 +0300
committerKaj Grönholm <kaj.gronholm@qt.io>2019-10-11 13:10:32 +0300
commit7da61c9da6b885fa90d274d220c2bcef2553b006 (patch)
treefbd473eff154ab42133ff14724e87128892b9922 /src/runtimerender/rendererimpl/Qt3DSRendererImplShaders.cpp
parentd0cfd79d940bd9ed4dd63334ecf686fa013eaf37 (diff)
Add anaglyph stereoscopic modes into opengl runtime
Implement also anaglyph red-cyan & green-magenta stereoscopic modes for opengl runtime. APIs for C++ and QML. Add options into viewer. Task-number: QT3DS-3981 Change-Id: Idb9f659b3799e954253e37045c1a3b2a55fb2779 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
Diffstat (limited to 'src/runtimerender/rendererimpl/Qt3DSRendererImplShaders.cpp')
-rw-r--r--src/runtimerender/rendererimpl/Qt3DSRendererImplShaders.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/runtimerender/rendererimpl/Qt3DSRendererImplShaders.cpp b/src/runtimerender/rendererimpl/Qt3DSRendererImplShaders.cpp
index c33aaeb..d69e46e 100644
--- a/src/runtimerender/rendererimpl/Qt3DSRendererImplShaders.cpp
+++ b/src/runtimerender/rendererimpl/Qt3DSRendererImplShaders.cpp
@@ -2430,10 +2430,11 @@ namespace render {
vertexGenerator.Append("}");
fragmentGenerator.AddUniform("layer_image", "sampler2D");
+ fragmentGenerator.AddUniform("anaglyphColor", "vec4");
fragmentGenerator.Append("void main() {");
fragmentGenerator.Append("\tvec2 theCoords = uv_coords;\n");
fragmentGenerator.Append("\tvec4 theLayerTexture = texture2D( layer_image, theCoords );\n");
- fragmentGenerator.Append("\tfragOutput = theLayerTexture;\n");
+ fragmentGenerator.Append("\tfragOutput = theLayerTexture * anaglyphColor;\n");
fragmentGenerator.Append("}");
NVRenderShaderProgram *theShader = GetProgramGenerator().CompileGeneratedShader(
"layer shader", SShaderCacheProgramFlags(), TShaderFeatureSet());