diff options
Diffstat (limited to 'Source/Asura.Framework/graphics')
-rw-r--r-- | Source/Asura.Framework/graphics/canvas.lua | 18 | ||||
-rw-r--r-- | Source/Asura.Framework/graphics/image.lua | 37 | ||||
-rw-r--r-- | Source/Asura.Framework/graphics/material.lua | 11 | ||||
-rw-r--r-- | Source/Asura.Framework/graphics/mesh2d.lua (renamed from Source/Asura.Framework/graphics/canvas_renderer.lua) | 0 | ||||
-rw-r--r-- | Source/Asura.Framework/graphics/shader.lua | 40 | ||||
-rw-r--r-- | Source/Asura.Framework/graphics/shape.lua | 0 | ||||
-rw-r--r-- | Source/Asura.Framework/graphics/sprite.lua | 10 |
7 files changed, 110 insertions, 6 deletions
diff --git a/Source/Asura.Framework/graphics/canvas.lua b/Source/Asura.Framework/graphics/canvas.lua new file mode 100644 index 0000000..b0a2cfb --- /dev/null +++ b/Source/Asura.Framework/graphics/canvas.lua @@ -0,0 +1,18 @@ +local Canvas = AsuraEngine.Component.Sub("Canvas") +AsuraEngine.Canvas = Canvas + +function Canvas.Ctor(self, width, height) + self.simCanvas = AsuraEngine.SimCanvas.New(width, height) + self.width = width + self.height = height +end + +function Canvas.OnEnable(self) + +end + +function Canvas.OnDisable(self) + +end + + diff --git a/Source/Asura.Framework/graphics/image.lua b/Source/Asura.Framework/graphics/image.lua new file mode 100644 index 0000000..ad2e1a9 --- /dev/null +++ b/Source/Asura.Framework/graphics/image.lua @@ -0,0 +1,37 @@ +-- 图片资源 +local Image = AsuraEngine.Asset.Sub("Image") +AsuraEngine.Image = Image + +function Image.Ctor(self, path) + local simImage = AsuraEngine.SimImage.New(path) + local w, h = simImage:GetSize() + self.simImage = simImage + self.width = w + self.height = h +end + +function Image.GetWidth(self) + return self.simImage.GetWidth() +end + +function Image.GetHeight(self) + return self.simImage.GetHeight() +end + +function Image.GetSize(self) + return self.simImage.GetSize() +end + +--获得x,y位置的颜色值 +function Image.GetColor(self, x, y) + return self.simImage.GetColor(x, y) +end + +--获得所有像素,返回到一个table里 +function Image.GetPixels(self) + return self.simImage:GetPixels() +end + +--image不可再编辑器编辑,所以没有ToAsset方法 +--function Image.ToAsset() +--end diff --git a/Source/Asura.Framework/graphics/material.lua b/Source/Asura.Framework/graphics/material.lua index 0ba970c..e50b273 100644 --- a/Source/Asura.Framework/graphics/material.lua +++ b/Source/Asura.Framework/graphics/material.lua @@ -1,10 +1,9 @@ ---[[ -material是shader的代理 -]] -local Material = AsuraEngine.Class() +--material是shader的代理 +local Material = AsuraEngine.Asset.Sub("Material") function Material:Ctor() - + self.uniforms = {} --uniform变量和值 + self.isShared = false end function Material:ToAsset() @@ -15,7 +14,7 @@ function Material:GetUniform(name) end -function Material:SendFloat() +function Material:SetFloat() end diff --git a/Source/Asura.Framework/graphics/canvas_renderer.lua b/Source/Asura.Framework/graphics/mesh2d.lua index e69de29..e69de29 100644 --- a/Source/Asura.Framework/graphics/canvas_renderer.lua +++ b/Source/Asura.Framework/graphics/mesh2d.lua diff --git a/Source/Asura.Framework/graphics/shader.lua b/Source/Asura.Framework/graphics/shader.lua new file mode 100644 index 0000000..d381575 --- /dev/null +++ b/Source/Asura.Framework/graphics/shader.lua @@ -0,0 +1,40 @@ +local Shader = AsuraEngine.Asset.Sub("Shader") +AsuraEngine.Shader = Shader + +function Shader.Ctor(self, vert, frag) + local simShader = AsuraEngine.simShader(vert, frag) + self.simShader = shader + +end + +function Shader.SendVec2(self, name, vec2) + +end + +function Shader.SendVec3(self, name, vec3) + +end + +function Shader.SendVec4(self, name, vec4) + +end + +function Shader.SendTexture(self, name, tex) + +end + +function Shader.SendFloat(self, name, number) + +end + +function Shader.SendInteger(self, name, integer) + +end + +function Shader.SendColor(self, name, color) + +end + +function Shader.SendMat44(self, name, mat44) + +end diff --git a/Source/Asura.Framework/graphics/shape.lua b/Source/Asura.Framework/graphics/shape.lua new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/Source/Asura.Framework/graphics/shape.lua diff --git a/Source/Asura.Framework/graphics/sprite.lua b/Source/Asura.Framework/graphics/sprite.lua new file mode 100644 index 0000000..745138e --- /dev/null +++ b/Source/Asura.Framework/graphics/sprite.lua @@ -0,0 +1,10 @@ +local Sprite = AsuraEngine.Asset.Sub("Sprite") +AsuraEngine.Sprite = Sprite + +function Sprite.Ctor(self, image) + self.image = image +end + +function Sprite.ToAsset(self) + +end
\ No newline at end of file |