Add Offscreen Framebuffer support

This commit is contained in:
Thraix
2023-02-05 01:04:07 +01:00
parent 9de2ff594b
commit 708b81c571
25 changed files with 597 additions and 219 deletions
+11
View File
@@ -0,0 +1,11 @@
#version 450
layout(set = 0, binding = 0) uniform sampler2D texSampler;
layout(location = 0) in vec2 fragTexCoord;
layout(location = 0) out vec4 outColor;
void main()
{
outColor = texture(texSampler, fragTexCoord);
}
+11
View File
@@ -0,0 +1,11 @@
#version 450
layout(location = 0) in vec2 inPosition;
layout(location = 0) out vec2 fragTexCoord;
void main()
{
gl_Position = vec4(inPosition* 0.5, 0.999, 1.0);
fragTexCoord = inPosition * 0.5 + 0.5;
}
+2 -2
View File
@@ -10,6 +10,6 @@ layout(location = 3) in vec3 fragLightPos;
layout(location = 0) out vec4 outColor;
void main() {
float scale = 0.45 + max(dot(vec3(0, 1, 0), normalize(fragLightPos - fragPosition)), 0.0);
outColor = vec4(fragColor, 1.0) * texture(texSampler, fragTexCoord) * scale;
float scale = 0.45 + max(dot(vec3(0, 1, 0), normalize(fragLightPos - fragPosition)), 0.0);
outColor = vec4(fragColor, 1.0) * texture(texSampler, fragTexCoord) * scale;
}
+9 -9
View File
@@ -2,10 +2,10 @@
layout(set = 0, binding = 0) uniform SceneUniformBufferObject
{
mat4 projection;
mat4 view;
mat4 model;
vec3 lightPos;
mat4 projection;
mat4 view;
mat4 model;
vec3 lightPos;
} ubo;
layout(location = 0) in vec3 inPosition;
@@ -18,9 +18,9 @@ layout(location = 2) out vec3 fragPosition;
layout(location = 3) out vec3 fragLightPos;
void main() {
gl_Position = ubo.projection * ubo.view * ubo.model * vec4(inPosition, 1.0);
fragColor = inColor;
fragTexCoord = inTexCoord;
fragPosition = vec3(ubo.model * vec4(inPosition, 1.0));
fragLightPos = ubo.lightPos;
gl_Position = ubo.projection * ubo.view * ubo.model * vec4(inPosition, 1.0);
fragColor = inColor;
fragTexCoord = inTexCoord;
fragPosition = vec3(ubo.model * vec4(inPosition, 1.0));
fragLightPos = ubo.lightPos;
}