Advanced C++ Programming Tutorial 3

From Chilipedia
Revision as of 00:35, 5 April 2020 by R vdw (Talk | contribs) (Tutorial 3.1)

Jump to: navigation, search

The vector dot product. This saucy little number is gonna turn your world upside down, project it, and other such bullshits. Super powerful math stuff do not missit.

Topics

Part 1

  • Vector dot product
  • Collision rebound physics calculation via vector operations

Part 2

  • Detecting collision
  • Implementing vector collision response (rebound) calculation

Video Timestamp Index

Tutorial 3.1


  • Introduction: using the dot product for rigid body physics problems 0:28
  • E.g., ball bouncing off a wall (line in 2D) with an arbitrary inclination
  • Using vector operations instead of angles & trigonometry
  • What is a dot product? 2:52
  • Basically: take vectors j and i: how much does a line j go in the direction of i
  • If j and i are perpendicular, their dot product is 0
  • How to calculate the dot product 5:54
  • Visual demo, 7:01
  • Angular version: a * b = ||a|| * ||b|| cos(theta) 8:49
  • Vector solution: a_x * b_x + a_y * b_y 9:36
  • Most common usage: "dot with a unit vector" 10:51
  • Determines how much a vector is going in the direction of the unit vector
  • Calculating the rebound speed vector off an inclined wall 12:43
  • The most common meme in vectors: (v*w^)w^ 20:04

Tutorial 3.2

Links

Homework

Fix the funky bug in the collision code.

See also