sm64coopdx/docs/lua/examples/shader-demo/mirror-shader.lua
EmeraldLockdown 14eabd5798 Weewoo
2026-05-12 21:44:18 -05:00

21 lines
No EOL
769 B
Lua

-- name: Mirror Shader
-- description: This is an example of a post process vertex shader!
local function on_post_process_vertex_shader_create()
local vertexShader = {}
table.insert(vertexShader, "#version 150")
table.insert(vertexShader, "in vec4 aVtxPos;")
table.insert(vertexShader, "in vec2 aTexCoord;")
table.insert(vertexShader, "out vec2 vTexCoord;")
table.insert(vertexShader, "void main() {")
table.insert(vertexShader, "vTexCoord = aTexCoord;")
table.insert(vertexShader, "gl_Position = vec4(aVtxPos.x * -1.0, aVtxPos.yzw);")
table.insert(vertexShader, "}")
return table.concat(vertexShader, "\n")
end
hook_event(HOOK_ON_POST_PROCESS_VERTEX_SHADER_CREATE, on_post_process_vertex_shader_create)
gfx_reload_shaders()