{"repo":"dust-engine/pumicite","free":true,"listed":false,"github":"https://github.com/dust-engine/pumicite","clone":"git clone https://github.com/dust-engine/pumicite.git","description":"A Vulkan rendering framework for Bevy that preserves direct, low-level GPU control.","language":"Rust","stars":42,"topics":["bevy","vulkan"],"license":"Apache-2.0","category":"machine-learning","readme_excerpt":"Pumicite A Vulkan rendering framework for Bevy that preserves direct, low-level GPU control while using Bevy's ECS as the backbone for scheduling, concurrency, and resource management. Why Pumicite? Bevy's built-in renderer uses wgpu, which prioritizes safety over giving you direct control of the GPU. Pumicite takes a different approach: it provides you with the essential tools to write an efficient and flexible Vulkan application, but leaves enough room for you to fine tune your application and make the best out of Vulkan. Instead of building a render graph abstraction on top of Bevy, it treats Bevy systems as render graph nodes and system ordering as node dependencies . A schedule build pass automatically handles command buffer allocation, barrier insertion, and queue submission. You write Bevy systems that record Vulkan commands. Pumicite takes care of the rest. Key Features - System-as-Render-Graph -- Bevy systems are render graph nodes. The ECS scheduler handles dependency tracking, mutual exclusion, and parallel execution. A ScheduleBuildPass transforms system sets into vkQueueSubmit calls. - Coroutine-as-Render-Graph -- Record commands with Rust async/await, or ideally coroutines when it stabilizes. Yield points emit barriers and enable cross-future barrier merging. - GPUMutex -- Timeline semaphore-based cross-queue synchronization. Lock a resource on a command encoder and semaphore waits are inserted automatically. Safe deferred cleanup via a recycler thread. - Resour","default_branch":null,"files":null,"tree":[],"storefront":"/r/dust-engine","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/dust-engine/pumicite/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}