diff options
Diffstat (limited to 'Source/Asura.Framework/scripts')
-rw-r--r-- | Source/Asura.Framework/scripts/filesystem/image_loader.lua | 2 | ||||
-rw-r--r-- | Source/Asura.Framework/scripts/graphics/material.lua | 2 | ||||
-rw-r--r-- | Source/Asura.Framework/scripts/graphics/shader.lua | 14 |
3 files changed, 13 insertions, 5 deletions
diff --git a/Source/Asura.Framework/scripts/filesystem/image_loader.lua b/Source/Asura.Framework/scripts/filesystem/image_loader.lua index 3c2e5da..6b0bef7 100644 --- a/Source/Asura.Framework/scripts/filesystem/image_loader.lua +++ b/Source/Asura.Framework/scripts/filesystem/image_loader.lua @@ -10,4 +10,4 @@ function loader.OnLoad(asset) return end return image -end
\ No newline at end of file +end diff --git a/Source/Asura.Framework/scripts/graphics/material.lua b/Source/Asura.Framework/scripts/graphics/material.lua index f347789..e985b3c 100644 --- a/Source/Asura.Framework/scripts/graphics/material.lua +++ b/Source/Asura.Framework/scripts/graphics/material.lua @@ -15,7 +15,7 @@ end function Material:ToAsset() end - + function Material:GetUniform(name) end 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) |