From 98d05c5030ba1c35ddfe402790702b3f44c63134 Mon Sep 17 00:00:00 2001 From: chai Date: Sun, 31 Oct 2021 17:29:32 +0800 Subject: - Runtime Proj + Runner Proj --- .../Libraries/GameLab/Engine/Rendering/Material.lua | 8 ++++++++ .../Libraries/GameLab/Engine/Rendering/Shader.lua | 10 +++++----- .../DefaultContent/Libraries/GameLab/Engine/Rendering/init.lua | 1 + Data/Resources/Shaders/Editor-Text.glsl | 10 +++++----- Data/Scripts/Editor/AssetBrowser.lua | 6 +++--- 5 files changed, 22 insertions(+), 13 deletions(-) create mode 100644 Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Material.lua (limited to 'Data') diff --git a/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Material.lua b/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Material.lua new file mode 100644 index 0000000..872d7e1 --- /dev/null +++ b/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Material.lua @@ -0,0 +1,8 @@ +local Material = GameLab.Class("GameLab.Engine.Rendering.Material") + +Material.Ctor = function(self) + self.shader = nil -- 绑定的shader + self.uniforms = {} -- {name, value} +end + +return Material \ No newline at end of file diff --git a/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Shader.lua b/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Shader.lua index c64d526..b3c8aeb 100644 --- a/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Shader.lua +++ b/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Shader.lua @@ -1,11 +1,11 @@ local Shader = GameLab.Engine.Rendering.Shader or {} --- @Shader.CreateFromFile --- 从文件中创建Shader --- @param path:string 路径 --- @return shader 创建的shader Shader.CreateFromFile = function( path ) - + local glsl = GameLab.IO.ReadFile(path, GameLab.IO.EFileMode.Text) + if glsl ~= nil then + local shader = Shader.New(glsl) + return shader + end end return Shader \ No newline at end of file diff --git a/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/init.lua b/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/init.lua index caefccf..5469297 100644 --- a/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/init.lua +++ b/Data/DefaultContent/Libraries/GameLab/Engine/Rendering/init.lua @@ -7,6 +7,7 @@ local Shader = GameLab.Engine.Rendering.Shader m.Color = import("Color") m.Color32 = import("Color32") +m.Shader = import("Shader") m.LoadTexture = function(path) diff --git a/Data/Resources/Shaders/Editor-Text.glsl b/Data/Resources/Shaders/Editor-Text.glsl index af76555..3566b28 100644 --- a/Data/Resources/Shaders/Editor-Text.glsl +++ b/Data/Resources/Shaders/Editor-Text.glsl @@ -1,12 +1,12 @@ #version 330 core -CMD_BEGIN +// CMD_BEGIN -Cull Both -DepthTest Off -Blend SrcAlpha OneMinusSrcAlpha +// Cull Both +// DepthTest Off +// Blend SrcAlpha OneMinusSrcAlpha -CMD_END +// CMD_END uniform mat4 gamelab_mat_mvp; uniform sampler2D uiTex; diff --git a/Data/Scripts/Editor/AssetBrowser.lua b/Data/Scripts/Editor/AssetBrowser.lua index 7c73ec3..d726654 100644 --- a/Data/Scripts/Editor/AssetBrowser.lua +++ b/Data/Scripts/Editor/AssetBrowser.lua @@ -16,14 +16,14 @@ local tex AssetBrowser.OnGUI = function(self) - if tex == nil then tex = Engine.Resource.LoadTexture("./Resources/Images/brickwall.jpg") end if shader == nil then - local glsl = IO.ReadFile("./Resources/Shaders/Editor-Text.glsl", IO.EFileMode.Text) - shader = Engine.Rendering.Shader.New(glsl) + -- 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.glsl") end local ortho = Matrix44.New() -- cgit v1.1-26-g67d0