diff options
Diffstat (limited to 'Data')
-rw-r--r-- | Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Shader.lua | 11 | ||||
-rw-r--r-- | Data/Resources/Shaders/Editor-Text.glsl | 34 | ||||
-rw-r--r-- | Data/Scripts/Editor/AssetBrowser.lua | 3 |
3 files changed, 47 insertions, 1 deletions
diff --git a/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Shader.lua b/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Shader.lua new file mode 100644 index 0000000..c64d526 --- /dev/null +++ b/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Shader.lua @@ -0,0 +1,11 @@ +local Shader = GameLab.Engine.Rendering.Shader or {} + +-- @Shader.CreateFromFile +-- 从文件中创建Shader +-- @param path:string 路径 +-- @return shader 创建的shader +Shader.CreateFromFile = function( path ) + +end + +return Shader
\ No newline at end of file diff --git a/Data/Resources/Shaders/Editor-Text.glsl b/Data/Resources/Shaders/Editor-Text.glsl new file mode 100644 index 0000000..7a88fcf --- /dev/null +++ b/Data/Resources/Shaders/Editor-Text.glsl @@ -0,0 +1,34 @@ +#version 330 core + +uniform mat4 gamelab_mat_mvp; +uniform sampler2D uiTex; +uniform vec2 uiText_ST; + +VSH_BEGIN +layout (location = 0) in vec2 vPos; +layout (location = 1) in vec2 vUV; + +out vec2 uv; + +void main() +{ + vec4 clip = gamelab_mat_mvp * vec4(vPos, -1, 1.0); + gl_Position = clip; + uv = vUV; +} + +VSH_END + +FSH_BEGIN +in vec2 uv; + +out vec4 FragColor; + +void main() +{ + vec2 uv = vec2(uv.x, 1 - uv.y); + vec4 sampled = vec4(1,1,1,texture(uiTex, uv).r); + FragColor = sampled; +} + +FSH_END
\ No newline at end of file diff --git a/Data/Scripts/Editor/AssetBrowser.lua b/Data/Scripts/Editor/AssetBrowser.lua index 68f0483..5f00dc1 100644 --- a/Data/Scripts/Editor/AssetBrowser.lua +++ b/Data/Scripts/Editor/AssetBrowser.lua @@ -42,7 +42,8 @@ out vec4 FragColor; void main()
{
- vec4 sampled = vec4(texture(uiTex, uv).r, 0, 0, 1.0);
+ vec2 uv = vec2(uv.x, 1 - uv.y);
+ vec4 sampled = vec4(1,1,1,texture(uiTex, uv).r);
FragColor = sampled;
// FragColor = texture(uiTex, uv);
// FragColor.rgb = vec3(1,0,0);
|