The highest level course offered at RP4K: experienced students learn how to make a capable 2D c++ Game Engine. The engine features an
SDL2 core and renderer, a rapid-prototyping friendly
Entity / Component / System model,
Box2D Physics, an
Event System,
JSON Scene loading, and
Lua run-time scripting. Students expand their C++ knowledge, and get introduced to Software Engineering fundamentals like working with the
command line, backing up projects and coordinating with
Version Control and
object-oriented design patters.
Chapters:
- Visual Studio 2012 Project Creation, Command Line, Git, and BitBucket
- Project Dependencies, Starting the Engine & The Singleton Pattern
- Systems, Setting up the Renderer
- The Entity Component System Model
- The Rendering System
- Loading Scenes with JSON & Separating the Game from the Engine
- Input
- Events System
- Physics System with Box2D
- Behaviour System & Lua Scripting
Tool & Library Topics:
- Adding External Libraries to Visual Studio Projects
- Debug vs. Release Builds
- Intro to the Command Line using Bash
- Intro to Version Control and Project Backup using Git & BitBucket
- SDL2 (Window Creation, 2D Rendering, Image & Texture Loading, Player Input)
- RapidJSON (Scene Loading & JSON Parsing)
- Lua (Run-tine Entity Behaviour Scripting)
- LuaCPPInterface (Lua / C++ Binding)