diff options
Diffstat (limited to 'Data/Scripts/EditorApplication.lua')
-rw-r--r-- | Data/Scripts/EditorApplication.lua | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/Data/Scripts/EditorApplication.lua b/Data/Scripts/EditorApplication.lua index 36c701a..cc31d3e 100644 --- a/Data/Scripts/EditorApplication.lua +++ b/Data/Scripts/EditorApplication.lua @@ -72,6 +72,92 @@ local tex = Resource.LoadTexture("./Resources/Images/brickwall.jpg") local request = Resource.LoadImageDataAsync("./Resources/Images/brickwall.jpg") +local vsh = [[ + #version 330 core + layout (location = 0) in vec3 aPos; + layout (location = 1) in vec3 aColor; + layout (location = 2) in vec2 aTexCoord; + + out vec3 ourColor; + out vec2 TexCoord; + + void main() + { + gl_Position = vec4(aPos, 1.0); + ourColor = aColor; + TexCoord = vec2(aTexCoord.x, aTexCoord.y); + } +]] + +local fsh = [[ + #version 330 core + out vec4 FragColor; + + in vec3 ourColor; + in vec2 TexCoord; + + uniform float mixValue; + + // texture samplers + uniform sampler2D texture1; + uniform sampler2D texture2; + + void main() + { + // linearly interpolate between both textures + FragColor = mix(texture(texture1, TexCoord), texture(texture2, TexCoord), mixValue); + } +]] + +local glsl = [[ + +#version 330 core +uniform vec2 screenSize; + +VSH_BEGIN + +layout (location = 0) in vec3 aPos; +layout (location = 1) in vec3 aColor; +layout (location = 2) in vec2 aTexCoord; + +out vec3 ourColor; +out vec2 TexCoord; + +void main() +{ + gl_Position = vec4(aPos, 1.0); + ourColor = aColor; + TexCoord = vec2(aTexCoord.x, aTexCoord.y); +} + +VSH_END + + +FSH_BEGIN + +out vec4 FragColor; + +in vec3 ourColor; +in vec2 TexCoord; + +uniform float mixValue; + +// texture samplers +uniform sampler2D texture1; +uniform sampler2D texture2; + +void main() +{ + // linearly interpolate between both textures + FragColor = mix(texture(texture1, TexCoord), texture(texture2, TexCoord), mixValue); +} + +FSH_END + +]] + +local shader = Rendering.Shader.New(glsl, false) + while true do app:OnStep() |