Refactor engine to support double-precision vectors

This commit is contained in:
Wojtek Figat
2022-06-13 00:40:32 +02:00
parent f82e370392
commit a881c90b2e
744 changed files with 19062 additions and 12467 deletions

View File

@@ -1,3 +1,9 @@
#if USE_LARGE_WORLDS
using Real = System.Double;
#else
using Real = System.Single;
#endif
// Copyright (c) 2012-2022 Wojciech Figat. All rights reserved.
using System;
@@ -148,7 +154,7 @@ namespace FlaxEditor.SceneGraph.Actors
return splineNode.ActorChildNodes[newIndex];
}
public override bool RayCastSelf(ref RayCastData ray, out float distance, out Vector3 normal)
public override bool RayCastSelf(ref RayCastData ray, out Real distance, out Vector3 normal)
{
var actor = (Spline)_node.Actor;
var pos = actor.GetSplinePoint(Index);
@@ -230,7 +236,7 @@ namespace FlaxEditor.SceneGraph.Actors
}
}
public override bool RayCastSelf(ref RayCastData ray, out float distance, out Vector3 normal)
public override bool RayCastSelf(ref RayCastData ray, out Real distance, out Vector3 normal)
{
var actor = (Spline)_node.Actor;
var pos = actor.GetSplineTangent(_index, _isIn).Translation;
@@ -368,11 +374,11 @@ namespace FlaxEditor.SceneGraph.Actors
}
/// <inheritdoc />
public override bool RayCastSelf(ref RayCastData ray, out float distance, out Vector3 normal)
public override bool RayCastSelf(ref RayCastData ray, out Real distance, out Vector3 normal)
{
// Select only spline points
normal = Vector3.Up;
distance = float.MaxValue;
distance = Real.MaxValue;
return false;
}