diff options
Diffstat (limited to 'Resources/DefaultContent/Libraries')
9 files changed, 50 insertions, 16 deletions
diff --git a/Resources/DefaultContent/Libraries/GameLab/Class.lua b/Resources/DefaultContent/Libraries/GameLab/Class.lua index 5a3a962..62369e1 100644 --- a/Resources/DefaultContent/Libraries/GameLab/Class.lua +++ b/Resources/DefaultContent/Libraries/GameLab/Class.lua @@ -1,11 +1,14 @@ -- Declare class
-local _class = function (className, pkg)
+local _class = function (className)
local class = {}
+ local pkgName = (type(className) == "string") and string.match(className, "^(.+)%.%w+$") or ""
+ local shortName = (type(className) == "string") and string.match(className, "%.*(%w+)$") or ""
class._type = { -- 类型元数据,GameLab的类型都会包含这些
mode = "lua",
- name = className,
- package = pkg,
+ name = shortName or "",
+ package = pkgName or "",
+ fullName = className
}
class.__index = class
class.New = function(...)
@@ -17,11 +20,11 @@ local _class = function (className, pkg) return class
end
--- 提供ClassName和PkgName作为类型的元数据,可以留空,但是最好提供
-local Class = function(className, pkg)
- local cls = _class(className, pkg)
- cls.Extend = function(childName, childPkg)
- local child = _class(childName, childPkg)
+-- 提供ClassName和PkgName作为类型的元数据,可以留空,但是最好提供,会作为类型判断的依据
+local Class = function(className)
+ local cls = _class(className)
+ cls.Extend = function(childName)
+ local child = _class(childName)
if cls then
setmetatable(child, cls)
child.base = cls
diff --git a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Math.lua b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Math.lua index 4ec067e..0bbe7f0 100644 --- a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Math.lua +++ b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Math.lua @@ -1,6 +1,6 @@ -- 数学函数 -GameLab.Engine.Math = GameLab.Engine.Math or {} -local m = GameLab.Engine.Math +local m = GameLab.Engine.Math or {} +GameLab.Engine.Math = m m.Abs = function(n) diff --git a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Matrix3x3.lua b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Matrix3x3.lua index f7dc352..b0aad47 100644 --- a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Matrix3x3.lua +++ b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Matrix3x3.lua @@ -1,4 +1,4 @@ -local Matrix3x3 = GameLab.Class("Matrix3x3", "GameLab.Engine.Math") +local Matrix3x3 = GameLab.Class("GameLab.Engine.Math.Matrix3x3") Matrix3x3.Ctor = function(self) diff --git a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Matrix4x4.lua b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Matrix4x4.lua index e69de29..8e4d70a 100644 --- a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Matrix4x4.lua +++ b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Matrix4x4.lua @@ -0,0 +1,31 @@ +local Matrix4x4 = GameLab.Class("GameLab.Engine.Math.Matrix4x4") + +Matrix4x4.Ctor = function(self) + for r = 0, 3 do + for c = 0, 3 do + self["m"..r..c] = 0 + end + end +end + +Matrix4x4.SetRow = function(self, row, value) + +end + +Matrix4x4.SetColum = function(self, colum, value) + +end + +Matrix4x4.Set = function(self, row, colum ,value) + +end + +Matrix4x4.GetColum = function(self, colum) + +end + +Matrix4x4.GetRow = function(self, row) + +end + +return Matrix4x4
\ No newline at end of file diff --git a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector2.lua b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector2.lua index dc961b2..5697797 100644 --- a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector2.lua +++ b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector2.lua @@ -1,4 +1,4 @@ -local Vector2 = GameLab.Class("Vector2", "GameLab.Engine.Math")
+local Vector2 = GameLab.Class("GameLab.Engine.Math.Vector2")
diff --git a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector3.lua b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector3.lua index f355a65..caa28a4 100644 --- a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector3.lua +++ b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector3.lua @@ -1,4 +1,4 @@ -local Vector3 = GameLab.Class("Vector3", "GameLab.Engine.Math")
+local Vector3 = GameLab.Class("GameLab.Engine.Math.Vector3")
diff --git a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector4.lua b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector4.lua index 84a114f..e232c93 100644 --- a/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector4.lua +++ b/Resources/DefaultContent/Libraries/GameLab/Engine/Math/Vector4.lua @@ -1,4 +1,4 @@ -local Vector4 = GameLab.Class("Vector4", "GameLab.Engine.Math")
+local Vector4 = GameLab.Class("GameLab.Engine.Math.Vector4")
Vector4.Ctor = function (self, x, y, z, w)
self.x = x or 0
diff --git a/Resources/DefaultContent/Libraries/GameLab/Engine/Rendering/Color.lua b/Resources/DefaultContent/Libraries/GameLab/Engine/Rendering/Color.lua index 56063f6..fb3e773 100644 --- a/Resources/DefaultContent/Libraries/GameLab/Engine/Rendering/Color.lua +++ b/Resources/DefaultContent/Libraries/GameLab/Engine/Rendering/Color.lua @@ -1,4 +1,4 @@ -local Color = GameLab.Class("Color", "GameLab.Engine.Rendering") +local Color = GameLab.Class("GameLab.Engine.Rendering.Color") GameLab.Engine.Rendering.Color = Color -- 避免require循环 local Color32 = GameLab.Engine.Rendering.Color32 or require("GameLab.Engine.Rendering.Color32") diff --git a/Resources/DefaultContent/Libraries/GameLab/Engine/Rendering/Color32.lua b/Resources/DefaultContent/Libraries/GameLab/Engine/Rendering/Color32.lua index ce3967c..c17187a 100644 --- a/Resources/DefaultContent/Libraries/GameLab/Engine/Rendering/Color32.lua +++ b/Resources/DefaultContent/Libraries/GameLab/Engine/Rendering/Color32.lua @@ -1,4 +1,4 @@ -local Color32 = GameLab.Class("Color32", "GameLab.Engine.Rendering") +local Color32 = GameLab.Class("GameLab.Engine.Rendering.Color32") GameLab.Engine.Rendering.Color32 = Color32 -- 避免require循环 local Color = GameLab.Engine.Rendering.Color or require("GameLab.Engine.Rendering.Color") |