public static Float4X4 Multiply(Float4X4 a, Float4X4 b) { Float4X4 mOut = new Float4X4(); for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { for (int k = 0; k < 4; k++) { mOut[i, j] += a[i, k] * b[k, j]; } } } return(mOut); }
/// <summary> /// Determines whether the specified object is equal to the current object. /// </summary> /// <param name="other">The object to compare with the current object.</param> /// <returns><value>true</value> if the specified object is equal to the current object; otherwise, <value>false</value>.</returns> public bool Equals(Float4X4 other) { return(this.m11 == other.m11 && this.m12 == other.m12 && this.m13 == other.m13 && this.m14 == other.m14 && this.m21 == other.m21 && this.m22 == other.m22 && this.m23 == other.m23 && this.m24 == other.m24 && this.m31 == other.m31 && this.m32 == other.m32 && this.m33 == other.m33 && this.m34 == other.m34 && this.m41 == other.m41 && this.m42 == other.m42 && this.m43 == other.m43 && this.m44 == other.m44); }
public static Float4X4 operator *(Float4X4 a, Float4X4 b) { return(Float4X4.Multiply(a, b)); }