public static void Store(this HwVector3 vector, out Vector3 destination) { fixed(void *p = &destination) { Store3D(vector, (float *)p); } }
public Vector128 <float> MathSharp() { HwVector3 front = _mathSharpFront; front = Vector.Normalize(front); HwVector3 right = Vector.Normalize(Vector.CrossProduct(_unitY, front)); HwVector3 up = Vector.Normalize(Vector.CrossProduct(front, right)); return(up); }
public HwVector3 MathSharp_WrapperStruct() { HwVector3 front = _mathSharpWrapperFront; front = Vector.Normalize(front); HwVector3 right = Vector.Normalize(Vector.CrossProduct(_unitYWrapper, front)); HwVector3 up = Vector.Normalize(Vector.CrossProduct(front, right)); return(up); }
public void Setup() { _pitch = 11f; _yaw = 0.008888f; _unitY = Vector128.Create(0f, 1f, 0f, 0f); _unitYWrapper = _unitY; float x = MathF.Cos(_pitch) * MathF.Cos(_yaw); float y = MathF.Sin(_pitch); float z = MathF.Cos(_pitch) * MathF.Sin(_yaw); _mathSharpFront = Vector128.Create(x, y, z, 0); _mathSharpWrapperFront = _mathSharpFront; _openTkFront = new Vector3(x, y, z); }