Force Generators (Abstracting Forces) | Coding a 2D Physics Engine in Java #12
Join the Discord: https://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: https://github.com/codingminecraft/MarioYoutube/tree/2853bf6edce7775d87eb36fbcb74ce1044bf7edf
Unit Tests: https://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: https://ambrosiogabe.github.io/
Github: https://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: https://www.gameenginebook.com/
Game Physics Cookbook (Read this before the next physics book): https://www.amazon.com/Game-Physics-Cookbook-Gabor-Szauer/dp/1787123669
Game Physics (Ian Millington): https://www.amazon.com/Game-Physics-Engine-Development-Commercial-Grade/dp/0123819768
Game Programming Patterns (Free): https://gameprogrammingpatterns.com/
My Recommended Beginning Game Programming Books:
JavaScript Game Design: https://www.apress.com/gp/book/9781430247166
My Recommended Java Books:
Data Structures/Algorithms: https://www.amazon.com/Data-Structures-Algorithms-Java-6th-ebook/dp/B00JDRQF8C
LWJGL (Free, but I haven't read this thoroughly): https://lwjglgamedev.gitbooks.io/3d-game-development-with-lwjgl/content/
Outro Music: https://www.bensound.com/royalty-free-music