Esempio n. 1
0
        private void extractMeshBtn_Click(object sender, EventArgs e)
        {
            previewWindow1.TransvoxelManager.Chunks = new System.Collections.Concurrent.ConcurrentDictionary <Vector3, TransvoxelHelpers.Chunk>();
            previewWindow1.TransvoxelManager.SurfaceExtractor.UseCache = previewWindow1.Settings.ReuseVert;
            previewWindow1.TransvoxelManager.VolumeData.ChunkSize      = previewWindow1.Settings.ChunkSize;
            _logger.Log("MAIN", "Extracting Mesh...");



            new Thread(
                () =>
            {
                //Thread.CurrentThread.IsBackground = true;

                TransvoxelManager tvm  = previewWindow1.TransvoxelManager;
                HashedVolume <sbyte> v = (HashedVolume <sbyte>)tvm.VolumeData;
                foreach (WorldChunk <sbyte> c in v.data.Values)
                {
                    tvm.ExtractMesh(c);
                }

                _logger.Log("MAIN", "Mesh Extraction Complete.");
            }

                ).Start();
        }