C# Class Dwarrowdelf.Client.Chunk

Show file Open project: tomba/dwarrowdelf Class Usage Examples

Public Properties

Property Type Description
BBox BoundingBox
ChunkSize IntSize3
UseBigUnknownChunk bool
s_cubeFaceInfo CubeFaceInfo[]

Public Methods

Method Description
Chunk ( EnvironmentObject map, IntVector3 chunkPosition ) : System
CreateCube ( IntVector3 p, Direction visibleFaces, FaceTexture &baseTexture, FaceTexture &topTexture, VertexList vertexList, Direction sliceFaces ) : void
CreateUndefinedChunk ( IntGrid3 &viewGrid, IntGrid3 &chunkGrid, VertexList vertexList, Direction visibleChunkFaces ) : void
DrawTerrain ( GraphicsDevice device ) : void
DrawTrees ( GraphicsDevice device ) : void
FillVoxelMap ( ) : void
Free ( ) : void
GenerateVertices ( IntGrid3 &viewGrid, Direction visibleChunkFaces, VertexList terrainVertexList, VertexList sceneryVertexList ) : void
GenerateVertices ( IntGrid3 &viewGrid, IntVector3 cameraChunkPos, VertexList terrainVertexList, VertexList sceneryVertexList ) : void
GetOcclusionsForFace ( IntVector3 p, DirectionOrdinal face, int &o0, int &o1, int &o2, int &o3 ) : void
GetTextures ( IntVector3 p, Voxel &vox, FaceTexture &baseTexture, FaceTexture &topTexture, Direction sliceFaces ) : void
GetVoxelDebug ( IntVector3 mp ) : string
HandleVoxel ( IntVector3 p, Voxel &vox, IntGrid3 &viewGrid, Direction visibleChunkFaces, VertexList vertexList ) : void
ScanForAllEmptyOrUndefined ( ) : void
UpdateSceneryVertexBuffer ( GraphicsDevice device, VertexList vertexList ) : void
UpdateVertexBuffer ( GraphicsDevice device, VertexList vertexList ) : void
UpdateVoxel ( IntVector3 mp ) : void

Private Methods

Method Description
Chunk ( ) : System
CreateFaceInfo ( Direction normalDir, Direction upDir, Direction rightDir ) : CubeFaceInfo
GetGridSliceDirections ( IntGrid3 &grid, IntGrid3 &viewGrid ) : Direction

Directions of faces which are revealed due to ViewGrid

GetVisibleFaces ( IntVector3 p ) : Direction
GetVoxelSliceDirections ( IntVector3 p, IntGrid3 &viewGrid ) : Direction

Directions of faces which are revealed due to ViewGrid

HandleTree ( VertexList sceneryVertexList, TileData td, IntVector3 &pos ) : void
IsBlocker ( IntVector3 p ) : bool

Method Details

Chunk() public method

public Chunk ( EnvironmentObject map, IntVector3 chunkPosition ) : System
map EnvironmentObject
chunkPosition IntVector3
return System

CreateCube() public method

public CreateCube ( IntVector3 p, Direction visibleFaces, FaceTexture &baseTexture, FaceTexture &topTexture, VertexList vertexList, Direction sliceFaces ) : void
p IntVector3
visibleFaces Direction
baseTexture FaceTexture
topTexture FaceTexture
vertexList VertexList
sliceFaces Direction
return void

CreateUndefinedChunk() public method

public CreateUndefinedChunk ( IntGrid3 &viewGrid, IntGrid3 &chunkGrid, VertexList vertexList, Direction visibleChunkFaces ) : void
viewGrid IntGrid3
chunkGrid IntGrid3
vertexList VertexList
visibleChunkFaces Direction
return void

DrawTerrain() public method

public DrawTerrain ( GraphicsDevice device ) : void
device GraphicsDevice
return void

DrawTrees() public method

public DrawTrees ( GraphicsDevice device ) : void
device GraphicsDevice
return void

FillVoxelMap() public method

public FillVoxelMap ( ) : void
return void

Free() public method

public Free ( ) : void
return void

GenerateVertices() public method

public GenerateVertices ( IntGrid3 &viewGrid, Direction visibleChunkFaces, VertexList terrainVertexList, VertexList sceneryVertexList ) : void
viewGrid IntGrid3
visibleChunkFaces Direction
terrainVertexList VertexList
sceneryVertexList VertexList
return void

GenerateVertices() public method

public GenerateVertices ( IntGrid3 &viewGrid, IntVector3 cameraChunkPos, VertexList terrainVertexList, VertexList sceneryVertexList ) : void
viewGrid IntGrid3
cameraChunkPos IntVector3
terrainVertexList VertexList
sceneryVertexList VertexList
return void

GetOcclusionsForFace() public method

public GetOcclusionsForFace ( IntVector3 p, DirectionOrdinal face, int &o0, int &o1, int &o2, int &o3 ) : void
p IntVector3
face DirectionOrdinal
o0 int
o1 int
o2 int
o3 int
return void

GetTextures() public method

public GetTextures ( IntVector3 p, Voxel &vox, FaceTexture &baseTexture, FaceTexture &topTexture, Direction sliceFaces ) : void
p IntVector3
vox Voxel
baseTexture FaceTexture
topTexture FaceTexture
sliceFaces Direction
return void

GetVoxelDebug() public method

public GetVoxelDebug ( IntVector3 mp ) : string
mp IntVector3
return string

HandleVoxel() public method

public HandleVoxel ( IntVector3 p, Voxel &vox, IntGrid3 &viewGrid, Direction visibleChunkFaces, VertexList vertexList ) : void
p IntVector3
vox Voxel
viewGrid IntGrid3
visibleChunkFaces Direction
vertexList VertexList
return void

ScanForAllEmptyOrUndefined() public method

public ScanForAllEmptyOrUndefined ( ) : void
return void

UpdateSceneryVertexBuffer() public method

public UpdateSceneryVertexBuffer ( GraphicsDevice device, VertexList vertexList ) : void
device GraphicsDevice
vertexList VertexList
return void

UpdateVertexBuffer() public method

public UpdateVertexBuffer ( GraphicsDevice device, VertexList vertexList ) : void
device GraphicsDevice
vertexList VertexList
return void

UpdateVoxel() public method

public UpdateVoxel ( IntVector3 mp ) : void
mp IntVector3
return void

Property Details

BBox public property

public BoundingBox BBox
return BoundingBox

ChunkSize public static property

public static IntSize3 ChunkSize
return IntSize3

UseBigUnknownChunk public static property

public static bool UseBigUnknownChunk
return bool

s_cubeFaceInfo public static property

Cube face infos, in the same order as DirectionOrdinal enum
public static CubeFaceInfo[] s_cubeFaceInfo
return CubeFaceInfo[]