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>
22 lines
425 B
GLSL
22 lines
425 B
GLSL
#version 440
|
|
|
|
layout(location = 0) in vec4 position;
|
|
layout(location = 1) in vec2 texcoord;
|
|
|
|
layout(location = 0) out vec2 v_texcoord;
|
|
|
|
layout(std140, binding = 0) uniform buf {
|
|
mat4 mvp;
|
|
int flip;
|
|
} ubuf;
|
|
|
|
out gl_PerVertex { vec4 gl_Position; };
|
|
|
|
void main()
|
|
{
|
|
v_texcoord = vec2(texcoord.x, texcoord.y);
|
|
if (ubuf.flip != 0)
|
|
v_texcoord.y = 1.0 - v_texcoord.y;
|
|
gl_Position = ubuf.mvp * position;
|
|
}
|