summaryrefslogtreecommitdiff
path: root/Data
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-10-31 17:29:32 +0800
committerchai <chaifix@163.com>2021-10-31 17:29:32 +0800
commit98d05c5030ba1c35ddfe402790702b3f44c63134 (patch)
treed251ae9e96a46947bc4fa65817f2ebfa4b07087a /Data
parent4b24de9ef863f54eb09a5fa1f18e2905cedcc439 (diff)
- Runtime Proj
+ Runner Proj
Diffstat (limited to 'Data')
-rw-r--r--Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Material.lua8
-rw-r--r--Data/DefaultContent/Libraries/GameLab/Engine/Rendering/Shader.lua10
-rw-r--r--Data/DefaultContent/Libraries/GameLab/Engine/Rendering/init.lua1
-rw-r--r--Data/Resources/Shaders/Editor-Text.glsl10
-rw-r--r--Data/Scripts/Editor/AssetBrowser.lua6
5 files changed, 22 insertions, 13 deletions
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()