pages/site/garden/v-ecs/index.md
thepaperpilot 5ac040e4c9
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m12s
Make tags/tagged by/referenced by blocks use details/summary
2024-06-26 09:56:04 -05:00

2 KiB

public slug tags title prev next
true v-ecs
My Projects
V-ecs false false

V-ecs

209 words, ~1 minute read.


Tags:My Projects

V-ecs (pronounced "Vex") is a Vulkan-based engine I made for making highly moddable games and tools in Lua centered around the ECS design pattern and a work-stealing job system.

The engine works with "worlds", which are collections of systems and renderers. The engine comes with several worlds using systems and renderers I made, including a voxel world, an incremental game, and some test scenes. All of these include systems to render the fps as well as show a debug console by typing the grave key (`). The default world is a title screen that detects any worlds in the "worlds" folder and displays a button for each of them.

The original plans were to eventually put it on the steam workshop so people could more easily share their creations amongst each other, but I never became happy enough with the performance of the engine - the parallelization of the lua code involved a lot of overhead that severely limited performance.

Instead, I made a couple of worlds by myself - an infinite procedurally generated voxel world, a simple incremental game, and a more complex incremental game I call "Sands of Time".

The gameplay of Sands of Time was replicated in Kronos Chapter 2!