Mathematics for 3D Game Programming and Computer Graphics, Third Edition