示例#1
0
		public void build (VoxelData[] datas)
		{
			if (empty) {

				this._product = new VoxelProduct();

				VoxelData2Point vd2p = new VoxelData2Point(datas);
				vd2p.build(this._product);

				VoxelShadowBuild vsb = new VoxelShadowBuild ();
				vsb.build(this._product);


				VoxelMeshBuild vmb = new VoxelMeshBuild ();
				vmb.build(this._product);

				VoxelRemoveSameVertices rsv = new VoxelRemoveSameVertices ();
				rsv.build(this._product);

				//VoxelRemoveFace vrf = new VoxelRemoveFace ();
				//vrf.build(this._product);

				/*
				VoxelRemoveFace vrf = new VoxelRemoveFace ();
				vrf.build(this._product);
				*/

				_geometry = new VoxelGeometry();
				_geometry.draw (this._product, this.gameObject, this._material);
			}

		}
示例#2
0
    static public Task Task(VoxelMeshBuild vmb, VoxelProduct.Product main, Dictionary <VectorInt3, VoxelHandler> all)
    {
        Task task = new Task();

        TaskManager.PushFront(task, delegate {
            vmb.build(main, all);
        });


        return(task);
    }
示例#3
0
    Task meshBuild()
    {
        int  tick = 0;
        Task task = new Task();

        task.init = delegate {
            tick = ConvertDateTimeInt(DateTime.Now);
            VoxelMeshBuild vmb = new VoxelMeshBuild();
            vmb.build(product_);
        };
        task.shutdown = delegate {
            logIt("meshBuild", ConvertDateTimeInt(DateTime.Now) - tick);
        };
        return(task);
    }
示例#4
0
 static public void Run(VoxelMeshBuild vmb, VoxelProduct product)
 {
     vmb.build(product);
 }