From b215d811a1981e20f35bb31df4e6cd2a74146193 Mon Sep 17 00:00:00 2001 From: chai Date: Thu, 4 Nov 2021 10:00:00 +0800 Subject: *misc --- Data/DefaultContent/Libraries/GameLab/Debug.lua | 6 +++ Data/Libraries/GameLab/Editor/EditorWindow.lua | 23 +++++++++++ Data/Libraries/GameLab/Editor/GUI/EditorWindow.lua | 23 ----------- Data/Libraries/GameLab/Editor/GUI/init.lua | 2 - Data/Libraries/GameLab/Editor/init.lua | 1 + Data/Resources/Shaders/BaseColor.gls | 43 -------------------- Data/Resources/Shaders/BaseColor.glsl | 43 ++++++++++++++++++++ Data/Resources/Shaders/Editor-Shape.glsl | 47 ++++++++++++++++++++++ Data/Resources/Shaders/Editor-Text.gls | 47 ---------------------- Data/Resources/Shaders/Editor-Text.glsl | 45 +++++++++++++++++++++ Data/Resources/Shaders/Editor-UI.gls | 45 --------------------- Data/Resources/Shaders/Editor-UI.glsl | 45 +++++++++++++++++++++ Data/Scripts/Editor/AssetBrowser.lua | 9 ++--- Data/Scripts/EditorGUI/EditorWindowManager.lua | 2 +- 14 files changed, 215 insertions(+), 166 deletions(-) create mode 100644 Data/DefaultContent/Libraries/GameLab/Debug.lua create mode 100644 Data/Libraries/GameLab/Editor/EditorWindow.lua delete mode 100644 Data/Libraries/GameLab/Editor/GUI/EditorWindow.lua delete mode 100644 Data/Resources/Shaders/BaseColor.gls create mode 100644 Data/Resources/Shaders/BaseColor.glsl create mode 100644 Data/Resources/Shaders/Editor-Shape.glsl delete mode 100644 Data/Resources/Shaders/Editor-Text.gls create mode 100644 Data/Resources/Shaders/Editor-Text.glsl delete mode 100644 Data/Resources/Shaders/Editor-UI.gls create mode 100644 Data/Resources/Shaders/Editor-UI.glsl (limited to 'Data') diff --git a/Data/DefaultContent/Libraries/GameLab/Debug.lua b/Data/DefaultContent/Libraries/GameLab/Debug.lua new file mode 100644 index 0000000..9f68160 --- /dev/null +++ b/Data/DefaultContent/Libraries/GameLab/Debug.lua @@ -0,0 +1,6 @@ + +local c_log = GameLab.Debug.Log +local c_log_editor = GameLab.Debug.LogEditor +local c_log_warning = GameLab.Debug.LogWarning +local c_log_error = GameLab.Debug.LogError + diff --git a/Data/Libraries/GameLab/Editor/EditorWindow.lua b/Data/Libraries/GameLab/Editor/EditorWindow.lua new file mode 100644 index 0000000..af79771 --- /dev/null +++ b/Data/Libraries/GameLab/Editor/EditorWindow.lua @@ -0,0 +1,23 @@ +local EditorWindow = GameLab.Class("GameLab.Editor.EditorWindow") + +EditorWindow.Ctor = function(self, title) + self.title = title -- 编辑器名称 + self.guiWindow = nil -- 绑定的GUIWindow +end + +EditorWindow.OnGUI = function(self) +end + +EditorWindow.OnUpdate = function(self) +end + +EditorWindow.OnStart = function(self) +end + +EditorWindow.OnStop = function(self) +end + +EditorWindow.OnFocus = function(self) +end + +return EditorWindow \ No newline at end of file diff --git a/Data/Libraries/GameLab/Editor/GUI/EditorWindow.lua b/Data/Libraries/GameLab/Editor/GUI/EditorWindow.lua deleted file mode 100644 index 4f0525f..0000000 --- a/Data/Libraries/GameLab/Editor/GUI/EditorWindow.lua +++ /dev/null @@ -1,23 +0,0 @@ -local EditorWindow = GameLab.Class("GameLab.Editor.GUI.EditorWindow") - -EditorWindow.Ctor = function(self, title) - self.title = title -- 编辑器名称 - self.guiWindow = nil -- 绑定的GUIWindow -end - -EditorWindow.OnGUI = function(self) -end - -EditorWindow.OnUpdate = function(self) -end - -EditorWindow.OnStart = function(self) -end - -EditorWindow.OnStop = function(self) -end - -EditorWindow.OnFocus = function(self) -end - -return EditorWindow \ No newline at end of file diff --git a/Data/Libraries/GameLab/Editor/GUI/init.lua b/Data/Libraries/GameLab/Editor/GUI/init.lua index def4237..a1ccb7c 100644 --- a/Data/Libraries/GameLab/Editor/GUI/init.lua +++ b/Data/Libraries/GameLab/Editor/GUI/init.lua @@ -3,8 +3,6 @@ local m = GameLab.Editor.GUI local import = GameLab.import(...) -m.EditorWindow = import("EditorWindow") - import("Functions") return m \ No newline at end of file diff --git a/Data/Libraries/GameLab/Editor/init.lua b/Data/Libraries/GameLab/Editor/init.lua index 97b4b2e..c151aab 100644 --- a/Data/Libraries/GameLab/Editor/init.lua +++ b/Data/Libraries/GameLab/Editor/init.lua @@ -4,5 +4,6 @@ GameLab.Editor = m local import = GameLab.import(...) m.AssetManager = import("AssetManager") +m.EditorWindow = import("EditorWindow") return m \ No newline at end of file diff --git a/Data/Resources/Shaders/BaseColor.gls b/Data/Resources/Shaders/BaseColor.gls deleted file mode 100644 index b1aed17..0000000 --- a/Data/Resources/Shaders/BaseColor.gls +++ /dev/null @@ -1,43 +0,0 @@ -#version 330 core - -VSH_BEGIN - -vec3 vPos; -vec3 vNormal; -vec4 vTangent; -vec4 vColor; -vec2 vUV; -vec2 vUV2; -vec2 vUV3; -vec2 vUV4; - -uniform mat4 gamelab_mat_model; -uniform mat4 gamelab_mat_vp; -uniform vec4 gamelab_screen; -uniform vec4 gamelab_time; - -uniform mat4 mvp; - -out vec2 uv; - -void main() -{ - vec4 clip = mvp * vec4(vPos, -1, 1.0); - gl_Position = clip; - uv = vUV; -} - -VSH_END - -FSH_BEGIN -uniform sampler2D uiTex; - -in vec2 uv; - -out vec4 FragColor; - -void main() -{ - FragColor = texture(uiTex, uv); -} -FSH_END diff --git a/Data/Resources/Shaders/BaseColor.glsl b/Data/Resources/Shaders/BaseColor.glsl new file mode 100644 index 0000000..b1aed17 --- /dev/null +++ b/Data/Resources/Shaders/BaseColor.glsl @@ -0,0 +1,43 @@ +#version 330 core + +VSH_BEGIN + +vec3 vPos; +vec3 vNormal; +vec4 vTangent; +vec4 vColor; +vec2 vUV; +vec2 vUV2; +vec2 vUV3; +vec2 vUV4; + +uniform mat4 gamelab_mat_model; +uniform mat4 gamelab_mat_vp; +uniform vec4 gamelab_screen; +uniform vec4 gamelab_time; + +uniform mat4 mvp; + +out vec2 uv; + +void main() +{ + vec4 clip = mvp * vec4(vPos, -1, 1.0); + gl_Position = clip; + uv = vUV; +} + +VSH_END + +FSH_BEGIN +uniform sampler2D uiTex; + +in vec2 uv; + +out vec4 FragColor; + +void main() +{ + FragColor = texture(uiTex, uv); +} +FSH_END diff --git a/Data/Resources/Shaders/Editor-Shape.glsl b/Data/Resources/Shaders/Editor-Shape.glsl new file mode 100644 index 0000000..7548507 --- /dev/null +++ b/Data/Resources/Shaders/Editor-Shape.glsl @@ -0,0 +1,47 @@ +// 渲染编辑器文字 + +#version 330 core + +CMD_BEGIN +Cull Off +Blend SrcAlpha OneMinusSrcAlpha +DepthTest Off +CMD_END + +uniform mat4 gamelab_mat_mvp; +uniform sampler2D gamelab_main_tex; +uniform vec2 gamelab_ui_position; + +VSH_BEGIN +layout (location = 0) in vec2 vPos; +layout (location = 1) in vec2 vUV; +layout (location = 2) in vec4 vColor; + +out vec2 uv; +out vec4 color; + +void main() +{ + vec2 pos = vPos + gamelab_ui_position; + vec4 clip = gamelab_mat_mvp * vec4(pos, -1, 1.0); + gl_Position = clip; + uv = vUV; + color = vColor; +} +VSH_END + +FSH_BEGIN +in vec2 uv; +in vec4 color; + +out vec4 FragColor; + +void main() +{ + //vec2 uv = vec2(uv.x, 1 - uv.y); + vec4 sampled = vec4(0.8,0.8,0.8,texture(gamelab_main_tex, uv).r); + sampled *= color; + //sampled = vec4(1,1,1,1); + FragColor = sampled; +} +FSH_END diff --git a/Data/Resources/Shaders/Editor-Text.gls b/Data/Resources/Shaders/Editor-Text.gls deleted file mode 100644 index 7548507..0000000 --- a/Data/Resources/Shaders/Editor-Text.gls +++ /dev/null @@ -1,47 +0,0 @@ -// 渲染编辑器文字 - -#version 330 core - -CMD_BEGIN -Cull Off -Blend SrcAlpha OneMinusSrcAlpha -DepthTest Off -CMD_END - -uniform mat4 gamelab_mat_mvp; -uniform sampler2D gamelab_main_tex; -uniform vec2 gamelab_ui_position; - -VSH_BEGIN -layout (location = 0) in vec2 vPos; -layout (location = 1) in vec2 vUV; -layout (location = 2) in vec4 vColor; - -out vec2 uv; -out vec4 color; - -void main() -{ - vec2 pos = vPos + gamelab_ui_position; - vec4 clip = gamelab_mat_mvp * vec4(pos, -1, 1.0); - gl_Position = clip; - uv = vUV; - color = vColor; -} -VSH_END - -FSH_BEGIN -in vec2 uv; -in vec4 color; - -out vec4 FragColor; - -void main() -{ - //vec2 uv = vec2(uv.x, 1 - uv.y); - vec4 sampled = vec4(0.8,0.8,0.8,texture(gamelab_main_tex, uv).r); - sampled *= color; - //sampled = vec4(1,1,1,1); - FragColor = sampled; -} -FSH_END diff --git a/Data/Resources/Shaders/Editor-Text.glsl b/Data/Resources/Shaders/Editor-Text.glsl new file mode 100644 index 0000000..03ec5a7 --- /dev/null +++ b/Data/Resources/Shaders/Editor-Text.glsl @@ -0,0 +1,45 @@ +#version 330 core + +CMD_BEGIN +Cull Off +Blend SrcAlpha OneMinusSrcAlpha +DepthTest Off +CMD_END + +uniform mat4 gamelab_mat_mvp; +uniform sampler2D gamelab_main_tex; +uniform vec2 gamelab_ui_position; + +VSH_BEGIN +layout (location = 0) in vec2 vPos; +layout (location = 1) in vec2 vUV; +layout (location = 2) in vec4 vColor; + +out vec2 uv; +out vec4 color; + +void main() +{ + vec2 pos = vPos + gamelab_ui_position; + vec4 clip = gamelab_mat_mvp * vec4(pos, -1, 1.0); + gl_Position = clip; + uv = vUV; + color = vColor; +} +VSH_END + +FSH_BEGIN +in vec2 uv; +in vec4 color; + +out vec4 FragColor; + +void main() +{ + //vec2 uv = vec2(uv.x, 1 - uv.y); + vec4 sampled = vec4(0.8,0.8,0.8,texture(gamelab_main_tex, uv).r); + sampled *= color; + //sampled = vec4(1,1,1,1); + FragColor = sampled; +} +FSH_END diff --git a/Data/Resources/Shaders/Editor-UI.gls b/Data/Resources/Shaders/Editor-UI.gls deleted file mode 100644 index b2b348b..0000000 --- a/Data/Resources/Shaders/Editor-UI.gls +++ /dev/null @@ -1,45 +0,0 @@ -#version 330 core - -CMD_BEGIN -Cull Off -Blend SrcAlpha OneMinusSrcAlpha -DepthTest Off -CMD_END - -uniform mat4 gamelab_mat_mvp; -uniform sampler2D gamelab_main_tex; -uniform vec2 gamelab_ui_position; - -VSH_BEGIN -layout (location = 0) in vec2 vPos; -layout (location = 1) in vec2 vUV; -layout (location = 2) in vec4 vColor; - -out vec2 uv; -out vec4 color; - -void main() -{ - vec2 pos = vPos + gamelab_ui_position; - vec4 clip = gamelab_mat_mvp * vec4(pos, -1, 1.0); - gl_Position = clip; - uv = vUV; - color = vColor; -} -VSH_END - -FSH_BEGIN -in vec2 uv; -in vec4 color; - -out vec4 FragColor; - -void main() -{ - //vec2 uv = vec2(uv.x, 1 - uv.y); - vec4 sampled = texture(gamelab_main_tex, uv); - // sampled *= color; - //sampled = vec4(1,1,1,1); - FragColor = sampled; -} -FSH_END diff --git a/Data/Resources/Shaders/Editor-UI.glsl b/Data/Resources/Shaders/Editor-UI.glsl new file mode 100644 index 0000000..b2b348b --- /dev/null +++ b/Data/Resources/Shaders/Editor-UI.glsl @@ -0,0 +1,45 @@ +#version 330 core + +CMD_BEGIN +Cull Off +Blend SrcAlpha OneMinusSrcAlpha +DepthTest Off +CMD_END + +uniform mat4 gamelab_mat_mvp; +uniform sampler2D gamelab_main_tex; +uniform vec2 gamelab_ui_position; + +VSH_BEGIN +layout (location = 0) in vec2 vPos; +layout (location = 1) in vec2 vUV; +layout (location = 2) in vec4 vColor; + +out vec2 uv; +out vec4 color; + +void main() +{ + vec2 pos = vPos + gamelab_ui_position; + vec4 clip = gamelab_mat_mvp * vec4(pos, -1, 1.0); + gl_Position = clip; + uv = vUV; + color = vColor; +} +VSH_END + +FSH_BEGIN +in vec2 uv; +in vec4 color; + +out vec4 FragColor; + +void main() +{ + //vec2 uv = vec2(uv.x, 1 - uv.y); + vec4 sampled = texture(gamelab_main_tex, uv); + // sampled *= color; + //sampled = vec4(1,1,1,1); + FragColor = sampled; +} +FSH_END diff --git a/Data/Scripts/Editor/AssetBrowser.lua b/Data/Scripts/Editor/AssetBrowser.lua index a0cb295..89d4eba 100644 --- a/Data/Scripts/Editor/AssetBrowser.lua +++ b/Data/Scripts/Editor/AssetBrowser.lua @@ -1,5 +1,5 @@ local Debug = GameLab.Debug -local AssetBrowser = GameLab.Editor.GUI.EditorWindow.Extend("GameLab.Editor.AssetBrowser") +local AssetBrowser = GameLab.Editor.EditorWindow.Extend("GameLab.Editor.AssetBrowser") local GL = GameLab.Engine.GL local Matrix44 = GameLab.Engine.Math.Matrix44 local Engine = GameLab.Engine @@ -15,7 +15,6 @@ local shader = nil local tex AssetBrowser.OnGUI = function(self) - if tex == nil then tex = Engine.Resource.LoadTexture("./Resources/Images/tile.png") --tex = Engine.Resource.LoadTexture("./Resources/Images/brickwall_small.jpg") @@ -24,7 +23,7 @@ AssetBrowser.OnGUI = function(self) if shader == nil then -- local glsl = IO.ReadFile("./Resources/Shaders/Editor-Text.glsl", IO.EFileMode.Text) -- shader = Engine.Rendering.Shader.New(glsl) - shader = Engine.Rendering.Shader.CreateFromFile("./Resources/Shaders/Editor-Text.gls") + shader = Engine.Rendering.Shader.CreateFromFile("./Resources/Shaders/Editor-Text.glsl") end local ortho = Matrix44.New() @@ -36,11 +35,11 @@ AssetBrowser.OnGUI = function(self) Engine.Rendering.UseShader(shader) Engine.Rendering.SetMatrix44("gamelab_mat_mvp", ortho) - Engine.Rendering.SetVector2("gamelab_ui_position", {0, 0}) + Engine.Rendering.SetVector2("gamelab_ui_position", {0, 30}) --Engine.Rendering.SetTexture("gamelab_main_tex", tex) --Engine.Rendering.DrawUIQuad({0, 0, 200, 200}) _G["default_font"]:GetCharacters("你好世界!Hello,World! Project Window Properties", 12) - --Engine.Rendering.DrawUI9Slicing(1, {25, 25}, {25, 25}, {80, 80}, {200, 200} ) + --Engine.Rendering.DrawUI9Slicing(1, {25, 25}, {25, 25}, {80, 80}, {400, 50} ) Engine.Rendering.ResetUniformState() end diff --git a/Data/Scripts/EditorGUI/EditorWindowManager.lua b/Data/Scripts/EditorGUI/EditorWindowManager.lua index 707038b..e3595ae 100644 --- a/Data/Scripts/EditorGUI/EditorWindowManager.lua +++ b/Data/Scripts/EditorGUI/EditorWindowManager.lua @@ -2,4 +2,4 @@ local EditorWindowManager = {} EditorWindowManager.name = "asd" -return EditorWindowManager \ No newline at end of file +return EditorWindowManager \ No newline at end of file -- cgit v1.1-26-g67d0