public void TestRenderIsland()
        {
            var dirtMaterial = new VoxelMaterial();

            dirtMaterial.Texture = TW.Assets.LoadTexture("GrassGreenTexture0006.jpg");
            var size   = 20;
            var island = new ArrayFiniteVoxels(new Point3(size, size, size));

            island.NodeSize = 0.25f;
            for (int i = 0; i < size; i++)
            {
                for (int j = i; j < size - i; j++)
                {
                    for (int k = i; k < size - i; k++)
                    {
                        island.SetVoxel(new Point3(j, -i + size - 1, k), dirtMaterial);
                    }
                }
            }

            var c    = new VoxelMeshBuilder();
            var mesh = c.BuildMesh(island);


            var e = new Entity();

            e.Mesh = mesh;
        }
        public IMesh CreateMesh(int seed)
        {
            var r   = new Random(seed);
            var gen = new IslandGenerater(r);

            var island = gen.GenerateIsland(r.Next(7, 20));
            var mesh   = c.BuildMesh(island);

            return(mesh);
        }
        public void TestGenerateIsland()
        {
            var gen    = new IslandGenerater(new Random(123));
            var island = gen.GenerateIsland(20);

            var c    = new VoxelMeshBuilder();
            var mesh = c.BuildMesh(island);


            var e = new Entity();

            e.Mesh = mesh;
        }
Example #4
0
            public void Update()
            {
                var b       = new VoxelMeshBuilder();
                var boxMesh = b.BuildMesh(new VoxelAdapter(TerrainChunk));

                _builder = new MeshBuilder();

                clearVisible();

                _ent.WorldMatrix = Matrix.Translation(TerrainChunk.WorldPosition);
                _ent.Mesh        = boxMesh;
                _ent.Solid       = true;
                _ent.Static      = true;
            }
        public void TestRenderEmptyVoxel()
        {
            var dirtMaterial = new VoxelMaterial();

            dirtMaterial.Texture = TW.Assets.LoadTexture("GrassGreenTexture0006.jpg");
            var island = new ArrayFiniteVoxels(new Point3(1, 1, 1));

            var c    = new VoxelMeshBuilder();
            var mesh = c.BuildMesh(island);


            var e = new Entity();

            e.Mesh = mesh;
        }
        public void TestRender100Islands()
        {
            var s   = new Seeder(123);
            var gen = new IslandGenerater(new Random(123));

            var c = new VoxelMeshBuilder();

            var scale = 25;

            var range = new Vector3(100, 10, 100) * (float)Math.Sqrt(scale);

            for (int i = 0; i < 20 * scale; i++)
            {
                var island = gen.GenerateIsland(s.NextInt(7, 20));
                var mesh   = c.BuildMesh(island);
                var e      = new Entity();
                e.Mesh        = mesh;
                e.WorldMatrix = Matrix.Translation(s.NextVector3(-range, range).dx());
            }
        }