Sat, 10 May 2025 18:51:45 +0200
refactor rendering 1/3 - create new mesh structs
15
362b7659dc76
add shader loading and unloading
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
1 | #version 400 core |
362b7659dc76
add shader loading and unloading
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
2 | |
115
e5f8c99b0987
refactor rendering 1/3 - create new mesh structs
Mike Becker <universe@uap-core.de>
parents:
102
diff
changeset
|
3 | layout(location = 0) in vec2 in_pos; |
e5f8c99b0987
refactor rendering 1/3 - create new mesh structs
Mike Becker <universe@uap-core.de>
parents:
102
diff
changeset
|
4 | layout(location = 1) in vec2 in_uv; |
15
362b7659dc76
add shader loading and unloading
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
5 | out vec2 texcoord; |
88
6234b7ea48f3
add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents:
83
diff
changeset
|
6 | out vec2 uvcoord; |
15
362b7659dc76
add shader loading and unloading
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
7 | |
362b7659dc76
add shader loading and unloading
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
8 | uniform mat4 projection; |
83
f7ce0db6f72b
implement view matrix in sprite shader
Mike Becker <universe@uap-core.de>
parents:
42
diff
changeset
|
9 | uniform mat4 view; |
15
362b7659dc76
add shader loading and unloading
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
10 | uniform mat4 model; |
362b7659dc76
add shader loading and unloading
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
11 | |
362b7659dc76
add shader loading and unloading
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
12 | void main(void) { |
115
e5f8c99b0987
refactor rendering 1/3 - create new mesh structs
Mike Becker <universe@uap-core.de>
parents:
102
diff
changeset
|
13 | vec4 pos = projection*view*model*vec4(in_pos.xy, 0.0, 1.0); |
41
df81d493716e
add correct interleaving of opaque and transparent sprites
Mike Becker <universe@uap-core.de>
parents:
40
diff
changeset
|
14 | gl_Position = pos; |
115
e5f8c99b0987
refactor rendering 1/3 - create new mesh structs
Mike Becker <universe@uap-core.de>
parents:
102
diff
changeset
|
15 | uvcoord = in_uv; |
e5f8c99b0987
refactor rendering 1/3 - create new mesh structs
Mike Becker <universe@uap-core.de>
parents:
102
diff
changeset
|
16 | // TODO: we don't need that in the future |
e5f8c99b0987
refactor rendering 1/3 - create new mesh structs
Mike Becker <universe@uap-core.de>
parents:
102
diff
changeset
|
17 | texcoord = vec2(model[0].x, model[1].y)*in_pos; |
15
362b7659dc76
add shader loading and unloading
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
18 | } |