Class ChunkGrid<TChunk>
Inheritance
System.Object
ChunkGrid<TChunk>
Assembly: Eco.Shared.dll
Syntax
public abstract class ChunkGrid<TChunk> : Object, IChunkGrid where TChunk : class, IChunk
Type Parameters
Constructors
ChunkGrid()
Declaration
ChunkGrid(IChunkContainer<TChunk>, Boolean)
Declaration
public ChunkGrid(IChunkContainer<TChunk> container, bool threadSafe)
Parameters
Type |
Name |
Description |
IChunkContainer<TChunk> |
container |
|
System.Boolean |
threadSafe |
|
Properties
Chunks
Declaration
public IEnumerable<TChunk> Chunks { get; }
Property Value
Type |
Description |
System.Collections.Generic.IEnumerable<TChunk> |
|
ChunksCount
Declaration
public int ChunksCount { get; }
Property Value
Type |
Description |
System.Int32 |
|
Guid
Declaration
public Guid Guid { get; protected set; }
Property Value
Type |
Description |
System.Guid |
|
MaxChunkPos
Declaration
public Vector3i MaxChunkPos { get; }
Property Value
MinChunkPos
Declaration
public Vector3i MinChunkPos { get; }
Property Value
WrappedChunkSize
Declaration
public Vector3i WrappedChunkSize { get; }
Property Value
WrappedVoxelSize
Declaration
public Vector3i WrappedVoxelSize { get; }
Property Value
Methods
AddChunk(TChunk)
Declaration
public void AddChunk(TChunk chunk)
Parameters
Type |
Name |
Description |
TChunk |
chunk |
|
Clear(Guid)
Declaration
public virtual void Clear(Guid newGuid)
Parameters
Type |
Name |
Description |
System.Guid |
newGuid |
|
ClosestWrappedLocation(Vector3, Vector3)
Declaration
public Vector3 ClosestWrappedLocation(Vector3 viewPosition, Vector3 position)
Parameters
Type |
Name |
Description |
System.Numerics.Vector3 |
viewPosition |
|
System.Numerics.Vector3 |
position |
|
Returns
Type |
Description |
System.Numerics.Vector3 |
|
CreateChunk(Vector3i)
Declaration
public abstract TChunk CreateChunk(Vector3i chunkPos)
Parameters
Returns
GetChunk(Vector3i)
Declaration
public TChunk GetChunk(Vector3i chunkPos)
Parameters
Returns
GetChunkColumn(Vector2i)
Returns all non-empty chunks in chunk column
.
Declaration
public IEnumerable<TChunk> GetChunkColumn(Vector2i column)
Parameters
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<TChunk> |
|
GetChunks(WorldRange)
Declaration
public IEnumerable<IChunk> GetChunks(WorldRange range)
Parameters
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<IChunk> |
|
GetChunks(IEnumerable<WorldRange>)
Gets all chunks in ranges
(unwrapped).
Declaration
public IEnumerable<IChunk> GetChunks(IEnumerable<WorldRange> ranges)
Parameters
Type |
Name |
Description |
System.Collections.Generic.IEnumerable<WorldRange> |
ranges |
|
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<IChunk> |
|
GetOrAddChunk(Vector3i)
Declaration
public TChunk GetOrAddChunk(Vector3i chunkPos)
Parameters
Returns
GetVisibleChunks(Vector3, Single)
Declaration
public IEnumerable<IChunk> GetVisibleChunks(Vector3 observerPosition, float viewDistance)
Parameters
Type |
Name |
Description |
System.Numerics.Vector3 |
observerPosition |
|
System.Single |
viewDistance |
|
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<IChunk> |
|
GetWrappedChunkPosition(Vector3i)
Declaration
protected Vector3i GetWrappedChunkPosition(Vector3i chunkPos)
Parameters
Returns
GetWrappedChunkPositionInternal(Vector3i)
Declaration
protected Vector3i GetWrappedChunkPositionInternal(Vector3i chunkPos)
Parameters
Returns
RemoveChunk(TChunk)
Declaration
public virtual void RemoveChunk(TChunk chunk)
Parameters
Type |
Name |
Description |
TChunk |
chunk |
|
SetVoxelSize(Vector3i)
Declaration
public void SetVoxelSize(Vector3i size)
Parameters
Events
SizeChangedEvent
Declaration
public event Action<Vector3i> SizeChangedEvent
Event Type
Type |
Description |
System.Action<Vector3i> |
|
Implements
Extension Methods