本文整理汇总了C#中Voxel.SetType方法的典型用法代码示例。如果您正苦于以下问题:C# Voxel.SetType方法的具体用法?C# Voxel.SetType怎么用?C# Voxel.SetType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Voxel
的用法示例。
在下文中一共展示了Voxel.SetType方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GenerateVoxel_Pass2
public void GenerateVoxel_Pass2(Voxel voxel)
{
if (voxel.TypeDef.Type == VoxelType.Dirt)
{
Voxel above = voxel.NeighborOrNull(VoxelDirection.Top);
if (!Voxel.IsSolid(above))
voxel.SetType(VoxelType.Grass);
else
{
// Get the voxel 4 spaces above me... if it's solid...then I will be stone
IntVec3 testVoxelPos = new IntVec3(voxel.Position.X, voxel.Position.Y + 2, voxel.Position.Z);
if (IsVoxelWorldIndexValid(testVoxelPos.X, testVoxelPos.Y, testVoxelPos.Z))
{
Voxel testVoxel = GetVoxel(testVoxelPos);
if (Voxel.IsSolid(testVoxel))
{
voxel.SetType(VoxelType.Stone);
}
}
}
if (voxel.Position.Y == 0)
voxel.SetType(VoxelType.Bedrock);
}
}
示例2: GenerateVoxel_Pass1
public void GenerateVoxel_Pass1(Voxel voxel)
{
voxel.SetType(VoxelType.Dirt);
if (UseHeightMap && HeightMap != null)
{
float worldRatioX = (float)voxel.Position.X / VoxelWidth;
float worldRatioY = (float)voxel.Position.Y / VoxelHeight;
float worldRatioZ = (float)voxel.Position.Z / VoxelDepth;
Color texel = HeightMap.GetPixel((int)(worldRatioX * HeightMap.width), (int)(worldRatioZ * HeightMap.height));
if (worldRatioY > texel.r)
voxel.SetType(VoxelType.Air);
}
}