[video output=day044 member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code title="Reflecting Vectors" vod_platform=youtube id=2nyNOJoVC8M annotator=schme annotator=debiatan annotator=theinternetftw] [00:33][Importance of vector math] [02:09][Recap of last episode] [03:36][On the homogeneity of scalar and vector math notation] [05:45][Goal for today: bouncing off of walls] [07:06][Blackboard diagram of expected bouncing behavior] [07:47][Axis-aligned vector reflection] [12:26][General-case vector reflection] [15:02][The inner/scalar/dot product] [23:41][Applications of the inner product: vector length] [27:15][Applications of the inner product: measurement of vectors on new reference frames] [34:22][Solving general reflection using the inner product] [40:24][Implementing the solution] [43:22][Placeholder code to detect orientation of colliding walls] [49:19][Short comment on loss of energy and coefficient of restitution] [50:25][Challenge to the stream: how do you run along the wall?] [51:51][Answer to the challenge] [53:28][Discussion on sticky behavior] [58:13][Q&A][:speech] [59:31][Can you explain again why the hero was sticking against the wall?] [1:02:43][When do we scale down the hero?] [1:03:11][Have you considered using sin(0) to sin(90) as a non-linear inertia curve?] [1:03:51][Will you eventually handle player and monsters in some kind of physics engine?] [1:04:32][Do you need to code in different collision detection for the enemies?] [1:05:09][Will you add comments to the source for those who preordered?] [1:05:45][Do you plan on having non axis-aligned walls in the maps?] [1:07:12][What do you think about position based dynamics?] [1:08:42][Are we going to do continuous collision detection?] [1:09:08][Is the computational cost of functions something you only learn by experience?] [1:11:08][Will you end up in problems when walking into corners after the sticking fix tomorrow?] [1:11:27][Will there be a minimum distance to the wall?] [1:12:03][Will computing a vector where the player will stop just before the wall solve the sticking?] [1:13:13][Additional explanation to the bounce vector calculation] [1:19:25][Is there a way to speed up the DrawBitmap code?] [1:21:15][Suggestion to remove reblitting the background to improve performance] [1:22:08][Stream notes Casey drew the cos/sin triangle wrong] [1:23:39][A wish to mention formal keywords to help people look things up] [1:24:53][Was the Witness collision trick to try maintain the distance traveled?] [1:25:21][Why does wall bouncing not seem to cause sticking, but sliding does?] [1:27:06][Stream mentions KhanAcademy for learning math] [1:27:20][Will the rendering code be able to squash bitmaps?] [1:28:01][Could you/would you benefit from unrolling the collision loop ... ?] [/video]