pages/assets/projects_vecs_index.md.8a5f3304.js

1 line
1.9 KiB
JavaScript

import{_ as e,c as t,o as s,d as a}from"./app.99998402.js";const o="/assets/screenshot.78830a30.png",n="/assets/debug.0a8c47b7.png",r="/assets/sandsoftime.ba63f865.png",w=JSON.parse('{"title":"V-ecs","description":"","frontmatter":{"title":"V-ecs"},"headers":[],"relativePath":"projects/vecs/index.md","lastUpdated":1670720797000}'),i={name:"projects/vecs/index.md"},d=a('<h1 id="v-ecs" tabindex="-1">V-ecs <a class="header-anchor" href="#v-ecs" aria-hidden="true">#</a></h1><p><img src="'+o+'" alt="V-ecs Screenshot"></p><p>V-ecs (pronounced &quot;Vex&quot;) 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.</p><p>The engine works with &quot;worlds&quot;, 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 &quot;worlds&quot; folder and displays a button for each of them.</p><p><img src="'+n+'" alt="Debug Menu"></p><p>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.</p><p>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 &quot;Sands of Time&quot;.</p><p><img src="'+r+'" alt="Sands of Time"></p>',8),l=[d];function c(p,h,m,u,_,g){return s(),t("div",null,l)}const y=e(i,[["render",c]]);export{w as __pageData,y as default};