Namespace Unity.Geospatial.HighPrecision
Classes
HPMath
Mathematics methods used for easily converting data between geodetic formats and Unity default expected formats.
HPNode
High Precision node allowing to get its local and universe position in double precision.
HPRoot
The HPRoot determines how the universe space will be converted into world space. It defines the coordinate in universe space which corresponds to the position of the GameObject, in world space.
HPTransform
The HPTransform is the High-Precision Framework's primary class. It acts very similarly to an ordinary transform, however its position is in 64 bit precision rather than being in 32 bit precision. The HPTransform can be used with or without an HPRoot parent. However, in order to truly benefit from the 64 bit precision, it should be the child of an HPRoot.
LocalCoordinateSystem
The LocalCoordinateSystem component causes any HPTransform to be defined as the center of interest within the universe space. This will maximize rendering precision around this object by essentially keeping it in the center of the scene. For many applications, the camera or the player makes for a good candidate as the origin HPTransform.
This component is meant as an example of how to implement a very simple dynamic rebasing scheme. However, many other schemes can and should be considered, such as rebasing only when getting a predefined distance from the origin or event triggered rebasing when the user performs an action.
MathExtension
Extend Unity mathematics structs.
MatrixExtension
Extension methods for Unity Matrix4x4.
Structs
DoubleBounds
Represents an axis aligned bounding box with values stored as doubles.
DoublePlane
Representation of a plane in 3D space storing values as doubles.
SerializableDoubleBounds
This struct should only be used for serialization purposes within Unity, either in MonoBehaviours, such that it can appear in the inspector, or for JSON serialization. For any purpose that does not require serialization, please use DoubleBounds. Cast as quickly as you can to the DoubleBounds struct which is immutable.
Enums
HPNode.ScaleTypes
The type of scale that the HPNode's current configuration allows. When it is a leaf node, it will accept non-uniform scales. Otherwise, it will only apply a uniform scale.