Anonymous
public text v1 · immutable public override float? RayIntersectTest(Ray ray)
{
float? sphereTest = ray.Intersects(sphere);
if (sphereTest != null)
{
ray.Position -= Position;
Quaternion qInv = Quaternion.Inverse(QuaternionRotation);
ray.Position = Vector3.Transform(ray.Position, qInv);
ray.Direction = Vector3.Transform(ray.Direction, qInv);
ray.Position += Position;
return ray.Intersects(aabb);
}
return null;
}