mirror of
https://github.com/slendidev/lunar.git
synced 2026-01-30 16:28:58 +02:00
@@ -19,6 +19,8 @@ shader_sources = files(
|
||||
'triangle_mesh.frag',
|
||||
'triangle_mesh.vert',
|
||||
'tex_image.frag',
|
||||
'skybox.frag',
|
||||
'skybox.vert',
|
||||
)
|
||||
|
||||
spirv_shaders = []
|
||||
|
||||
12
shaders/skybox.frag
Normal file
12
shaders/skybox.frag
Normal file
@@ -0,0 +1,12 @@
|
||||
#version 450
|
||||
|
||||
layout (location = 0) in vec3 in_dir;
|
||||
|
||||
layout (location = 0) out vec4 out_frag_color;
|
||||
|
||||
layout (set = 0, binding = 0) uniform samplerCube environment_map;
|
||||
|
||||
void main() {
|
||||
vec3 dir = normalize(in_dir);
|
||||
out_frag_color = vec4(texture(environment_map, dir).rgb, 1.0f);
|
||||
}
|
||||
14
shaders/skybox.vert
Normal file
14
shaders/skybox.vert
Normal file
@@ -0,0 +1,14 @@
|
||||
#version 450
|
||||
|
||||
layout (location = 0) in vec3 in_position;
|
||||
layout (location = 0) out vec3 out_dir;
|
||||
|
||||
layout(push_constant) uniform constants {
|
||||
mat4 mvp;
|
||||
} PushConstants;
|
||||
|
||||
void main() {
|
||||
out_dir = in_position;
|
||||
vec4 pos = PushConstants.mvp * vec4(in_position, 1.0f);
|
||||
gl_Position = vec4(pos.xy, pos.w, pos.w);
|
||||
}
|
||||
Reference in New Issue
Block a user