Repolode
KaijuEngine

KaijuEngine/kaiju

A 2D/3D game engine written in Go on Vulkan, with a built-in editor that is itself a game running in the engine.

Open-source alternative to:UnityGodot

Stars
4,725
Forks
209
Open issues
63
Last commit
4 days ago

What is it?

Kaiju is a game engine for building 2D and 3D games in Go (Golang), rendering through Vulkan. Its editor is built on the engine itself, and switching the editor to 2D mode is how 2D projects are made. Supported targets include Windows, Linux, Mac and Android.

The engine covers particle systems, skeletal skinning and sprite-sheet animation, a custom retained-mode UI with optional HTML/CSS markup, 3D physics, and music, sound effects and 3D sound sources powered by Soloud. Shaders update live when GLSL source changes, and editor plugins can be written in Go.

The project is under heavy development. The author describes the engine as production ready while the editor is not yet, and building from source requires Go, a C toolchain, Vulkan and prebuilt libraries from a submodule or manual builds of Soloud and Bullet3.

Key features

  • 012D and 3D rendering on Vulkan with a built-in editor
  • 02Particle systems and skeletal skinning animation
  • 03Custom retained-mode UI with optional HTML/CSS markup
  • 043D physics simulation
  • 05Positional 3D sound and music playback via Soloud
  • 06Live GLSL shader updates and Go-based editor plugins

Use cases

  • Building 2D or 3D games entirely in Go
  • Developers who want a Go-native engine instead of C# or C++ tooling
  • Prototyping games with fast edit-build-launch cycles
  • Creating Android or desktop game builds from one codebase

Quick start

  1. 1

    Clone the repository with pre-built libraries

    git clone --recurse-submodules https://github.com/KaijuEngine/kaiju.git
  2. 2

    Create the bin directory

    mkdir bin/
  3. 3

    Change into the source directory

    cd src
  4. 4

    Build the engine and editor

    go build -tags="debug,editor,filedrop" -o ../bin/ ./

Things to know

  • The README states the editor is work in progress and not production ready.
  • Building requires Go, C build tools, platform libraries and a Vulkan setup.
  • On Windows, you may need to install mingw to avoid missing libstdc++-6.dll errors.
  • The license is not clearly specified in the metadata.

Topics

FAQ

What is kaiju?
A 2D/3D game engine written in Go on Vulkan, with a built-in editor that is itself a game running in the engine. Kaiju is a game engine for building 2D and 3D games in Go (Golang), rendering through Vulkan. Its editor is built on the engine itself, and switching the editor to 2D mode is how 2D projects are made. Supported targets include Windows, Linux, Mac and Android.
Is kaiju free to use? What license does it have?
kaiju is open source under the Other license. Check the license terms before using it in commercial products.
Is kaiju still maintained?
Actively maintained. The last commit to kaiju was on Oct 16, 2026.
What can I use kaiju for?
Building 2D or 3D games entirely in Go Developers who want a Go-native engine instead of C# or C++ tooling Prototyping games with fast edit-build-launch cycles Creating Android or desktop game builds from one codebase
How do I install kaiju?
Clone the repository with pre-built libraries: git clone --recurse-submodules https://github.com/KaijuEngine/kaiju.git Create the bin directory: mkdir bin/ Change into the source directory: cd src Build the engine and editor: go build -tags="debug,editor,filedrop" -o ../bin/ ./
Where can I get kaiju?
The source code and installation instructions are on GitHub: https://github.com/KaijuEngine/kaiju

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects