public Vertex3D MultiplyMatrixNoTranslate(Vertex3D v) { // Transform it through the current matrix set var xp = _11 * v.X + _21 * v.Y + _31 * v.Z; var yp = _12 * v.X + _22 * v.Y + _32 * v.Z; var zp = _13 * v.X + _23 * v.Y + _33 * v.Z; return(v.Set(xp, yp, zp)); }
public Vertex3D MultiplyMatrix(Vertex3D v) { // Transform it through the current matrix set var xp = _11 * v.X + _21 * v.Y + _31 * v.Z + _41; var yp = _12 * v.X + _22 * v.Y + _32 * v.Z + _42; var zp = _13 * v.X + _23 * v.Y + _33 * v.Z + _43; var wp = _14 * v.X + _24 * v.Y + _34 * v.Z + _44; var invWp = 1.0f / wp; return(v.Set(xp * invWp, yp * invWp, zp * invWp)); }
public Vertex3D MultiplyMatrix(Vertex3D v) { // Transform it through the current matrix set var xp = ((((_11 * v.X) + (_21 * v.Y)) + (_31 * v.Z)) + _41); var yp = ((((_12 * v.X) + (_22 * v.Y)) + (_32 * v.Z)) + _42); var zp = ((((_13 * v.X) + (_23 * v.Y)) + (_33 * v.Z)) + _43); var wp = ((((_14 * v.X) + (_24 * v.Y)) + (_34 * v.Z)) + _44); var invWp = (1.0f / wp); return(v.Set(xp * invWp, yp * invWp, zp * invWp)); }
public static void Reset(Vertex3D v) { v.Set(0, 0, 0); }