summaryrefslogtreecommitdiffstats
path: root/examples/qt3d/simplecustommaterial/shaders
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2020-11-26 08:14:37 +0100
committerPaul Lemire <paul.lemire@kdab.com>2020-11-26 14:31:45 +0100
commit4ad2efac3e734f72c0c8d0ff9739106728fe6c98 (patch)
treeb076c1a96da7d4b6673f1db2669f7c8ffc7da230 /examples/qt3d/simplecustommaterial/shaders
parent44cae613ffa934cc358b97994a65c54a9bc2d8a6 (diff)
simplecustommaterial example: add RHI support
Pick-to: 6.0 6.0.0 Change-Id: Id1dfc3c6a6f0c8090b5c5facc1a0dd9bb5a02bd6 Reviewed-by: Mike Krus <mike.krus@kdab.com>
Diffstat (limited to 'examples/qt3d/simplecustommaterial/shaders')
-rw-r--r--examples/qt3d/simplecustommaterial/shaders/gl45/simpleColor.frag14
-rw-r--r--examples/qt3d/simplecustommaterial/shaders/gl45/simpleColor.vert23
2 files changed, 37 insertions, 0 deletions
diff --git a/examples/qt3d/simplecustommaterial/shaders/gl45/simpleColor.frag b/examples/qt3d/simplecustommaterial/shaders/gl45/simpleColor.frag
new file mode 100644
index 000000000..f2658621d
--- /dev/null
+++ b/examples/qt3d/simplecustommaterial/shaders/gl45/simpleColor.frag
@@ -0,0 +1,14 @@
+#version 450 core
+
+layout(std140, binding = 2) uniform custom_uniforms {
+ vec3 maincolor;
+};
+
+layout(location = 0) out vec4 fragColor;
+
+void main()
+{
+ //output color from material
+ fragColor = vec4(maincolor,1.0);
+}
+
diff --git a/examples/qt3d/simplecustommaterial/shaders/gl45/simpleColor.vert b/examples/qt3d/simplecustommaterial/shaders/gl45/simpleColor.vert
new file mode 100644
index 000000000..46948167a
--- /dev/null
+++ b/examples/qt3d/simplecustommaterial/shaders/gl45/simpleColor.vert
@@ -0,0 +1,23 @@
+#version 450 core
+
+layout(location = 0) in vec3 vertexPosition;
+layout(location = 0) out vec3 worldPosition;
+
+layout(std140, binding = 1) uniform qt3d_command_uniforms {
+ mat4 modelMatrix;
+ mat4 inverseModelMatrix;
+ mat4 modelViewMatrix;
+ mat3 modelNormalMatrix;
+ mat4 inverseModelViewMatrix;
+ mat4 modelViewProjection;
+ mat4 inverseModelViewProjectionMatrix;
+};
+
+void main()
+{
+ // Transform position, normal, and tangent to world coords
+ worldPosition = vec3(modelMatrix * vec4(vertexPosition, 1.0));
+
+ // Calculate vertex position in clip coordinates
+ gl_Position = modelViewProjection * vec4(worldPosition, 1.0);
+}