docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Struct CompoundCollider

    A collider containing instances of other colliders.

    Implements
    ICollider
    ICollidable
    Inherited Members
    ValueType.Equals(object)
    ValueType.GetHashCode()
    ValueType.ToString()
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    Namespace: Unity.Physics
    Assembly: Unity.Physics.dll
    Syntax
    public struct CompoundCollider : ICollider, ICollidable

    Properties

    Children

    Gets the children.

    Declaration
    public BlobArray.Accessor<CompoundCollider.Child> Children { get; }
    Property Value
    Type Description
    BlobArray.Accessor<CompoundCollider.Child>

    The children.

    CollisionType

    Gets the collision type.

    Declaration
    public CollisionType CollisionType { get; }
    Property Value
    Type Description
    CollisionType

    Collision type.

    MassProperties

    Gets the mass properties.

    Declaration
    public readonly MassProperties MassProperties { get; }
    Property Value
    Type Description
    MassProperties

    The mass properties.

    MemorySize

    Gets the memory size (including children).

    Declaration
    public readonly int MemorySize { get; }
    Property Value
    Type Description
    int

    The size of the memory.

    NumChildren

    Gets the number of children.

    Declaration
    public int NumChildren { get; }
    Property Value
    Type Description
    int

    The total number of children.

    NumColliderKeyBits

    Gets the number of collider key bits.

    Declaration
    public uint NumColliderKeyBits { get; }
    Property Value
    Type Description
    uint

    The total number of collider key bits.

    Type

    Gets the type.

    Declaration
    public ColliderType Type { get; }
    Property Value
    Type Description
    ColliderType

    The type.

    Methods

    BoxCast(float3, quaternion, float3, float3, float, out ColliderCastHit, CollisionFilter, QueryInteraction)

    Box cast.

    Declaration
    public bool BoxCast(float3 center, quaternion orientation, float3 halfExtents, float3 direction, float maxDistance, out ColliderCastHit hitInfo, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 center

    The center.

    quaternion orientation

    The orientation.

    float3 halfExtents

    Half extents of the box.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    ColliderCastHit hitInfo

    [out] Information describing the hit.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    BoxCast(float3, quaternion, float3, float3, float, CollisionFilter, QueryInteraction)

    Box cast.

    Declaration
    public bool BoxCast(float3 center, quaternion orientation, float3 halfExtents, float3 direction, float maxDistance, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 center

    The center.

    quaternion orientation

    The orientation.

    float3 halfExtents

    Half extents of the box.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    BoxCastAll(float3, quaternion, float3, float3, float, ref NativeList<ColliderCastHit>, CollisionFilter, QueryInteraction)

    Box cast all.

    Declaration
    public bool BoxCastAll(float3 center, quaternion orientation, float3 halfExtents, float3 direction, float maxDistance, ref NativeList<ColliderCastHit> outHits, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 center

    The center.

    quaternion orientation

    The orientation.

    float3 halfExtents

    Half extents of the box.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    NativeList<ColliderCastHit> outHits

    [in,out] The out hits.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    BoxCastCustom<T>(float3, quaternion, float3, float3, float, ref T, CollisionFilter, QueryInteraction)

    Box cast custom.

    Declaration
    public bool BoxCastCustom<T>(float3 center, quaternion orientation, float3 halfExtents, float3 direction, float maxDistance, ref T collector, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default) where T : struct, ICollector<ColliderCastHit>
    Parameters
    Type Name Description
    float3 center

    The center.

    quaternion orientation

    The orientation.

    float3 halfExtents

    Half extents of the box.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    T collector

    [in,out] The collector.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    CalculateAabb()

    Calculates the aabb.

    Declaration
    public Aabb CalculateAabb()
    Returns
    Type Description
    Aabb

    The calculated aabb.

    CalculateAabb(RigidTransform, float)

    Calculates the aabb.

    Declaration
    public Aabb CalculateAabb(RigidTransform transform, float uniformScale = 1)
    Parameters
    Type Name Description
    RigidTransform transform

    The transform.

    float uniformScale

    (Optional) The uniform scale.

    Returns
    Type Description
    Aabb

    The calculated aabb.

    CalculateDistance(ColliderDistanceInput)

    Calculate the distance from another collider to this one.

    Declaration
    public bool CalculateDistance(ColliderDistanceInput input)
    Parameters
    Type Name Description
    ColliderDistanceInput input

    The input.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CalculateDistance(ColliderDistanceInput, ref NativeList<DistanceHit>)

    Calculates the distance.

    Declaration
    public bool CalculateDistance(ColliderDistanceInput input, ref NativeList<DistanceHit> allHits)
    Parameters
    Type Name Description
    ColliderDistanceInput input

    The input.

    NativeList<DistanceHit> allHits

    [in,out] all hits.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CalculateDistance(ColliderDistanceInput, out DistanceHit)

    Calculates the distance.

    Declaration
    public bool CalculateDistance(ColliderDistanceInput input, out DistanceHit closestHit)
    Parameters
    Type Name Description
    ColliderDistanceInput input

    The input.

    DistanceHit closestHit

    [out] The closest hit.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CalculateDistance(PointDistanceInput)

    Calculate the distance from a point to this collider.

    Declaration
    public bool CalculateDistance(PointDistanceInput input)
    Parameters
    Type Name Description
    PointDistanceInput input

    The input.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CalculateDistance(PointDistanceInput, ref NativeList<DistanceHit>)

    Calculates the distance.

    Declaration
    public bool CalculateDistance(PointDistanceInput input, ref NativeList<DistanceHit> allHits)
    Parameters
    Type Name Description
    PointDistanceInput input

    The input.

    NativeList<DistanceHit> allHits

    [in,out] all hits.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CalculateDistance(PointDistanceInput, out DistanceHit)

    Calculates the distance.

    Declaration
    public bool CalculateDistance(PointDistanceInput input, out DistanceHit closestHit)
    Parameters
    Type Name Description
    PointDistanceInput input

    The input.

    DistanceHit closestHit

    [out] The closest hit.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CalculateDistance<T>(ColliderDistanceInput, ref T)

    Calculates the distance.

    Declaration
    public bool CalculateDistance<T>(ColliderDistanceInput input, ref T collector) where T : struct, ICollector<DistanceHit>
    Parameters
    Type Name Description
    ColliderDistanceInput input

    The input.

    T collector

    [in,out] The collector.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    CalculateDistance<T>(PointDistanceInput, ref T)

    Calculates the distance.

    Declaration
    public bool CalculateDistance<T>(PointDistanceInput input, ref T collector) where T : struct, ICollector<DistanceHit>
    Parameters
    Type Name Description
    PointDistanceInput input

    The input.

    T collector

    [in,out] The collector.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    CapsuleCast(float3, float3, float, float3, float, out ColliderCastHit, CollisionFilter, QueryInteraction)

    Capsule cast.

    Declaration
    public bool CapsuleCast(float3 point1, float3 point2, float radius, float3 direction, float maxDistance, out ColliderCastHit hitInfo, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 point1

    The first point in capsule definition.

    float3 point2

    The second point in capsule definition.

    float radius

    The radius.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    ColliderCastHit hitInfo

    [out] Information describing the hit.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CapsuleCast(float3, float3, float, float3, float, CollisionFilter, QueryInteraction)

    Capsule cast.

    Declaration
    public bool CapsuleCast(float3 point1, float3 point2, float radius, float3 direction, float maxDistance, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 point1

    The first point in capsule definition.

    float3 point2

    The second point in capsule definition.

    float radius

    The radius.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CapsuleCastAll(float3, float3, float, float3, float, ref NativeList<ColliderCastHit>, CollisionFilter, QueryInteraction)

    Capsule cast all.

    Declaration
    public bool CapsuleCastAll(float3 point1, float3 point2, float radius, float3 direction, float maxDistance, ref NativeList<ColliderCastHit> outHits, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 point1

    The first point in capsule definition.

    float3 point2

    The second point in capsule definition.

    float radius

    The radius.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    NativeList<ColliderCastHit> outHits

    [in,out] The out hits.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CapsuleCastCustom<T>(float3, float3, float, float3, float, ref T, CollisionFilter, QueryInteraction)

    Capsule cast custom.

    Declaration
    public bool CapsuleCastCustom<T>(float3 point1, float3 point2, float radius, float3 direction, float maxDistance, ref T collector, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default) where T : struct, ICollector<ColliderCastHit>
    Parameters
    Type Name Description
    float3 point1

    The first point in capsule definition.

    float3 point2

    The second point in capsule definition.

    float radius

    The radius.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    T collector

    [in,out] The collector.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    CastCollider(ColliderCastInput)

    Cast another collider against this one.

    Declaration
    public bool CastCollider(ColliderCastInput input)
    Parameters
    Type Name Description
    ColliderCastInput input

    The input.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CastCollider(ColliderCastInput, ref NativeList<ColliderCastHit>)

    Cast collider.

    Declaration
    public bool CastCollider(ColliderCastInput input, ref NativeList<ColliderCastHit> allHits)
    Parameters
    Type Name Description
    ColliderCastInput input

    The input.

    NativeList<ColliderCastHit> allHits

    [in,out] all hits.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CastCollider(ColliderCastInput, out ColliderCastHit)

    Cast collider.

    Declaration
    public bool CastCollider(ColliderCastInput input, out ColliderCastHit closestHit)
    Parameters
    Type Name Description
    ColliderCastInput input

    The input.

    ColliderCastHit closestHit

    [out] The closest hit.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CastCollider<T>(ColliderCastInput, ref T)

    Cast collider.

    Declaration
    public bool CastCollider<T>(ColliderCastInput input, ref T collector) where T : struct, ICollector<ColliderCastHit>
    Parameters
    Type Name Description
    ColliderCastInput input

    The input.

    T collector

    [in,out] The collector.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    CastRay(RaycastInput)

    Cast a ray against this collider.

    Declaration
    public bool CastRay(RaycastInput input)
    Parameters
    Type Name Description
    RaycastInput input

    The input.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CastRay(RaycastInput, ref NativeList<RaycastHit>)

    Cast ray.

    Declaration
    public bool CastRay(RaycastInput input, ref NativeList<RaycastHit> allHits)
    Parameters
    Type Name Description
    RaycastInput input

    The input.

    NativeList<RaycastHit> allHits

    [in,out] all hits.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CastRay(RaycastInput, out RaycastHit)

    Cast ray.

    Declaration
    public bool CastRay(RaycastInput input, out RaycastHit closestHit)
    Parameters
    Type Name Description
    RaycastInput input

    The input.

    RaycastHit closestHit

    [out] The closest hit.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CastRay<T>(RaycastInput, ref T)

    Cast ray.

    Declaration
    public bool CastRay<T>(RaycastInput input, ref T collector) where T : struct, ICollector<RaycastHit>
    Parameters
    Type Name Description
    RaycastInput input

    The input.

    T collector

    [in,out] The collector.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    CheckBox(float3, quaternion, float3, CollisionFilter, QueryInteraction)

    Check box.

    Declaration
    public bool CheckBox(float3 center, quaternion orientation, float3 halfExtents, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 center

    The center.

    quaternion orientation

    The orientation.

    float3 halfExtents

    Half extents of the box.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CheckCapsule(float3, float3, float, CollisionFilter, QueryInteraction)

    Check capsule.

    Declaration
    public bool CheckCapsule(float3 point1, float3 point2, float radius, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 point1

    The first point in capsule definition.

    float3 point2

    The second point in capsule definition.

    float radius

    The radius.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    CheckSphere(float3, float, CollisionFilter, QueryInteraction)

    Check if the sphere is overlapping this collider.

    Declaration
    public bool CheckSphere(float3 position, float radius, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 position

    The position.

    float radius

    The radius.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    ConvertChildIndexToColliderKey(int)

    An utility method that converts child index to collider key.

    Declaration
    public ColliderKey ConvertChildIndexToColliderKey(int childIndex)
    Parameters
    Type Name Description
    int childIndex

    Zero-based index of the child.

    Returns
    Type Description
    ColliderKey

    The child converted index to collider key.

    Create(NativeArray<ColliderBlobInstance>)

    Create a compound collider containing an array of other colliders. The source colliders from children are copied into the new compound collider, so that it becomes one blob.

    Declaration
    public static BlobAssetReference<Collider> Create(NativeArray<CompoundCollider.ColliderBlobInstance> children)
    Parameters
    Type Name Description
    NativeArray<CompoundCollider.ColliderBlobInstance> children

    The children. Their individual blobs can be safely disposed after the compound collider is created, if they're no longer needed.

    Returns
    Type Description
    BlobAssetReference<Collider>

    A BlobAssetReference<Collider>

    GetChild(ref ColliderKey, out ChildCollider)

    Gets a child of this collider.

    Declaration
    public bool GetChild(ref ColliderKey key, out ChildCollider child)
    Parameters
    Type Name Description
    ColliderKey key

    [in,out] The key that identifies the child. Gets modified by removing the bits associated with the child collider.

    ChildCollider child

    [out] The child.

    Returns
    Type Description
    bool

    True if there is a child with the specified key, false otherwise.

    GetColliderKeyToChildrenMapping(ref NativeHashMap<ColliderKey, ChildCollider>)

    Fills the passed in map with ColliderKey - ChildCollider pairs of this compound collider.

    Declaration
    public void GetColliderKeyToChildrenMapping(ref NativeHashMap<ColliderKey, ChildCollider> colliderKeyToChildrenMapping)
    Parameters
    Type Name Description
    NativeHashMap<ColliderKey, ChildCollider> colliderKeyToChildrenMapping

    [in,out] The collider key to children mapping.

    GetCollisionFilter()

    Get the root level filter that can be used for a quick dismiss of the collision/query. Individual children can have their own collision filters for further filtering. This filter is a union of all child filters.

    Declaration
    public CollisionFilter GetCollisionFilter()
    Returns
    Type Description
    CollisionFilter

    The root collision filter.

    GetCollisionFilter(ColliderKey)

    Gets the collision filter of the child specified by the collider key.

    Declaration
    public CollisionFilter GetCollisionFilter(ColliderKey colliderKey)
    Parameters
    Type Name Description
    ColliderKey colliderKey

    The child collider key.

    Returns
    Type Description
    CollisionFilter

    The collision filter of the child specified by the collider key. If the key is empty, it will return root filter. If the key is invalid, it will throw an exception.

    GetLeaf(ColliderKey, out ChildCollider)

    Gets a leaf collider.

    Declaration
    public bool GetLeaf(ColliderKey key, out ChildCollider leaf)
    Parameters
    Type Name Description
    ColliderKey key

    The key representing the leaf collider.

    ChildCollider leaf

    [out] The leaf.

    Returns
    Type Description
    bool

    True if a leaf with the specified key exists, otherwise false.

    GetLeaves<T>(ref T)

    Gets the leaf colliders of this collider .

    Declaration
    public void GetLeaves<T>(ref T collector) where T : struct, ILeafColliderCollector
    Parameters
    Type Name Description
    T collector

    [in,out] The collector.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    OverlapBox(float3, quaternion, float3, ref NativeList<DistanceHit>, CollisionFilter, QueryInteraction)

    Overlap box.

    Declaration
    public bool OverlapBox(float3 center, quaternion orientation, float3 halfExtents, ref NativeList<DistanceHit> outHits, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 center

    The center.

    quaternion orientation

    The orientation.

    float3 halfExtents

    Half extents of the box.

    NativeList<DistanceHit> outHits

    [in,out] The out hits.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    OverlapBoxCustom<T>(float3, quaternion, float3, ref T, CollisionFilter, QueryInteraction)

    Overlap box custom.

    Declaration
    public bool OverlapBoxCustom<T>(float3 center, quaternion orientation, float3 halfExtents, ref T collector, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default) where T : struct, ICollector<DistanceHit>
    Parameters
    Type Name Description
    float3 center

    The center.

    quaternion orientation

    The orientation.

    float3 halfExtents

    Half extents of the box.

    T collector

    [in,out] The collector.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    OverlapCapsule(float3, float3, float, ref NativeList<DistanceHit>, CollisionFilter, QueryInteraction)

    Overlap capsule.

    Declaration
    public bool OverlapCapsule(float3 point1, float3 point2, float radius, ref NativeList<DistanceHit> outHits, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 point1

    The first point in capsule definition.

    float3 point2

    The second point in capsule definition.

    float radius

    The radius.

    NativeList<DistanceHit> outHits

    [in,out] The out hits.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    OverlapCapsuleCustom<T>(float3, float3, float, ref T, CollisionFilter, QueryInteraction)

    Overlap capsule custom.

    Declaration
    public bool OverlapCapsuleCustom<T>(float3 point1, float3 point2, float radius, ref T collector, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default) where T : struct, ICollector<DistanceHit>
    Parameters
    Type Name Description
    float3 point1

    The first point in capsule definition.

    float3 point2

    The second point in capsule definition.

    float radius

    The radius.

    T collector

    [in,out] The collector.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    OverlapSphere(float3, float, ref NativeList<DistanceHit>, CollisionFilter, QueryInteraction)

    Overlap sphere.

    Declaration
    public bool OverlapSphere(float3 position, float radius, ref NativeList<DistanceHit> outHits, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 position

    The position.

    float radius

    The radius.

    NativeList<DistanceHit> outHits

    [in,out] The out hits.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    OverlapSphereCustom<T>(float3, float, ref T, CollisionFilter, QueryInteraction)

    Overlap sphere custom.

    Declaration
    public bool OverlapSphereCustom<T>(float3 position, float radius, ref T collector, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default) where T : struct, ICollector<DistanceHit>
    Parameters
    Type Name Description
    float3 position

    The position.

    float radius

    The radius.

    T collector

    [in,out] The collector.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    RefreshCollisionFilter()

    Refreshes combined collision filter of all children. Should be called when child collision filter changes.

    Declaration
    public void RefreshCollisionFilter()

    SetCollisionFilter(CollisionFilter)

    Sets the root collision filter. This also sets the filter of all children to the input value.

    Declaration
    public void SetCollisionFilter(CollisionFilter filter)
    Parameters
    Type Name Description
    CollisionFilter filter

    Specifies the filter.

    SetCollisionFilter(CollisionFilter, ColliderKey)

    Sets collision filter of the child specified by collider key. If the provided key is empty, it will set the root filter and the filter of all children to the provided value. If the filter is invalid, it will throw an exception. After setting the child filter, this function will also call RefreshCollisionFilter() to update the root filter based on the new child filter value.

    Declaration
    public void SetCollisionFilter(CollisionFilter filter, ColliderKey colliderKey)
    Parameters
    Type Name Description
    CollisionFilter filter

    Specifies the filter.

    ColliderKey colliderKey

    The collider key.

    SetCollisionFilter(CollisionFilter, ColliderKey, bool)

    Sets collision filter of the child specified by collider key. If the provided key is empty, it will set the root filter and the filter of all children to the provided value. If the filter is invalid, it will throw an exception. If refreshCompoundFilter is set to false, this function will not call RefreshCollisionFilter(), and should be used in cases of updating multiple child colliders at once, where you will need to call RefreshCollisionFilter() manually after the last child filter is updated.

    Declaration
    public void SetCollisionFilter(CollisionFilter filter, ColliderKey childKey, bool refreshCompoundFilter)
    Parameters
    Type Name Description
    CollisionFilter filter

    Specifies the filter.

    ColliderKey childKey

    The child key.

    bool refreshCompoundFilter

    True to refresh compound filter.

    SphereCast(float3, float, float3, float, out ColliderCastHit, CollisionFilter, QueryInteraction)

    Sphere cast.

    Declaration
    public bool SphereCast(float3 origin, float radius, float3 direction, float maxDistance, out ColliderCastHit hitInfo, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 origin

    The origin.

    float radius

    The radius.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    ColliderCastHit hitInfo

    [out] Information describing the hit.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    SphereCast(float3, float, float3, float, CollisionFilter, QueryInteraction)

    Sphere cast.

    Declaration
    public bool SphereCast(float3 origin, float radius, float3 direction, float maxDistance, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 origin

    The origin.

    float radius

    The radius.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    SphereCastAll(float3, float, float3, float, ref NativeList<ColliderCastHit>, CollisionFilter, QueryInteraction)

    Sphere cast all.

    Declaration
    public bool SphereCastAll(float3 origin, float radius, float3 direction, float maxDistance, ref NativeList<ColliderCastHit> outHits, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default)
    Parameters
    Type Name Description
    float3 origin

    The origin.

    float radius

    The radius.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    NativeList<ColliderCastHit> outHits

    [in,out] The out hits.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    SphereCastCustom<T>(float3, float, float3, float, ref T, CollisionFilter, QueryInteraction)

    Sphere cast custom.

    Declaration
    public bool SphereCastCustom<T>(float3 origin, float radius, float3 direction, float maxDistance, ref T collector, CollisionFilter filter, QueryInteraction queryInteraction = QueryInteraction.Default) where T : struct, ICollector<ColliderCastHit>
    Parameters
    Type Name Description
    float3 origin

    The origin.

    float radius

    The radius.

    float3 direction

    The direction.

    float maxDistance

    The maximum distance.

    T collector

    [in,out] The collector.

    CollisionFilter filter

    Specifies the filter.

    QueryInteraction queryInteraction

    (Optional) The query interaction.

    Returns
    Type Description
    bool

    True if there is a hit, false otherwise.

    Type Parameters
    Name Description
    T

    Generic type parameter.

    Implements

    ICollider
    ICollidable
    In This Article
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)