Class OccupancyInfo
Contains information about the space that a world object occupies, in the form of a list of block occupancies, that in itself contain information about
the position relative to the world objects position, blocktype and occupancy type.
More detailed information can be found here: https://github.com/StrangeLoopGames/Eco/wiki/Occupancy-System.
Inheritance
System.Object
OccupancyInfo
Assembly: Eco.Gameplay.dll
Syntax
public class OccupancyInfo : Object
Constructors
OccupancyInfo()
Declaration
Fields
Occupancies
Declaration
public List<BlockOccupancy> Occupancies
Field Value
Range
Declaration
Field Value
Properties
CenterOffset
Declaration
public Vector3 CenterOffset { get; }
Property Value
| Type |
Description |
| System.Numerics.Vector3 |
|
Dimensions
Declaration
public Vector3i Dimensions { get; }
Property Value
Methods
Contains(Vector3i, Quaternion, Vector3, Vector3i)
Checks if object at origin position rotated by rotation and with range extended by extraExtents contains position.
Declaration
public bool Contains(Vector3i origin, Quaternion rotation, Vector3 position, Vector3i extraExtents = null)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Create(List<BlockOccupancy>)
Declaration
public static OccupancyInfo Create(List<BlockOccupancy> blocks)
Parameters
| Type |
Name |
Description |
| System.Collections.Generic.List<BlockOccupancy> |
blocks |
|
Returns
GetBlockPositions(Vector3i, Quaternion)
Returns enumerable of occupancy blocks in world space for specified position and rotation.
Declaration
public IEnumerable<WrappedWorldPosition3i> GetBlockPositions(Vector3i position, Quaternion rotation)
Parameters
Returns
GetRange(Vector3i, Quaternion)
Returns WorldRange at origin position and with specified rotation. The range is exclusive.
Declaration
public WorldRange GetRange(Vector3i origin, Quaternion rotation)
Parameters
Returns
Extension Methods