The State Pattern | Game Engine Concepts #4 @GamesWithGabe
The State Pattern | Game Engine Concepts #4  @GamesWithGabe
Uploaded September 2020 | Updated September 2026, 3 weeks ago
Join the Discord: discord.gg/4tHeAkxNg7

The state pattern is a commonly used pattern that helps to encapsulate different portions of logic and make the transitions between using the different pieces of logic seamless. This pattern is used in Unity's animation machine's, but it can be used for even more purposes to help make your code more maintainable in the long run. This is based of the state pattern in Bob Nystrom's Game Programming Patterns.

State Pattern: gameprogrammingpatterns.com/state.html
Example Code: github.com/ambrosiogabe/JavaGeometryDash/blob/c36740f66c9494da5871b8b290a9dcc751ee9db1/src/com/jade/scripts/Player.java#L66
Animation Machine Example Code: github.com/codingminecraft/Mario/blob/master/src/main/java/com/component/AnimationMachine.java

0:00 Intro
0:30 What is the State Pattern?
6:30 Code Example

---------------------------------------------------------------------
Website: ambrosiogabe.github.io
Github: github.com/ambrosiogabe

Here are some books I recommend if you want to learn about game engine development more thoroughly. I do not profit off any of these sales, these are just some books that have helped me out :)

My Recommended Game Engine Books:
Game Engine Architecture: gameenginebook.com
Game Physics Cookbook (Read this before the next physics book): amazon.com/Game-Physics-Cookbook-Gabor-Szauer/dp/1787123669
Game Physics (Ian Millington): amazon.com/Game-Physics-Engine-Development-Commercial-Grade/dp/0123819768
Game Programming Patterns (Free): gameprogrammingpatterns.com

My Recommended Beginning Game Programming Books:
JavaScript Game Design: apress.com/gp/book/9781430247166

My Recommended Java Books:
Data Structures/Algorithms: amazon.com/Data-Structures-Algorithms-Java-6th-ebook/dp/B00JDRQF8C
LWJGL (Free, but I haven't read this thoroughly): lwjglgamedev.gitbooks.io/3d-game-development-with-lwjgl/content

Outro Music: bensound.com/royalty-free-music
The State Pattern | Game Engine Concepts #4Transformations | Coding Geometry Dash in Java #7Pillbox Colliders and Player Controllers | Coding a 2D Game Engine in Java #49Moving the Ball | Java Pong Part 6aHow I Debug Graphics Code | Game Engine Concepts #65 YEARS of Game Development | From no Programming Knowledge to thisHow to Debug OpenGL Programs? (Non-zero exit code status, uh oh) | Game Engine Concepts #2How to Raycast Against a Box (OBB) | Coding a 2D Physics Engine in Java #9Adding an Engine Runtime (Play/Stop Buttons) | Coding a 2D Game Engine in Java #39ImGui Docking in Java LWJGL | Coding a 2D Game Engine in Java #28Why C++ Scares the Crap Out of MeFor Loops | Python For Absolute Beginners #6
GamesWithGabe |

The State Pattern | Game Engine Concepts #4

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER