Пример #1
0
 //[Benchmark]
 public void GreedyMeshGeneratorTest()
 {
     GreedyMeshGenerator.GenerateMesh(_data, (typeNum, orientation, side, quad, size) =>
     {
         var textureOffset = Vector2.Zero;
         _indices.Add((ushort)(_vertices.Count + 0));
         _indices.Add((ushort)(_vertices.Count + 1));
         _indices.Add((ushort)(_vertices.Count + 3));
         _indices.Add((ushort)(_vertices.Count + 1));
         _indices.Add((ushort)(_vertices.Count + 2));
         _indices.Add((ushort)(_vertices.Count + 3));
         _vertices.Add(new VertexPositionTextureNormal(quad.A, (textureOffset + new Vector2(0, 128)) / _imageSize, quad.Normal));
         _vertices.Add(new VertexPositionTextureNormal(quad.B, (textureOffset + new Vector2(0, 0)) / _imageSize, quad.Normal));
         _vertices.Add(new VertexPositionTextureNormal(quad.C, (textureOffset + new Vector2(128, 0)) / _imageSize, quad.Normal));
         _vertices.Add(new VertexPositionTextureNormal(quad.D, (textureOffset + new Vector2(128, 128)) / _imageSize, quad.Normal));
     });
 }