Line vs Box2D AKA Raycasting | Coding a 2D Physics Engine in Java #7

Channel:
Subscribers:
59,400
Published on ● Video Link: https://www.youtube.com/watch?v=eo_hrg6kVA8



Game:
Duration: 23:17
4,192 views
0


Join the Discord: https://discord.gg/4tHeAkxNg7

In this tutorial, I explain how to check if a line is intersecting with a box. The way that I accomplish this is using a raycasting techinque (you could achieve the same result using variants of clipping algorithms). I extensively explain the mathematics behind this, going over a concrete example of how the raycast works. I explain how we can use the minimum and maximum of an AABB (2D box) to figure out the entry point and exit point of an intersecting line. Then, we implement the method. I also go over how to extend this functionality to check if a line is intersecting with an OBB (2D rotated box).

Source Code: https://github.com/codingminecraft/MarioYoutube/tree/df92aa761308cf34906a347ddce908eebff120af

0:00 Intro
0:32 Math behind line vs box
15:38 Coding line vs box method

---------------------------------------------------------------------
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/K
My Camera: https://amzn.to/30Y22I7
My Microphone: https://amzn.to/2BpYbbT

Outro Music: https://www.bensound.com/royalty-free-music




Other Videos By GamesWithGabe


2020-08-12Force Generators (Abstracting Forces) | Coding a 2D Physics Engine in Java #12
2020-08-02Gizmos and Asset Management | Cocoa Engine Devlog #11
2020-07-31Framebuffers in OpenGL | Coding a 2D Game Engine in Java #27
2020-07-28Separating Axis Theorem EXPLAINED | Coding a 2D Physics Engine in Java #11
2020-07-24Debug Drawing Boxes and Circles | Coding a 2D Game Engine in Java #26
2020-07-23Why C++ Scares the Crap Out of Me
2020-07-22Circle vs Shape Collision Detection | Coding a 2D Physics Engine in Java #10
2020-07-20Box2D and Serialization ENGINE PROGRESS | Cocoa Engine Devlog #10
2020-07-17How to Raycast Against a Box (OBB) | Coding a 2D Physics Engine in Java #9
2020-07-14How to Raycast Against a Circle | Coding a 2D Physics Engine in Java #8
2020-07-10Line vs Box2D AKA Raycasting | Coding a 2D Physics Engine in Java #7
2020-07-08Unit tests and Line vs Circle | Coding a 2D Physics Engine in Java #6
2020-07-06Rotating Points in 2D Space | Coding a 2D Physics Engine in Java #5
2020-07-03Point vs. Primitives | Coding a 2D Physics Engine in Java #4
2020-06-30Creating 2D Primitives | Coding a 2D Physics Engine in Java #3
2020-06-27Basic Vector Math | Coding a 2D Physics Engine in Java #2
2020-06-26Intro and Roadmap | Coding a 2D Physics Engine in Java #1
2020-06-24Snap To Grid Tool | Coding a 2D Game Engine in Java #25
2020-06-22Translating 10,000 Lines of Java Code to C++ Part 1 | Cocoa Engine Devlog #9
2020-06-19Debug Drawing Functions | Coding a 2D Game Engine in Java #24
2020-06-16Drag 'N Drop Level Editor | Coding a 2D Game Engine in Java #23



Tags:
gameswithgabe
games with gabe
lwjgl3
how to code physics in lwjgl
coding a physics engine
checking line intersecting with shapes
line intersecting box
how to code a physics engine
raycasting
how to code raycasts
line intersecting with rotated box
line intersection
line vs aabb
line vs obb
how to
how to code a collision detector
intersection detection
collision detection
physics engine
2d game physics
lwjgl
java
mario



Other Statistics

Particulars Statistics For GamesWithGabe

There are 12,161 views in 3 videos for Particulars. His channel currently has around 1 hour worth of content for Particulars, or 1.77% of the total watchable video on GamesWithGabe's YouTube channel.