summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
Diffstat (limited to 'Source')
-rw-r--r--Source/Asura.Framework/Component.lua10
-rw-r--r--Source/Asura.Framework/Graphics/Animator.lua8
-rw-r--r--Source/Asura.Framework/Graphics/mesh2d_renderer.lua4
-rw-r--r--Source/Asura.Framework/Graphics/particle_system.lua20
-rw-r--r--Source/Asura.Framework/Graphics/shape_renderer.lua13
-rw-r--r--Source/Asura.Framework/Graphics/sprite_renderer.lua2
-rw-r--r--Source/Asura.Framework/component.lua10
-rw-r--r--Source/Asura.Framework/entity.lua15
-rw-r--r--Source/Asura.Framework/filesystem/asset.lua13
-rw-r--r--Source/Asura.Framework/graphics/animator.lua8
-rw-r--r--Source/Asura.Framework/graphics/image.lua2
-rw-r--r--Source/Asura.Framework/graphics/mesh2d_renderer.lua4
-rw-r--r--Source/Asura.Framework/graphics/particle_system.lua20
-rw-r--r--Source/Asura.Framework/graphics/shader.lua5
-rw-r--r--Source/Asura.Framework/graphics/shape.lua12
-rw-r--r--Source/Asura.Framework/graphics/shape_renderer.lua13
-rw-r--r--Source/Asura.Framework/graphics/sprite_renderer.lua2
17 files changed, 121 insertions, 40 deletions
diff --git a/Source/Asura.Framework/Component.lua b/Source/Asura.Framework/Component.lua
index b498a36..2954743 100644
--- a/Source/Asura.Framework/Component.lua
+++ b/Source/Asura.Framework/Component.lua
@@ -1,8 +1,8 @@
-local Component = AsuraEngine.Class("Component")
+AsuraEngine.Component = AsuraEngine.Class("Component")
-AsuraEngine.Component = Component
+local Component = AsuraEngine.Component
---Component.gameobject = AsuraEngine.Type.GameObject
+--Component.entity = AsuraEngine.Type.GameObject
--派生新的组件
function Component.Sub(cname)
@@ -11,7 +11,7 @@ function Component.Sub(cname)
end
function Component:Ctor(go)
- self.gameobject = go
+ self.entity = go
end
function Component:OnEvent(e)
@@ -25,5 +25,3 @@ end
function Component:OnDraw()
end
-
-return Component \ No newline at end of file
diff --git a/Source/Asura.Framework/Graphics/Animator.lua b/Source/Asura.Framework/Graphics/Animator.lua
index 8c8a185..98baf0d 100644
--- a/Source/Asura.Framework/Graphics/Animator.lua
+++ b/Source/Asura.Framework/Graphics/Animator.lua
@@ -2,9 +2,9 @@ AsuraEngine.Animator = AsuraEngine.Component.Sub("Animator")
local Animator = AsuraEngine.Animator
-function Animator:Ctor(go, animation)
- self.base(go)
- self.spriteRenderer = go:GetSpriteRenderer()
+function Animator:Ctor(entity, animation)
+ self.base(entity)
+ self.spriteRenderer = entity:GetSpriteRenderer()
self.animation = animation
end
@@ -23,3 +23,5 @@ end
function Animator:OnRender()
end
+
+return Animator \ No newline at end of file
diff --git a/Source/Asura.Framework/Graphics/mesh2d_renderer.lua b/Source/Asura.Framework/Graphics/mesh2d_renderer.lua
index 01f0d90..debfd37 100644
--- a/Source/Asura.Framework/Graphics/mesh2d_renderer.lua
+++ b/Source/Asura.Framework/Graphics/mesh2d_renderer.lua
@@ -1,5 +1,5 @@
-local Mesh2DRenderer = Class()
-
+local Mesh2DRenderer = AsuraEngine.Component.Sub("Mesh2DRenderer")
+AsuraEngine.Mesh2DRenderer = Mesh2DRenderer
return Mesh2DRenderer \ No newline at end of file
diff --git a/Source/Asura.Framework/Graphics/particle_system.lua b/Source/Asura.Framework/Graphics/particle_system.lua
index a5f8015..17d52e7 100644
--- a/Source/Asura.Framework/Graphics/particle_system.lua
+++ b/Source/Asura.Framework/Graphics/particle_system.lua
@@ -1,6 +1,20 @@
-local ParticleSystem = AsuraEngine.Component.Sub("ParticleSystem")
-AsuraEngine.ParticleSystem = ParticleSystem
+require "graphics.sprite_renderer"
-function ParticleSystem.Ctor(self)
+AsuraEngine.ParticleSystem = AsuraEngine.Component.Sub("ParticleSystem")
+
+local ParticleSystem = AsuraEngine.ParticleSystem
+
+function ParticleSystem.Ctor(self, entity, def)
+ self.base(entity)
+ self.spriteRenderer = AsuraEngine.SpriteRenderer.New()
+end
+
+function ParticleSystem.OnRenderer()
end
+
+function ParticleSystem.OnUpdate(dt)
+
+end
+
+return ParticleSystem \ No newline at end of file
diff --git a/Source/Asura.Framework/Graphics/shape_renderer.lua b/Source/Asura.Framework/Graphics/shape_renderer.lua
index e69de29..8c002a2 100644
--- a/Source/Asura.Framework/Graphics/shape_renderer.lua
+++ b/Source/Asura.Framework/Graphics/shape_renderer.lua
@@ -0,0 +1,13 @@
+AsuraEngine.ShapeRenderer = AsuraEngine.Component.Sub("ShapeRenderer")
+
+local ShapeRenderer = AsuraEngine.ShapeRenderer
+
+function ShapeRenderer.OnRenderer()
+
+end
+
+function ShapeRenderer.OnUpdate(dt)
+
+end
+
+return ShapeRenderer \ No newline at end of file
diff --git a/Source/Asura.Framework/Graphics/sprite_renderer.lua b/Source/Asura.Framework/Graphics/sprite_renderer.lua
index 925e8b1..93937d7 100644
--- a/Source/Asura.Framework/Graphics/sprite_renderer.lua
+++ b/Source/Asura.Framework/Graphics/sprite_renderer.lua
@@ -10,3 +10,5 @@ end
function SpriteRenderer:OnRender()
end
+
+return SpriteRenderer \ No newline at end of file
diff --git a/Source/Asura.Framework/component.lua b/Source/Asura.Framework/component.lua
index b498a36..2954743 100644
--- a/Source/Asura.Framework/component.lua
+++ b/Source/Asura.Framework/component.lua
@@ -1,8 +1,8 @@
-local Component = AsuraEngine.Class("Component")
+AsuraEngine.Component = AsuraEngine.Class("Component")
-AsuraEngine.Component = Component
+local Component = AsuraEngine.Component
---Component.gameobject = AsuraEngine.Type.GameObject
+--Component.entity = AsuraEngine.Type.GameObject
--派生新的组件
function Component.Sub(cname)
@@ -11,7 +11,7 @@ function Component.Sub(cname)
end
function Component:Ctor(go)
- self.gameobject = go
+ self.entity = go
end
function Component:OnEvent(e)
@@ -25,5 +25,3 @@ end
function Component:OnDraw()
end
-
-return Component \ No newline at end of file
diff --git a/Source/Asura.Framework/entity.lua b/Source/Asura.Framework/entity.lua
index 0edded4..b41d365 100644
--- a/Source/Asura.Framework/entity.lua
+++ b/Source/Asura.Framework/entity.lua
@@ -1,10 +1,11 @@
---[[
-实体,作为scene中的实体存在。
-]]
+--
+-- 实体,作为scene中的实体存在。Scene中唯一管理的就是实体entity,游戏里的所有component都依附于entity存在,包括camera组件。
+--
require "transform"
-local Entity = AsuraEngine.Asset.Sub("Entity")
-AsuraEngine.Entity = Entity
+AsuraEngine.Entity = AsuraEngine.Asset.Sub("Entity")
+
+local Entity = AsuraEngine.Entity
function Entity:Ctor()
self.transform = AsuraEngine.Transform.New()
@@ -19,12 +20,12 @@ function Entity:AddComponent(type, name)
self.components[cname] = compoennt
end
---根据组件名拿到组件
+-- 根据组件名拿到组件
function Entity:GetComponent(name)
return self.components[name]
end
---根据组件类型拿到组件
+-- 根据组件类型拿到组件
function Entity:GetComponentByType(tname)
end
diff --git a/Source/Asura.Framework/filesystem/asset.lua b/Source/Asura.Framework/filesystem/asset.lua
index b5f0664..afe4ea6 100644
--- a/Source/Asura.Framework/filesystem/asset.lua
+++ b/Source/Asura.Framework/filesystem/asset.lua
@@ -1,5 +1,14 @@
-local Asset = AsuraEngine.Class("Asset")
-AsuraEngine.Asset = Asset
+--
+-- 游戏资源类需要继承Asset类,引擎读取.asset文件寻找对应的loader加载进游戏生成对应的Asset派生类对象。对于脚本,不会
+-- 生成对应的对象,而是直接运行脚本将结果保存。
+--
+AsuraEngine.Asset = AsuraEngine.Class("Asset")
+
+local Asset = AsuraEngine.Asset
+
+function Asset.Ctor(self)
+ self.guid = nil
+end
--获得资源编号
function Asset.GetGUID(self)
diff --git a/Source/Asura.Framework/graphics/animator.lua b/Source/Asura.Framework/graphics/animator.lua
index 8c8a185..98baf0d 100644
--- a/Source/Asura.Framework/graphics/animator.lua
+++ b/Source/Asura.Framework/graphics/animator.lua
@@ -2,9 +2,9 @@ AsuraEngine.Animator = AsuraEngine.Component.Sub("Animator")
local Animator = AsuraEngine.Animator
-function Animator:Ctor(go, animation)
- self.base(go)
- self.spriteRenderer = go:GetSpriteRenderer()
+function Animator:Ctor(entity, animation)
+ self.base(entity)
+ self.spriteRenderer = entity:GetSpriteRenderer()
self.animation = animation
end
@@ -23,3 +23,5 @@ end
function Animator:OnRender()
end
+
+return Animator \ No newline at end of file
diff --git a/Source/Asura.Framework/graphics/image.lua b/Source/Asura.Framework/graphics/image.lua
index ad2e1a9..be55dbd 100644
--- a/Source/Asura.Framework/graphics/image.lua
+++ b/Source/Asura.Framework/graphics/image.lua
@@ -34,4 +34,4 @@ end
--image不可再编辑器编辑,所以没有ToAsset方法
--function Image.ToAsset()
---end
+--end \ No newline at end of file
diff --git a/Source/Asura.Framework/graphics/mesh2d_renderer.lua b/Source/Asura.Framework/graphics/mesh2d_renderer.lua
index 01f0d90..debfd37 100644
--- a/Source/Asura.Framework/graphics/mesh2d_renderer.lua
+++ b/Source/Asura.Framework/graphics/mesh2d_renderer.lua
@@ -1,5 +1,5 @@
-local Mesh2DRenderer = Class()
-
+local Mesh2DRenderer = AsuraEngine.Component.Sub("Mesh2DRenderer")
+AsuraEngine.Mesh2DRenderer = Mesh2DRenderer
return Mesh2DRenderer \ No newline at end of file
diff --git a/Source/Asura.Framework/graphics/particle_system.lua b/Source/Asura.Framework/graphics/particle_system.lua
index a5f8015..17d52e7 100644
--- a/Source/Asura.Framework/graphics/particle_system.lua
+++ b/Source/Asura.Framework/graphics/particle_system.lua
@@ -1,6 +1,20 @@
-local ParticleSystem = AsuraEngine.Component.Sub("ParticleSystem")
-AsuraEngine.ParticleSystem = ParticleSystem
+require "graphics.sprite_renderer"
-function ParticleSystem.Ctor(self)
+AsuraEngine.ParticleSystem = AsuraEngine.Component.Sub("ParticleSystem")
+
+local ParticleSystem = AsuraEngine.ParticleSystem
+
+function ParticleSystem.Ctor(self, entity, def)
+ self.base(entity)
+ self.spriteRenderer = AsuraEngine.SpriteRenderer.New()
+end
+
+function ParticleSystem.OnRenderer()
end
+
+function ParticleSystem.OnUpdate(dt)
+
+end
+
+return ParticleSystem \ No newline at end of file
diff --git a/Source/Asura.Framework/graphics/shader.lua b/Source/Asura.Framework/graphics/shader.lua
index d381575..b719d2b 100644
--- a/Source/Asura.Framework/graphics/shader.lua
+++ b/Source/Asura.Framework/graphics/shader.lua
@@ -1,5 +1,6 @@
-local Shader = AsuraEngine.Asset.Sub("Shader")
-AsuraEngine.Shader = Shader
+AsuraEngine.Shader = AsuraEngine.Asset.Sub("Shader")
+
+local Shader = AsuraEngine.Shader
function Shader.Ctor(self, vert, frag)
local simShader = AsuraEngine.simShader(vert, frag)
diff --git a/Source/Asura.Framework/graphics/shape.lua b/Source/Asura.Framework/graphics/shape.lua
index e69de29..6d737f0 100644
--- a/Source/Asura.Framework/graphics/shape.lua
+++ b/Source/Asura.Framework/graphics/shape.lua
@@ -0,0 +1,12 @@
+--
+-- 2D图形
+--
+AsuraEngine.Shape = AsuraEngine.Asset.Sub("Shape")
+
+local Shape = AsuraEngine.Shape
+
+function Shape.Ctor(self)
+
+end
+
+return Shape \ No newline at end of file
diff --git a/Source/Asura.Framework/graphics/shape_renderer.lua b/Source/Asura.Framework/graphics/shape_renderer.lua
index e69de29..8c002a2 100644
--- a/Source/Asura.Framework/graphics/shape_renderer.lua
+++ b/Source/Asura.Framework/graphics/shape_renderer.lua
@@ -0,0 +1,13 @@
+AsuraEngine.ShapeRenderer = AsuraEngine.Component.Sub("ShapeRenderer")
+
+local ShapeRenderer = AsuraEngine.ShapeRenderer
+
+function ShapeRenderer.OnRenderer()
+
+end
+
+function ShapeRenderer.OnUpdate(dt)
+
+end
+
+return ShapeRenderer \ No newline at end of file
diff --git a/Source/Asura.Framework/graphics/sprite_renderer.lua b/Source/Asura.Framework/graphics/sprite_renderer.lua
index 925e8b1..93937d7 100644
--- a/Source/Asura.Framework/graphics/sprite_renderer.lua
+++ b/Source/Asura.Framework/graphics/sprite_renderer.lua
@@ -10,3 +10,5 @@ end
function SpriteRenderer:OnRender()
end
+
+return SpriteRenderer \ No newline at end of file