Force Generators (Abstracting Forces) | Coding a 2D Physics Engine in Java #12 @GamesWithGabe
Force Generators (Abstracting Forces) | Coding a 2D Physics Engine in Java #12  @GamesWithGabe
Uploaded August 2020 | Updated September 2026, 3 weeks ago
Join the Discord: discord.gg/4tHeAkxNg7

In this episode, I go over this concept that was created by Ian Millington (to the best of my knowledge), that allows us to abstract the application of forces into a generic container. This makes creating different types of forces to apply to objects in the game world very easy. We will eventually use this to create gravity, drag force, spring force, and possibly buoyancy forces. I also go over some helper functions that will make our lives easier in the future.

Source Code: github.com/codingminecraft/MarioYoutube/tree/2853bf6edce7775d87eb36fbcb74ce1044bf7edf
Unit Tests: raw.githubusercontent.com/codingminecraft/MarioYoutube/2853bf6edce7775d87eb36fbcb74ce1044bf7edf/src/test/java/physics2d/CollisionDetectorTests.java

0:00 Intro
0:42 What are Force Generators?
5:40 Cleaning Up Some Code
10:50 Implementing the Force Generators

---------------------------------------------------------------------
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
Force Generators (Abstracting Forces) | Coding a 2D Physics Engine in Java #12Making the Snake Grow | Java Snake Part 9How does Font Rendering Work? | Game Engine Concepts #1Buffers in OpenGL | How to Code Minecraft Ep. 2Variable Length Jumps | Coding a 2D Game Engine in Java #50Separating Axis Theorem EXPLAINED | Coding a 2D Physics Engine in Java #11The 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 this
GamesWithGabe |

Force Generators (Abstracting Forces) | Coding a 2D Physics Engine in Java #12

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER