public static void Transform(ref Vector3I value, ref MatrixI matrix, out Vector3I result) { result = value.X * Base6Directions.GetIntVector(matrix.Right) + value.Y * Base6Directions.GetIntVector(matrix.Up) + value.Z * Base6Directions.GetIntVector(matrix.Backward) + matrix.Translation; }
public static void TransformNormal(ref Vector3I normal, ref MatrixI matrix, out Vector3I result) { result = normal.X * Base6Directions.GetIntVector(matrix.Right) + normal.Y * Base6Directions.GetIntVector(matrix.Up) + normal.Z * Base6Directions.GetIntVector(matrix.Backward); }