53599592e0
Comes with backends for Vulkan, Metal, Direct3D 11.1, and OpenGL (ES). All APIs are private for now. Shader conditioning (i.e. generating a QRhiShader in memory or on disk from some shader source code) is done via the tools and APIs provided by qt-labs/qtshadertools. The OpenGL support follows the cross-platform tradition of requiring ES 2.0 only, while optionally using some (ES) 3.x features. It can operate in core profile contexts as well. Task-number: QTBUG-70287 Change-Id: I246f2e36d562e404012c05db2aa72487108aa7cc Reviewed-by: Lars Knoll <lars.knoll@qt.io>
21 lines
378 B
GLSL
21 lines
378 B
GLSL
#version 440
|
|
|
|
layout(location = 0) in vec4 position;
|
|
|
|
layout(std140, binding = 0) uniform buf {
|
|
mat4 mvp;
|
|
mat4 lightMvp;
|
|
mat4 shadowBias;
|
|
int useShadow;
|
|
} ubuf;
|
|
|
|
out gl_PerVertex { vec4 gl_Position; };
|
|
|
|
layout(location = 0) out vec4 vLCVertPos;
|
|
|
|
void main()
|
|
{
|
|
vLCVertPos = ubuf.shadowBias * ubuf.lightMvp * position;
|
|
gl_Position = ubuf.mvp * position;
|
|
}
|