Example #1
0
        public void Update()
        {
//			if (Application.isPlaying) {
//				if (updateCounter == 0) {
//					if (useLod) {
//						if (curLodDetail < lodDetail) {
//							if (lodDetail - curLodDetail < 0.1f) {
//								if (lodDetail - curLodDetail > -0.1f)
//									curLodDetail = lodDetail;
//								else
//									curLodDetail -= 0.1f;
//							} else
//								curLodDetail += 0.1f;
//						}
////						updateLocalCamPosition();
//					}
//					if (updateCheckJobs < 1)
//						enqueueCheck(new UpdateCheckJob(head, this, 0));
//				}
//				updateCounter = (updateCounter + 1) % 2;
//			}
            applyQueuedMeshes();
            if (jobQueue.Count < 1)
            {
                generatingTrees.Remove(this);
            }
            if (generationPaused)
            {
                if (VoxelThread.getJobCount() < 1 && jobQueue.Count < 1)
                {
                    //if (!rebakedLighting) {
                    //	UnityEditor.Lightmapping.Bake();
                    //	rebakedLighting = true;
                    //} else if (!UnityEditor.Lightmapping.isRunning) {
                    generationPaused = false;
                    Time.timeScale   = 1;
                    //}
                }
            }
        }
Example #2
0
 public bool generating()
 {
     return(VoxelThread.getJobCount() > 0 || jobQueue.Count > 0);
 }
Example #3
0
 public void enqueueUpdate(VoxelJob job)
 {
     VoxelThread.enqueueUpdate(job);
 }