summaryrefslogtreecommitdiff
path: root/Source/Asura.Framework/scripts/graphics/shader.lua
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2019-02-25 09:07:37 +0800
committerchai <chaifix@163.com>2019-02-25 09:07:37 +0800
commit684f71790401727cc45f4dad1822ddae46305072 (patch)
tree75733807914fa799521d1d6a8a450982fdef9124 /Source/Asura.Framework/scripts/graphics/shader.lua
parentc97d8eb7f0900cb6895acb2e5bdce1044931b91a (diff)
+widgets
Diffstat (limited to 'Source/Asura.Framework/scripts/graphics/shader.lua')
-rw-r--r--Source/Asura.Framework/scripts/graphics/shader.lua14
1 files changed, 11 insertions, 3 deletions
diff --git a/Source/Asura.Framework/scripts/graphics/shader.lua b/Source/Asura.Framework/scripts/graphics/shader.lua
index a886481..728ab34 100644
--- a/Source/Asura.Framework/scripts/graphics/shader.lua
+++ b/Source/Asura.Framework/scripts/graphics/shader.lua
@@ -3,13 +3,21 @@ AsuraEngine.Shader = AsuraEngine.Asset.Sub("Shader")
local Shader = AsuraEngine.Shader
function Shader.Ctor(self, vert, frag)
- local simShader = AsuraEngine.simShader(vert, frag)
- self.simShader = shader
+ self.simShader = AsuraEngine.SimShader.New(vert, frag)
+ self.uniforms = {} -- 映射uniform name到location
+end
+function Shader.GetUniformLocation(self, name)
+ if self.uniforms then
+ local id = self.uniforms[name]
+ return id
+ end
+ return 0
end
function Shader.SendVec2(self, name, vec2)
-
+ local id = self:GetUniformLocation(name)
+ self.simShader:SendUniformVector2(name, vec2)
end
function Shader.SendVec3(self, name, vec3)