Freedom251 › Game Engine Software
A2Engine

What A2Engine is
A2Engine is a free, Unity-inspired 2D game engine built with Lua scripting and Box2D physics. It is designed for education at the University of Michigan in Ann Arbor, where students use it as a reference while building engines from scratch. Lua components attach to Actors, or gameobjects, and can use lifecycle functions such as OnStart, OnUpdate, and OnDestroy. These scripts run on a C++ core with built-in Box2D physics and particle systems. University of Michigan course material describes SDL graphics, a multi-language architecture, and portable code intended to build across operating systems without changes. The related EECS 404 course is programming-intensive for junior and senior computer science students interested in engine development. A2Engine provides a download, Google-document documentation, and three open-source sample games: The Whispering Crown, Donna the Donut Pilot, and Physics Obstacle Course. The site describes the engine as MIT-licensed and commercially usable, while keeping its source hidden for educational reasons.
Who it suits
A2Engine suits computer science students and educators studying engine architecture, Lua scripting, physics, and portable 2D development. It may also help learners examining the linked sample games and documentation.
What it does well
- Free to download and use
- Lua lifecycle scripting for Actors
- Built-in Box2D physics and particles
- Three open-source sample games
- Commercial use described as allowed
What to know first
- Source code remains hidden
- Designed primarily for education
- Documentation is hosted in a Google document
Verdict
A2Engine provides a focused teaching-oriented foundation for exploring 2D engine concepts with Lua, C++, Box2D, and SDL. Its examples and course context support learning, while hidden source limits inspection of the implementation.
Facts from A2Engine's own pages
- C++ core
- The Lua scripting layer runs on a C++ core with built-in Box2D physics and particle systems. · a2engine.org, 11 Oct 2026
- Core
- The Lua scripting layer runs atop a C++ core with built-in Box2D physics and fast particle systems. · a2engine.org, 12 Oct 2026
- Course context
- The University of Michigan EECS 404 course page describes a 2D, multi-language engine with Lua scripting atop a C++ core, and names Box2D and SDL among the libraries used in the course. · eecs404.com, 12 Oct 2026
- Creator and support
- The site credits Austin Yarger with designing and implementing A2Engine, with support from Nikhil Ghosh, and invites visitors to contact Yarger with questions. · a2engine.org, 11 Oct 2026
- Documentation
- The site links to A2 Engine documentation hosted as a Google document. · a2engine.org, 12 Oct 2026
- Download
- The site provides a download link for the engine. · a2engine.org, 12 Oct 2026
- Education
- The engine is designed for education at the University of Michigan, Ann Arbor. · a2engine.org, 11 Oct 2026
- Educational context
- The site says University of Michigan game development students build their own engines from scratch using A2 as a reference. · a2engine.org, 12 Oct 2026
- Examples
- The site links three sample games: The Whispering Crown, Donna the Donut Pilot, and Physics Obstacle Course. · a2engine.org, 12 Oct 2026
- Free plan
- Yes · a2engine.org, 24 Sept 2026
- Intended audience
- The course page describes EECS 404 as an upper-level computer science course for students who want to build game engines from scratch. · eecs404.com, 11 Oct 2026
- Intended learners
- The EECS 404 course page describes its engine architecture course as intended for junior and senior undergraduate computer science students and says it is programming-intensive. · eecs404.com, 12 Oct 2026
- License and source
- The site says the engine may be used for any purpose, including commercial use, while its source code remains hidden for educational reasons. · a2engine.org, 12 Oct 2026
- Lua architecture
- Components are written in Lua with lifecycle functions such as OnStart, OnUpdate and OnDestroy, then attached to Actors (gameobjects). · a2engine.org, 12 Oct 2026
- Lua components
- Components are written in Lua, use lifecycle functions such as OnStart and OnUpdate, and attach to Actors (gameobjects). · a2engine.org, 11 Oct 2026
- Maker
- The A2 Engine site credits Austin Yarger as its designer and implementer, with support from Nikhil Ghosh. · a2engine.org, 12 Oct 2026
- Middleware
- The University of Michigan course page describes integrating SDL graphics and Box2D physics with the engine. · eecs404.com, 11 Oct 2026
- Portability
- The course page describes writing multi-platform portable code that may build and run on various operating systems without changes. · eecs404.com, 11 Oct 2026
- Purpose
- A2 is a simple, Unity-inspired, Lua-based 2D game engine with Box2D physics, designed for education at the University of Michigan, Ann Arbor. · a2engine.org, 12 Oct 2026
- Sample games
- The site links to three open-source sample games: The Whispering Crown, Donna the Donut Pilot, and Physics Obstacle Course. · a2engine.org, 11 Oct 2026
- Scripting languages
- Lua · a2engine.org, 24 Sept 2026
- Source code model
- closed_source · a2engine.org, 24 Sept 2026
Where A2Engine stands on Freedom251
- Game Engine Software#81 of 92