Game Engine Fundamentals
A game engine is software that provides the runtime and tools for building interactive games. It organizes scenes, assets, input, rendering, physics, audio, and builds so you can concentrate on the rules and experience of your game.
itSoftware engineering | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Don't Panic
Don't Panic — Game Engine Fundamentals
A game engine is the reusable machinery that turns a project's rules, assets, input, and passing time into something a player can run. It does not arrive with your game inside it, mercifully. The game still needs its own rules, content, and decisions; the engine supplies the busy infrastructure that would otherwise demand a great many repeated arrangements of wires.
The first useful idea is composition. A level, player, menu, or enemy can be a scene: a reusable bit of structure. Inside it, smaller parts take jobs such as drawing, collision, sound, camera control, or movement. Godot calls these parts nodes. Unreal uses Actors and Components. The labels are different hats on the same coat rack, which is inconvenient only until you stop asking them to agree.
The second idea is the game loop. Input arrives. Game state changes. Simulation advances. Rendering prepares a frame. Then a player sees the result. The surprising bit is that the frame rate and the physics step are not one clock wearing two watches. A game can render at a changing rate, while physics needs an explicit update model because collision and motion affect the rules.
Give input actions names such as move left or interact, rather than making the rule about one key. Give collision categories names too. A layer says what an object is; a mask says what it tests. This sounds like filing labels on a cabinet until an object collides with the wrong thing, at which point the cabinet develops a personality and refuses to discuss it.
Choose an engine by the game that must ship: target platforms, 2D or 3D scope, team skills, language support, asset workflow, licensing, and deployment needs. Then make a vertical slice: one controllable object, one interaction, one playable scene, and one target build. It tests the route from scene to device before the project grows sufficiently confident to hide its problems behind scenery.
Continue with the Intro for the full architecture and tradeoffs, the Slides for the component map, and the Cheatsheet for the runtime and collision vocabulary. The Practice Reference turns the model into a Godot project. The Exercise asks that project to survive an exported build, because a build is where the engine stops being a diagram and starts being an argument with a real device.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://docs.godotengine.org/en/stable/getting_started/introduction/introduction_to_godot.html
Supports
- General-purpose 2D and 3D engine scope, editor tools, programming options, and target platforms
- https://docs.godotengine.org/en/stable/getting_started/step_by_step/nodes_and_scenes.html
Supports
- Nodes, scenes, trees, reusable scene instances, and main scenes
- https://docs.godotengine.org/en/stable/tutorials/physics/physics_introduction.html
Supports
- Collision detection and response, physics bodies, collision shapes, fixed-rate physics processing, layers, and masks
- https://docs.godotengine.org/en/stable/tutorials/inputs/inputevent.html
Supports
- Input events and named InputMap actions with multiple bindings
- https://docs.godotengine.org/en/stable/tutorials/export/exporting_projects.html
Supports
- Export presets and platform-specific project builds
- https://docs.unity3d.com/Manual/index.html
Supports
- Unity official manual as a comparative engine reference
- https://dev.epicgames.com/documentation/en-us/unreal-engine/actors-in-unreal-engine
Supports
- Actors, Components, transforms, and placeable world objects
- https://github.com/ChessMax/awesome-game-engines
Supports
- Armory3D, HaxeFlixel, Heaps.io, libGDX, and LÖVE ecosystem discovery
- https://unity.com/
Supports
- Unity product landscape entry
- https://www.unrealengine.com/
Supports
- Unreal Engine product landscape entry
- https://godotengine.org/
Supports
- Godot product landscape entry
- https://gamemaker.io/
Supports
- GameMaker product landscape entry
- https://www.construct.net/
Supports
- Construct product landscape entry
- https://defold.com/
Supports
- Defold product landscape entry
- https://www.cocos.com/creator
Supports
- Cocos Creator product landscape entry
- https://godotengine.org/article/open-source-godot-gets-two-years-old/
Supports
- Godot open-source release in 2014
- https://www.unrealengine.com/blog/welcome-to-unreal-engine-4?lang=en-US
Supports
- Unreal Engine 4 launch in March 2014
- https://unity.com/news/unity-5-here
Supports
- Unity 5 launch in March 2015
- https://godotengine.org/article/godot-engine-reaches-2-0-stable/
Supports
- Godot 2.0 stable release in February 2016
- https://godotengine.org/article/godot-3-0-released/
Supports
- Godot 3.0 release in January 2018
- https://godotengine.org/article/godot-3-1-released/
Supports
- Godot 3.1 release in March 2019
- https://www.unrealengine.com/blog/unreal-engine-5-is-now-available
Supports
- Unreal Engine 5 release in April 2022
- https://godotengine.org/article/godot-4-0-sets-sail/
Supports
- Godot 4.0 release in March 2023
- https://gafferongames.com/post/fix_your_timestep/
Supports
- Fixed timestep stability, time debt, and the spiral of death in real-time simulation
