Platformer Pro  2.3.2
A platform game kit for Unity.
PlatformerPro.NoAllocationRaycast Class Reference

A simple raycast collider wrapping a standard 2D raycast in a way that ensures no per frame allocation. More...

Inheritance diagram for PlatformerPro.NoAllocationRaycast:
PlatformerPro.BasicRaycast PlatformerPro.NoAllocationSmartFeetcast PlatformerPro.NoAllocationSmartHeadcast

Public Member Functions

override RaycastHit2D[] GetRaycastHits ()
 Get all raycast hits. More...
 
- Public Member Functions inherited from PlatformerPro.BasicRaycast
virtual RaycastHit2D GetRaycastHit ()
 Get the first raycast hit. More...
 
virtual Vector2 GetDirection ()
 Gets the direction for the raycast. More...
 

Static Public Attributes

const int MAX_HITS = 4
 The maximum number of raycasts to fire. More...
 
const int MAX_LAYER = 16
 The maximum layer to check. More...
 
static RaycastHit2D EmptyRaycastHit = new RaycastHit2D()
 Store an empty raycast hit. More...
 

Protected Member Functions

override void Init ()
 Set up the raycasts. More...
 
virtual int CountBits (int layerMask)
 Counts the bits that are set to 1 in the LayerMask More...
 

Protected Attributes

RaycastHit2D[] hits
 Cached array of hits. More...
 
- Protected Attributes inherited from PlatformerPro.BasicRaycast
Transform transform
 Stores the transform from which the ray position is relative to. Most collider will use the characters transform which is set on Init(). More...
 
float length
 The length of the ray. More...
 
RaycastType raycastType
 The type of raycast. More...
 
float lookAhead
 The additional length to add to the ray to "look ahead" for special conditions. More...
 
Vector2 extent
 The position the ray is cast from (relative to transform). More...
 
int layerMask
 The layer mask. More...
 

Properties

override int LayerMask [get, set]
 Gets or sets the layer mask for the collision. More...
 
- Properties inherited from PlatformerPro.BasicRaycast
virtual bool Disabled [get, set]
 Enables or disables the collider. More...
 
virtual Transform Transform [get, set]
 Stores the transform from which the ray position is relative to. Usually the position of the character or one of the characters limbs. More...
 
virtual float Length [get, set]
 The length of the ray. More...
 
float RawLength [get]
 Gets the raw value of the length parameter. Required because smart colliders often change Length. More...
 
virtual float LookAhead [get, set]
 The additional length to add to the ray to "look ahead" for special conditions. More...
 
virtual RaycastType RaycastType [get, set]
 The type of raycast. More...
 
virtual Vector2 WorldPosition [get]
 The position the ray is cast from (relative to transform). More...
 
virtual int LayerMask [get, set]
 Gets or sets the layer mask for the collision. More...
 
virtual Vector2 Extent [get, set]
 Gets the extent of this collider relative to character position and rotation. For feet colliders the extent would be the offset to add to the character to find the bottom of the foot. More...
 
virtual Vector2 WorldExtent [get]
 Gets the extent of this collider in world space (i.e. with character transform applied). More...
 

Detailed Description

A simple raycast collider wrapping a standard 2D raycast in a way that ensures no per frame allocation.

Member Function Documentation

◆ CountBits()

virtual int PlatformerPro.NoAllocationRaycast.CountBits ( int  layerMask)
protectedvirtual

Counts the bits that are set to 1 in the LayerMask

Returns
The number of bits set to 1.

◆ GetRaycastHits()

override RaycastHit2D [] PlatformerPro.NoAllocationRaycast.GetRaycastHits ( )
virtual

Get all raycast hits.

Reimplemented from PlatformerPro.BasicRaycast.

Reimplemented in PlatformerPro.NoAllocationSmartFeetcast.

◆ Init()

override void PlatformerPro.NoAllocationRaycast.Init ( )
protectedvirtual

Set up the raycasts.

Reimplemented from PlatformerPro.BasicRaycast.

Member Data Documentation

◆ EmptyRaycastHit

RaycastHit2D PlatformerPro.NoAllocationRaycast.EmptyRaycastHit = new RaycastHit2D()
static

Store an empty raycast hit.

◆ hits

RaycastHit2D [] PlatformerPro.NoAllocationRaycast.hits
protected

Cached array of hits.

◆ MAX_HITS

const int PlatformerPro.NoAllocationRaycast.MAX_HITS = 4
static

The maximum number of raycasts to fire.

◆ MAX_LAYER

const int PlatformerPro.NoAllocationRaycast.MAX_LAYER = 16
static

The maximum layer to check.

Property Documentation

◆ LayerMask

override int PlatformerPro.NoAllocationRaycast.LayerMask
getset

Gets or sets the layer mask for the collision.

The layer mask.


The documentation for this class was generated from the following file: