Logo Header

Rayngin ™

♦ 3D 6DF framework/engine for approach&click quests in rectangular chambers with objects consisting of balls. In Rust, uses SDL2 ♦
♦ 3D 6DF фреймворк/движок для approach&click квестов в прямоугольных камерах с объектами, состоящими из шаров. На Rust, использует SDL2 ♦
♦ 3D 6DF фреймворк/движок для approach&click квестів у прямокутних камерах із об'єктами, що складаються з куль. На Rust, використовує SDL2 ♦

(Pieces of music that are played during this video: “Amazonas” by Blonker, “Melinda (More or Less)” by Curved Air, “Flower” by Robin Guthrie.)


• Textured rectangular interconnected chambers with entities made of shaded color balls

• 3D movement with 6 degrees of freedom (move left/right, up/down, forward/backward and roll, pitch, yaw)

• Music, SFX, and voice

• Animations of entity position, orientation, and of its parts

• Inventory management, item usage

• Dialogues with branches

• Descriptions

• Different fonts for different elements of GUI

• Resources available to engine, rooms and entities, trajectories, text strings are defined by JSON files

• Save, Load, Help, About, Resume, New and Quit

• Multilanguage support

• Parallelized software rendering uses all available (logical) CPUs

• Cross-platform


Similarly to Quesfera, this is rather framework than engine.


From Download page, get data and binaries for your OS. Put these binaries into data dir. Edit "config.json" in any text editor to adjust the settings. Then run the binary.

(T shows some telemetry, TAB switches between “Dawn” and “Dusk” demo locations.)

To compile the engine from source or modify it, download the source from the same page or from crates.io/crates/rayngin.

Permissions & Credits & Licenses

You do not need any permissions from us to use and/or modify the engine. However, if you modify it, then please change its name before sharing with others. As for mentioning the original Rayngin, it's up to you.

Rayngin is under GPLv3. If you are going to make profit with its modifications, you should probably take into account the compatibility of the licenses for SDL2, Rust-SDL2 etc., and for used assets, which are different.


Currently there are, in alphabetical order, English and partially Ukrainian. To add your language, see "_/lingua/xyz" dir, where "xyz" is a 3-letter code from ISO 639-2.

When there is no localisation for a given language "xyz", the engine uses the default language, which is English.


• Game, not engine ☺

• Internalize Settings/external app with GUI to change them

• Use GPU to increase performance

Copyright © 2014–2021 Sunkware
Style:  NightWinterSea
VisitIPs is 👁watching👁 you⟩