mirror of
https://github.com/Ukendio/jecs.git
synced 2025-04-25 09:30:03 +00:00
Add benchmarks
This commit is contained in:
parent
3573dc2a85
commit
77c7a862ea
2 changed files with 78 additions and 4 deletions
|
@ -39,6 +39,29 @@ do
|
||||||
for _ in world:query(A, B, C, D, E, F, G, H) do
|
for _ in world:query(A, B, C, D, E, F, G, H) do
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
local e = world:entity()
|
||||||
|
world:set(e, A, true)
|
||||||
|
world:set(e, B, true)
|
||||||
|
world:set(e, C, true)
|
||||||
|
world:set(e, D, true)
|
||||||
|
world:set(e, E, true)
|
||||||
|
world:set(e, F, true)
|
||||||
|
world:set(e, G, true)
|
||||||
|
world:set(e, H, true)
|
||||||
|
|
||||||
|
BENCH("Update Data", function()
|
||||||
|
for _ = 1, 100 do
|
||||||
|
world:set(e, A, false)
|
||||||
|
world:set(e, B, false)
|
||||||
|
world:set(e, C, false)
|
||||||
|
world:set(e, D, false)
|
||||||
|
world:set(e, E, false)
|
||||||
|
world:set(e, F, false)
|
||||||
|
world:set(e, G, false)
|
||||||
|
world:set(e, H, false)
|
||||||
|
end
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
local D1 = ecs:component()
|
local D1 = ecs:component()
|
||||||
|
@ -132,6 +155,29 @@ do
|
||||||
for _ in world:query(A, B, C, D, E, F, G, H) do
|
for _ in world:query(A, B, C, D, E, F, G, H) do
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
local e = world:entity()
|
||||||
|
world:set(e, A, true)
|
||||||
|
world:set(e, B, true)
|
||||||
|
world:set(e, C, true)
|
||||||
|
world:set(e, D, true)
|
||||||
|
world:set(e, E, true)
|
||||||
|
world:set(e, F, true)
|
||||||
|
world:set(e, G, true)
|
||||||
|
world:set(e, H, true)
|
||||||
|
|
||||||
|
BENCH("Update Data", function()
|
||||||
|
for _ = 1, 100 do
|
||||||
|
world:set(e, A, false)
|
||||||
|
world:set(e, B, false)
|
||||||
|
world:set(e, C, false)
|
||||||
|
world:set(e, D, false)
|
||||||
|
world:set(e, E, false)
|
||||||
|
world:set(e, F, false)
|
||||||
|
world:set(e, G, false)
|
||||||
|
world:set(e, H, false)
|
||||||
|
end
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
local D1 = ecs:component()
|
local D1 = ecs:component()
|
||||||
|
|
|
@ -8,6 +8,8 @@ local jecs = require(ReplicatedStorage.Lib)
|
||||||
local ecr = require(ReplicatedStorage.DevPackages.ecr)
|
local ecr = require(ReplicatedStorage.DevPackages.ecr)
|
||||||
local newWorld = Matter.World.new()
|
local newWorld = Matter.World.new()
|
||||||
local ecs = jecs.World.new()
|
local ecs = jecs.World.new()
|
||||||
|
local mirror = require(ReplicatedStorage.mirror)
|
||||||
|
local mcs = mirror.World.new()
|
||||||
|
|
||||||
local A1 = Matter.component()
|
local A1 = Matter.component()
|
||||||
local A2 = Matter.component()
|
local A2 = Matter.component()
|
||||||
|
@ -35,6 +37,15 @@ local C5 = ecs:entity()
|
||||||
local C6 = ecs:entity()
|
local C6 = ecs:entity()
|
||||||
local C7 = ecs:entity()
|
local C7 = ecs:entity()
|
||||||
local C8 = ecs:entity()
|
local C8 = ecs:entity()
|
||||||
|
local E1 = mcs:entity()
|
||||||
|
local E2 = mcs:entity()
|
||||||
|
local E3 = mcs:entity()
|
||||||
|
local E4 = mcs:entity()
|
||||||
|
local E5 = mcs:entity()
|
||||||
|
local E6 = mcs:entity()
|
||||||
|
local E7 = mcs:entity()
|
||||||
|
local E8 = mcs:entity()
|
||||||
|
|
||||||
|
|
||||||
local registry2 = ecr.registry()
|
local registry2 = ecr.registry()
|
||||||
return {
|
return {
|
||||||
|
@ -44,7 +55,7 @@ return {
|
||||||
|
|
||||||
Functions = {
|
Functions = {
|
||||||
Matter = function()
|
Matter = function()
|
||||||
for i = 1, 50 do
|
for i = 1, 500 do
|
||||||
newWorld:spawn(
|
newWorld:spawn(
|
||||||
A1({ value = true }),
|
A1({ value = true }),
|
||||||
A2({ value = true }),
|
A2({ value = true }),
|
||||||
|
@ -60,8 +71,8 @@ return {
|
||||||
|
|
||||||
|
|
||||||
ECR = function()
|
ECR = function()
|
||||||
for i = 1, 50 do
|
local e = registry2.create()
|
||||||
local e = registry2.create()
|
for i = 1, 500 do
|
||||||
registry2:set(e, B1, {value = false})
|
registry2:set(e, B1, {value = false})
|
||||||
registry2:set(e, B2, {value = false})
|
registry2:set(e, B2, {value = false})
|
||||||
registry2:set(e, B3, {value = false})
|
registry2:set(e, B3, {value = false})
|
||||||
|
@ -78,7 +89,7 @@ return {
|
||||||
|
|
||||||
local e = ecs:entity()
|
local e = ecs:entity()
|
||||||
|
|
||||||
for i = 1, 50 do
|
for i = 1, 500 do
|
||||||
|
|
||||||
ecs:set(e, C1, {value = false})
|
ecs:set(e, C1, {value = false})
|
||||||
ecs:set(e, C2, {value = false})
|
ecs:set(e, C2, {value = false})
|
||||||
|
@ -89,6 +100,23 @@ return {
|
||||||
ecs:set(e, C7, {value = false})
|
ecs:set(e, C7, {value = false})
|
||||||
ecs:set(e, C8, {value = false})
|
ecs:set(e, C8, {value = false})
|
||||||
|
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
Mirror = function()
|
||||||
|
|
||||||
|
local e = ecs:entity()
|
||||||
|
|
||||||
|
for i = 1, 500 do
|
||||||
|
|
||||||
|
mcs:set(e, E1, {value = false})
|
||||||
|
mcs:set(e, E2, {value = false})
|
||||||
|
mcs:set(e, E3, {value = false})
|
||||||
|
mcs:set(e, E4, {value = false})
|
||||||
|
mcs:set(e, E5, {value = false})
|
||||||
|
mcs:set(e, E6, {value = false})
|
||||||
|
mcs:set(e, E7, {value = false})
|
||||||
|
mcs:set(e, E8, {value = false})
|
||||||
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue