GitHub - willtobyte/carimbo: A 2D game engine developed in modern C++ using SDL, an Entity-Component-System (ECS) architecture, and Box2D. It features Lua scripting and is designed for web portability via WebAssembly

1 min read Original article ↗

Carimbo: A Modern, Cross-Platform 2D Game Engine
macOS Ubuntu WebAssembly Windows

Carimbo: A Modern, Cross-Platform 2D Game Engine

About

Carimbo is a simple yet complete 2D game engine written in modern C++23 using SDL. It is scriptable in Lua and was created during Rodrigo Delduca's spare time.

It is a spiritual successor to the Wintermoon framework, a project by the same author. It runs natively on Linux, Windows, macOS, and the web (via WebAssembly), and it also supports mobile platforms, including Android & iOS.

Name

"Carimbo" comes from the 🇧🇷 word for "stamp," and that is exactly what a 2D game engine does. It continuously stamps sprites onto the screen.

Under the hood

Carimbo doesn't reinvent the wheel; it uses the best libraries, such as boost, Box2D, EnTT, stb, simdjson, sol2, PhysFS, SDL, and OpenAL.

Documentation

See DOCUMENTATION.

Games

Games and demos created with the Carimbo engine are hosted at carimbo.games. They can be tested or played online without installation, thanks to WebAssembly technology supported by all modern browsers.

License

A simple, permissive license that offers complete commercial freedom—use, modify, and distribute your projects with ease—with minimal restrictions and a single attribution requirement. See LICENSE.

Building

See BUILDING.