pages/assets/garden_v-ecs_index.md.DYGQYRv1.js

2 lines
2.4 KiB
JavaScript
Raw Normal View History

import{u as s,c as n,j as e,a as o,k as a,ag as r,o as i,ax as l,ay as d,az as c}from"./chunks/framework.VBE0TPts.js";import{d as m}from"./chunks/git.data.DG5NumsR.js";const p=e("h1",{class:"p-name"},"V-ecs",-1),h=["innerHTML"],g=r('<hr><details><summary>Tags:</summary><a href="/garden/my-projects/index.md">My Projects</a></details><div class="img-container"><img src="'+l+'" title="screenshot.png"></div><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><div class="img-container"><img src="'+d+'" title="debug.png"></div><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;<a href="https://thepaperpilot.itch.io/sands-of-time" target="_blank" rel="noreferrer">Sands of Time</a>&quot;.</p><div class="img-container"><img src="'+c+'" title="sandsoftime.png"></div><p>The gameplay of Sands of Time was replicated in <a href="/garden/kronos/">Kronos</a> Chapter 2!</p>',10),T=JSON.parse('{"title":"V-ecs","description":"","frontmatter":{"public":"true","slug":"v-ecs","tags":["My Projects"],"title":"V-ecs","prev":false,"next":false},"headers":[],"relativePath":"garden/v-ecs/index.md","filePath":"garden/v-ecs/index.md"}'),u={name:"garden/v-ecs/index.md"},b=Object.assign(u,{setup(_){const t=s();return(f,v)=>(i(),n("div",null,[p,e("p",null,[o("209 words, ~1 minute read. "),e("span",{innerHTML:a(m)[`site/${a(t).page.value.relativePath}`]},null,8,h)]),g]))}});export{T as __pageData,b as default};