No description
  • C 94.6%
  • GLSL 3.3%
  • CMake 2.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-06 16:55:26 -07:00
assets (partially) update types for UIComponent to render text 2025-10-08 21:58:46 -07:00
engine chore/createinfo_structs: renderer_init, and adding components 2026-02-22 03:52:10 -08:00
examples chore/createinfo_structs: renderer_init, and adding components 2026-02-22 03:52:10 -08:00
.clang-format add clang-format 2025-10-02 22:51:28 -07:00
.gitignore add clang-format 2025-10-02 22:51:28 -07:00
CMakeLists.txt make it a component 2025-10-08 07:15:00 -07:00
LICENSE.md docs: update readme 2025-11-03 16:30:41 -08:00
README.md chore: replace GitHub links with Forgejo (git.bhm.gg) 2026-10-06 16:55:26 -07:00

Palladia Engine

(Formerly Asmadi)

A Simple, ECS-based game engine written in Zig using SDL3's GPU API

Overview

The Palladia Engine is a game engine using SDL3's GPU API to create 3D accelerated graphical applications with Vulkan (and soon hopefully WebGPU). I might add Metal support if I feel like it.

Note: Work on Palladia (namely the Zig rewrite) is paused to replace the existing MicroUI integration with Slayer, a flexible custom UI library. The Python prototype needs to be replaced with a Zig implementation.

Piru may end up being the engine's scripting language (thoughit is not a blocker and will have to wait much longer).

Goals

The main goal with this project was to learn graphics programming. In game development, I often find myself knowing exactly what I want the code to look like, but unsure of how to tell the game engine how to do that. So, I figured that several hundred to several thousand hours of trial and error should save me about thirty minutes of reading the Godot Documentation.

Features

  • Three.js-like API for creating simple geometries
  • Random number generation and spline tools
  • Premade Materials
  • Character Controllers
  • Physics
    • TinyPhysicsEngine-like soft body physics for embedded devices
    • SDF-based primitive-only collision system
    • Conventional primitive and mesh collision system with soft body support
  • Lighting: point lights and ambient lights
  • Performance Profiler
  • Software Rasterizer
  • Fixed-Point Software Rasterizer