Photon Quantum 2.1.1

Public Member Functions | Properties | List of all members
Quantum.Physics3D.PhysicsEngine3D.Api Class Reference

3D Physics API More...

Public Member Functions

int AddLinecastQuery (FPVector3 start, FPVector3 end, bool firstHitOnly=false, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Adds a broad-phase line cast query to the 3D physics scene. In order to be resolved, must be added from a system that runs prior to the Physics System. More...
 
int AddOverlapShapeQuery (FPVector3 position, FPQuaternion rotation, Shape3D shape, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Adds a broad-phase shape overlap query to the 3D physics scene. In order to be resolved, must be added from a system that runs prior to the Physics System. More...
 
int AddOverlapShapeQuery (Transform3D transform, Shape3D shape, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Adds a broad-phase shape overlap query to the 3D physics scene. In order to be resolved, must be added from a system that runs prior to the Physics System. More...
 
int AddRaycastQuery (FPVector3 origin, FPVector3 direction, FP distance, bool firstHitOnly=false, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Adds a broad-phase ray cast query to the 3D physics scene. In order to be resolved, must be added from a system that runs prior to the Physics System. More...
 
int AddShapeCastQuery (FPVector3 start, FPQuaternion rotation, Shape3D *shape, FPVector3 translation, bool firstHitOnly=false, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Adds a broad-phase shape cast query to the 3D physics scene. In order to be resolved, must be added from a system that runs prior to the Physics System. More...
 
HitCollection3D * AllocatePersistentHitCollection3D (int defaultCapacity=64)
 Allocates a persistent HitCollection3D on the heap with an initial capacity. To free an allocated persistent collection of 3D hits, use FreePersistentHitCollection3D. More...
 
void FreePersistentHitCollection3D (HitCollection3D *collection)
 Free a persistent HitCollection3D previously allocated on the heap. To allocate a persistent collection of 3D hits, use AllocatePersistentHitCollection3D. More...
 
bool GetAllQueriesHits (out HitCollection3D *queriesHits, out int queriesCount)
 Gets all the results for all the broad-phase queries added to the 3D physics scene this frame. More...
 
CallbackFlags GetCallbacks (EntityRef entity)
 Get the flags that represent which 3D physics collision callbacks will be called for the entity . More...
 
HitCollection3D GetQueryHits (int index)
 Gets the results of a broad-phase query added to the 3D physics scene. More...
 
bool IsStaticColliderEnabled (int staticColliderIndex)
 Returns the current state of a 3D static collider. More...
 
Hit3DLinecast (FPVector3 start, FPVector3 end, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a line cast and returns the closest hit to the line start, if any. More...
 
void Linecast (HitCollection3D *collection, FPVector3 start, FPVector3 end, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a line cast and adds the closest hit to the line start, if any, to a persistent collection of hits. More...
 
HitCollection3D LinecastAll (FPVector3 start, FPVector3 end, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a line cast, returning all hits. More...
 
void LinecastAll (HitCollection3D *collection, FPVector3 start, FPVector3 end, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a line cast, returning all hits. More...
 
HitCollection3D OverlapShape (FPVector3 position, FPQuaternion rotation, Shape3D shape, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a shape overlap. More...
 
void OverlapShape (HitCollection3D *collection, FPVector3 position, FPQuaternion rotation, Shape3D shape, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a shape overlap. More...
 
void OverlapShape (HitCollection3D *collection, Transform3D transform, Shape3D shape, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a shape overlap. More...
 
HitCollection3D OverlapShape (Transform3D transform, Shape3D shape, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a shape overlap. More...
 
Hit3DRaycast (FPVector3 origin, FPVector3 direction, FP distance, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a ray cast and returns the closest hit to the ray origin, if any. More...
 
void Raycast (HitCollection3D *collection, FPVector3 origin, FPVector3 direction, FP distance, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a ray cast and adds the closest hit to the ray origin, if any, to a persistent collection of hits. More...
 
HitCollection3D RaycastAll (FPVector3 origin, FPVector3 direction, FP distance, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a ray cast, returning all hits. More...
 
void RaycastAll (HitCollection3D *collection, FPVector3 origin, FPVector3 direction, FP distance, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a ray cast, adding all hits to a persistent collection. More...
 
void ResetCallbacks (EntityRef entity)
 Resets the tracking history of collisions the entity might have. More...
 
void ResetMap ()
 Resets 3D physics scene map asset guid. More...
 
void SetCallbacks (EntityRef entity, CallbackFlags flags)
 Sets which 3D physics collision callbacks will be called for the entity . More...
 
void SetStaticColliderEnabled (int staticColliderIndex, bool enabled)
 Set a toggleable 3D static collider enabled state to enabled . Disabled static colliders are not considered for collisions or on query resolutions. More...
 
Hit3DShapeCast (FPVector3 start, FPQuaternion rotation, Shape3D *shape, FPVector3 translation, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a shape cast and returns the hit with the smallest Hit3D.CastDistanceNormalized, if any. More...
 
void ShapeCast (HitCollection3D *collection, FPVector3 start, FPQuaternion rotation, Shape3D *shape, FPVector3 translation, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a shape cast and adds the hit with the shortest Hit3D.CastDistanceNormalized, if any, to a persistent collection of hits. More...
 
HitCollection3D ShapeCastAll (FPVector3 start, FPQuaternion rotation, Shape3D *shape, FPVector3 translation, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a shape cast, returning all hits. More...
 
void ShapeCastAll (HitCollection3D *collection, FPVector3 start, FPQuaternion rotation, Shape3D *shape, FPVector3 translation, int layerMask=-1, QueryOptions options=QueryOptions.HitAll)
 Queries the 3D physics scene with a shape cast, adding all hits to a persistent collection. More...
 
bool TryGetQueryHits (int index, out HitCollection3D queryHits)
 Tries to get the results of a broad-phase query added to the 3D physics scene. More...
 

Properties

Map Map [get]
 Retrieves the map asset currently used on the physics scene. More...
 

Detailed Description

3D Physics API

Member Function Documentation

◆ GetCallbacks()

CallbackFlags Quantum.Physics3D.PhysicsEngine3D.Api.GetCallbacks ( EntityRef  entity)
inline

Get the flags that represent which 3D physics collision callbacks will be called for the entity .

The entity must have a PhysicsCollider3D component attached to be able to collide with other physics entries.

To modify the callbacks, use SetCallbacks.

Parameters
entityThe entity from which to get the callback flags.
Returns
The callback flags set to a given entity. Default if the entity did not have callback flags set.

◆ ResetCallbacks()

void Quantum.Physics3D.PhysicsEngine3D.Api.ResetCallbacks ( EntityRef  entity)
inline

Resets the tracking history of collisions the entity might have.

◆ SetStaticColliderEnabled()

void Quantum.Physics3D.PhysicsEngine3D.Api.SetStaticColliderEnabled ( int  staticColliderIndex,
bool  enabled 
)
inline

Set a toggleable 3D static collider enabled state to enabled . Disabled static colliders are not considered for collisions or on query resolutions.

The static collider state is only changed on Verified frames.

Parameters
staticColliderIndexThe index of the collider in the Map StaticColliders3D array.
enabledIf the static should be enabled (true) or disabled (false).
Exceptions
InvalidOperationExceptionIf the static collider is baked as Immutable.
ArgumentOutOfRangeExceptionIf the provided staticColliderIndex is not in the range of static colliders loaded in the current Physics static scene.

◆ IsStaticColliderEnabled()

bool Quantum.Physics3D.PhysicsEngine3D.Api.IsStaticColliderEnabled ( int  staticColliderIndex)
inline

Returns the current state of a 3D static collider.

Parameters
staticColliderIndexThe index of the collider in the Map StaticColliders3D array.
Returns
False if the static is not Immutable and is currently disabled, True otherwise.
Exceptions
ArgumentOutOfRangeExceptionIf the provided staticColliderIndex is not in the range of static colliders loaded in the current Physics static scene.