Пример #1
0
    private void OnValidateTest()
    {
        var meshFilter = GetComponent <MeshFilter>();

        if (meshFilter.sharedMesh == null)
        {
            meshFilter.sharedMesh = new Mesh();
        }

        if (generator == null)
        {
            generator = new MarchingCubesMeshGenerator();
        }

        var mesh = meshFilter.sharedMesh;

        var sdfTree = sdfHierarchy.CreateSDFTree();

        Bounds bounds = sdfTree.GetBounds();

        bounds.Expand(2 * step);
        //bounds.Encapsulate(globalBounds);
        bounds.Expand(expandRadius);
        lastBounds = bounds;
        generator.GenerateMesh(mesh, sdfTree.GetSDF, step, bounds);
    }
        /// <summary>
        /// Initializes references.
        /// </summary>
        public void Initialize(Block[] blocks)
        {
            _fluidProcessor = GetComponent <FluidProcessor>();
            _meshGenerator  = GetComponent <MarchingCubesMeshGenerator>();

            _blocks = blocks;

            _pendingChanges = new Dictionary <VectorI3, Voxel>();
        }
        public void MarchingCubesSphere()
        {
            MeshGenerator generator = new MarchingCubesMeshGenerator(Settings, null);

            GenerateSphere(generator);
        }
Пример #4
0
 private void Awake()
 {
     generator = new MarchingCubesMeshGenerator();
 }