Survivalcraft API 1.8.2.3 v1.8.2.3
Survivalcraft 2.4
载入中...
搜索中...
未找到
ChunkBlock.cs
浏览该文件的文档.
1using Engine;
3
4namespace Game {
5 public abstract class ChunkBlock : Block {
7
9
11
12 public Color m_color;
13
14 public bool m_smooth;
15
16 public ChunkBlock(Matrix transform, Matrix tcTransform, Color color, bool smooth) {
17 m_transform = transform;
18 m_tcTransform = tcTransform;
19 m_color = color;
20 m_smooth = smooth;
21 }
22
23 public override void Initialize() {
24 Model model = m_smooth ? ContentManager.Get<Model>("Models/ChunkSmooth") : ContentManager.Get<Model>("Models/Chunk");
25 Matrix matrix = BlockMesh.GetBoneAbsoluteTransform(model.Meshes[0].ParentBone) * m_transform;
26 m_standaloneBlockMesh.AppendModelMeshPart(
27 model.Meshes[0].MeshParts[0],
28 matrix,
29 false,
30 false,
31 false,
32 false,
34 );
35 m_standaloneBlockMesh.TransformTextureCoordinates(m_tcTransform);
36 base.Initialize();
37 }
38
39 public override void GenerateTerrainVertices(BlockGeometryGenerator generator, TerrainGeometry geometry, int value, int x, int y, int z) { }
40
41 public override void DrawBlock(PrimitivesRenderer3D primitivesRenderer,
42 int value,
43 Color color,
44 float size,
45 ref Matrix matrix,
46 DrawBlockEnvironmentData environmentData) {
47 BlocksManager.DrawMeshBlock(primitivesRenderer, m_standaloneBlockMesh, color, 2f * size, ref matrix, environmentData);
48 }
49 }
50}
ReadOnlyList< ModelMesh > Meshes
static Matrix GetBoneAbsoluteTransform(ModelBone modelBone)
static void DrawMeshBlock(PrimitivesRenderer3D primitivesRenderer, BlockMesh blockMesh, float size, ref Matrix matrix, DrawBlockEnvironmentData environmentData)
override void Initialize()
ChunkBlock(Matrix transform, Matrix tcTransform, Color color, bool smooth)
BlockMesh m_standaloneBlockMesh
override void DrawBlock(PrimitivesRenderer3D primitivesRenderer, int value, Color color, float size, ref Matrix matrix, DrawBlockEnvironmentData environmentData)
override void GenerateTerrainVertices(BlockGeometryGenerator generator, TerrainGeometry geometry, int value, int x, int y, int z)
static object Get(Type type, string name)