Unit tests and Line vs Circle | Coding a 2D Physics Engine in Java #6
Join the Discord: https://discord.gg/4tHeAkxNg7
In this episode I go over how to tell if a line segment is intersecting with a circle. We use some fancy math to project the vector from the line's beginning to the center of the circle onto the line segment, then we check the length of that against the length of the line. If the length of the circle to beginning of the line segment is less than the lenght of the line segment and greater than zero, then the line is intersecting. I also go over how to create unit tests for all these functions. So, we integrate JUnit, then set up a simple test class, and finally add the test class to our build configuration so that unit tests are run before the program is started every time. This is a good way to ensure that your code doesn't break if you change things in the future.
Source Code: https://github.com/codingminecraft/MarioYoutube/tree/4651849df0c9ae2ce94c5110ff3359f2a94c53bc
0:00 Intro
0:44 Math behind line vs circle
6:11 Coding line vs circle
10:51 Setting up unit tests
---------------------------------------------------------------------
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
Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «Unit tests and Line vs Circle | Coding a 2D Physics Engine in Java #6», вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.
Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.
Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!
Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.