cinera_handmade.network/cmuratori/hero/code/code050.hmml

47 lines
2.7 KiB
Plaintext

[video output=day050 member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code title="Basic Minkowski-based Collision Detection" vod_platform=youtube id=_g8DLrNyVsQ annotator=csnover annotator=schme annotator=theinternetftw]
[0:00][Intro]
[0:33][Recap]
[2:39][To do today: Gliding/skating and area-based collision detection]
[3:47][Review of collision detection up to this point]
[5:06][Area-based collision detection (Minkowski sum/difference)]
[6:55][Example: A player with size passing through two blocks]
[8:50][Introduction of Minkowski algebra: algebra with shapes]
[12:21][Chumped by Krita]
[15:24][Back to the Minkowski sum: rectangle + circle]
[16:45][Similar shapes]
[17:45][Dissimilar & complex convex shapes: GJK algorithm]
[20:58][Rectangles-only collision detection]
[25:55][Taking entity size into account]
[33:45][Sticky walls appear]
[36:05][Changing the origin point of the player]
[38:00][More sticking walls debugging]
[43:45][Implementing gliding]
[48:00][Correcting velocity during collision]
[56:10][Debugging final sticking bug]
[1:00:40][Moving the epsilon to stop directly on the wall]
[1:03:20][Or not…]
[1:04:20][Debugging first loop through the wall collision loop]
[1:09:58][Debugging the second loop through the wall collision loop]
[1:18:05][Moment of enlightenment]
[1:19:22][Q&A][:speech]
[1:21:05][Why is the heros head 1.5 meters in diameter?]
[1:21:29][How would you handle concave objects with Minkowski?]
[1:22:41][Why isn't the game split up in smaller, more modular files?]
[1:24:51][Is the alpha channel in the art assets created by the artist?]
[1:25:21][How many years since you started doing games?]
[1:26:37][I usually just hope the framerate stays high enough for the velocity not to get too high]
[1:28:57][Can't you have multiple views of the same file with emacs?]
[1:29:26][Will you be able to use minkowski with rotating and diagonal objects?]
[1:33:30][How long have you been working on this game?]
[1:33:57][Is it possible to make an assert that lets you continue on failure?]
[1:34:17][Are you doing any cyclomatic complexity analysis?]
[1:34:43][How would you represent a large sidescroller 2D world?]
[1:35:43][Is it possible to determine the point of collision?]
[1:36:11][Seems like the inability to represent convex objects is a major for problem for physics]
[1:37:15][I meant determining the point of collision with the general GJK algorithm]
[1:38:27][Are we doing a Raspberry Pi port just for the heck of it?]
[1:39:24][Cyclomatic complexity: a direct measure of the number of linearly independent paths through the code]
[1:39:50][BeagleBone black is better than Raspberry Pi I think]
[1:41:01][Can't you do straight on hardware on the PC?]
[/video]