Small Game Engines, Big Lessons: PolyEngine & Pill Engine
Room A (2B07) | Fri 23 Jan 11:40 a.m.–12:25 p.m.
Presented by
-
Jakub Duchniewicz
https://jduchniewicz.com
Jakub Duchniewicz currently works at Trustworthy Systems at UNSW, previously working on 5G NR layer 1 and custom ASICs. Living close to the metal with C/C++/Rust, Linux, FPGAs, drivers, and bootloaders.
Jakub co-founded Sticky Piston Studios, where he ships open source software and small games. He often participates at game jams and hackathons, writes technical posts, and cares about good quality code, efficient build systems and maintainable technical debt. After hours you can find him surfing/hiking or chasing fresh snowfalls, although not in Australia :(
Jakub Duchniewicz
https://jduchniewicz.com
Jakub Duchniewicz currently works at Trustworthy Systems at UNSW, previously working on 5G NR layer 1 and custom ASICs. Living close to the metal with C/C++/Rust, Linux, FPGAs, drivers, and bootloaders.
Jakub co-founded Sticky Piston Studios, where he ships open source software and small games. He often participates at game jams and hackathons, writes technical posts, and cares about good quality code, efficient build systems and maintainable technical debt. After hours you can find him surfing/hiking or chasing fresh snowfalls, although not in Australia :(
Abstract
Here be Game Engines.
They sound grand and complex, so we assume mere mortals can’t write one—or even contribute. This talk pushes back on that idea. It’s a grounded story of how working on an in-house engine taught me modern C++ and the value of the Entity-Component-System (ECS) pattern.
We’ll go from “What is a game engine?” and a quick look at the popular ones, to hands-on bits from two lightweight codebases: the C++ PolyEngine and the Rust Pill Engine. I’ll show how a small engine actually works—systems scheduling, components, assets—and share demos, war stories, and lessons learned from game jams where we often spent more time on the engine than the game (and how to avoid that).
Takeaways: knowledge of game engine structure, practical ECS patterns, some in-house tricks and a jam-tested plan for keeping scopes sane.
Audience: developers curious about engine internals; prior C++/Rust helpful but not required.
Here be Game Engines.
They sound grand and complex, so we assume mere mortals can’t write one—or even contribute. This talk pushes back on that idea. It’s a grounded story of how working on an in-house engine taught me modern C++ and the value of the Entity-Component-System (ECS) pattern.
We’ll go from “What is a game engine?” and a quick look at the popular ones, to hands-on bits from two lightweight codebases: the C++ PolyEngine and the Rust Pill Engine. I’ll show how a small engine actually works—systems scheduling, components, assets—and share demos, war stories, and lessons learned from game jams where we often spent more time on the engine than the game (and how to avoid that).
Takeaways: knowledge of game engine structure, practical ECS patterns, some in-house tricks and a jam-tested plan for keeping scopes sane. Audience: developers curious about engine internals; prior C++/Rust helpful but not required.