Table of Contents

Class WorldGrid

Namespace
Shard.Gameplay.World
Assembly
Shard.Gameplay.World.dll

Provides synchronous World-thread operations for generic spatial grids.

public sealed class WorldGrid
Inheritance
WorldGrid
Inherited Members

Methods

AddressOf(Entity, int, Vector3d)

public GridCellAddress AddressOf(Entity grid, int level, Vector3d worldPosition)

Parameters

grid Entity
level int
worldPosition Vector3d

Returns

GridCellAddress

Contains(GridCellAddress, GridCellAddress)

public bool Contains(GridCellAddress container, GridCellAddress candidate)

Parameters

container GridCellAddress
candidate GridCellAddress

Returns

bool

Create(StableEntityId, Transform, SpatialGridLayout, Action<Entity>?)

public StableEntityId Create(StableEntityId id, Transform transform, SpatialGridLayout layout, Action<Entity>? configure = null)

Parameters

id StableEntityId
transform Transform
layout SpatialGridLayout
configure Action<Entity>

Returns

StableEntityId

GetMemberships(Entity)

Derives passive addresses for every explicit membership target.

public GridMembership[] GetMemberships(Entity entity)

Parameters

entity Entity

Returns

GridMembership[]

LoadCell(GridCellAddress, StableEntityId?, Action<Entity>?)

public GridCellAddress LoadCell(GridCellAddress address, StableEntityId? cellId = null, Action<Entity>? configure = null)

Parameters

address GridCellAddress
cellId StableEntityId?
configure Action<Entity>

Returns

GridCellAddress

ToLocalPosition(Entity, Vector3d)

public Vector3d ToLocalPosition(Entity grid, Vector3d worldPosition)

Parameters

grid Entity
worldPosition Vector3d

Returns

Vector3d

ToWorldPosition(Entity, Vector3d)

public Vector3d ToWorldPosition(Entity grid, Vector3d localPosition)

Parameters

grid Entity
localPosition Vector3d

Returns

Vector3d

TryWithLoadedCell(GridCellAddress, Action<Entity>)

Invokes a callback only when the exact address has a live claimant.

public bool TryWithLoadedCell(GridCellAddress address, Action<Entity> callback)

Parameters

address GridCellAddress
callback Action<Entity>

Returns

bool