GDC 2009 - Day 1 - Surviving Math for Programmers
One man's attempt to understand the full day tutorial 'Math for Programmers', starring Marq Singer, Jim Van Verth, Squirrel Eiserloh, Christer Ericson and Erin Catto.
![](https://eu-images.contentstack.com/v3/assets/blt740a130ae3c5d529/bltba62518415cda0e2/652fe6ddbc479f8697ef691f/default-cubic.png?width=1280&auto=webp&quality=95&format=jpg&disable=upscale)
Troglytes Unite!
1. Vectors & Matrices - Marq Singer
Whirlwind tour of university math (Bachelor level).
Forgotten how much forgotten.
Heavy Head.
Marq energetic, enthusiastic.
60 powerpoint slides. 45 minutes.
Sometimes spoke faster than could talk.
Dot product will save us all.
2. Affline Transformations - Jim Van Verth
Voice hoarse, stays course.
Translation. Rotation. Knows it backward. Seems straightforward.
Lights up discussing Object-Oriented Transforms.
PPoint says they "work with arbitrary center in world frame!"
Technique could rotate satellite around planet.
Understand. Plan to buy Jim's book.
3. Interpolation and Splines - Squirrel Eiserloh
Averaging. Blending. More Blending.
Hour later understand cubic hermite splines.
Feel Catmull-Rom splines are a piece of cake.
Didn't even want this. Believe mother would understand.
Fantastic demos. Best presentation today. Perhaps best at GDC.
Ordering of material amazing. Slides slowly built on one another.
No-one asked instructor about name.
Lunch
Bought lunch. Halfway learned lunch was provided.
Finished paid lunch. Ate free lunch.
Intestine is a spline.
4. Orientation Representation - Jim Van Verth
Jim dying, stays course.
Not here to praise Quaternions, but to bury alternatives.
Demos crappy 3D rotations. Convincing.
Quaternions are explained inasmuch as that's possible.
Discovered by non drunk irish man. Dad would be proud.
Conclusion: Quaternions are weird.
Jim Slerps and Lerps. Dad would be proud.
5. Geometric Primitives & Proximity Detection - Marq Singer
Marq returns powered up.
Envy his energy, wonder if he ate 2 lunches.
Whirlwind tour of collision detection.
Segment-Segment collision is child's play for Marq.
Depressed. Never could get that to work.
Provides reference, may contain salvation.
Capsule-Capsule Collision makes Segment-Segment obselete.
Tears stream down face. Eyes burning.
Marq continues. Things get complicated.
Final Recap: Collision detection complex.
Recap unnecessary.
6. Numerical Robustness - Christer Ericson
Floating-point numbers have problems.
-10^20 + (10^20 + 1) = 0
Luckily, solutions are complicated.
Tolerance Bonus (aka. this code sucks):
if (abs(x - y) < 0.000001) { // x & y are equal }
Problem: Use code all the time. Note to self: Don't tell Christer.
Finally understand ignorance is bliss.
7. Numerical Integration - Erin Catto
Demos cannonball: Proves crappiest numerical integration can simulate it.
Solves question why personal codebase works.
Demos "springy man" aka. Mass-Spring motion.
Explicit Euler, Symplectic Euler, Verlet, Newton fall.
Implicit Euler stands tall. Unfortunate.
Accuracy not equal to Stability. Want Stability above all.
In world where floating point breaks, is anything stable?
Physics engine plans scrapped.
Tomorrow: Physics for Programmers
Long Term Plan: Rage
Read more about:
BlogsAbout the Author
You May Also Like