finds.dev← search

// the find

g3n/engine

★ 3,097 · Go · BSD-2-Clause · updated Mar 2026

Go 3D Game Engine (http://g3n.rocks)

G3N is a 3D game engine written in Go, built on top of OpenGL and OpenAL. It targets developers who want to build 3D applications or games in Go without dropping into C++ or reaching for Unity. Not just a renderer — it ships a scene graph, GUI widgets, model loaders, and spatial audio.

PBR pipeline (Fresnel, geometric occlusion, microfacet distribution) is a meaningful inclusion for a Go-native engine — most would stop at Phong. glTF support makes it interoperable with the standard 3D toolchain, not just toy OBJ files. The scene graph API is clean and idiomatic Go: adding nodes to scenes, subscribing to events, and attaching materials follows patterns that feel natural to the language. Spatial audio via OpenAL is genuinely integrated, not bolted on — the listener and player abstractions are first-class.

Development has slowed significantly — last push was March 2026 but the commit history thins out well before that, and the physics engine is explicitly flagged as experimental and incomplete. WebAssembly support is described as '90% complete', which in practice means untested and unsupported. The dependency on cgo (OpenGL, OpenAL, Vorbis) makes cross-compilation painful and breaks pure-Go toolchains — this is a harder problem than the README suggests, especially on Windows where you need a specific MinGW build. Documentation is thin: the Getting Started guide is marked WIP, and most learning goes through the demo source code, which is not a substitute for a real manual.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →