diff options
| -rwxr-xr-x | indra/newview/llviewerregion.cpp | 4 | ||||
| -rwxr-xr-x | indra/newview/llvocache.cpp | 6 | ||||
| -rwxr-xr-x | indra/newview/pipeline.cpp | 4 | 
3 files changed, 11 insertions, 3 deletions
diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index a4b7efc56a..b3837a41fe 100755 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -1299,6 +1299,9 @@ BOOL LLViewerRegion::idleUpdate(F32 max_update_time)  		mPaused = FALSE; //unpause.  	} +	LLViewerCamera::eCameraID old_camera_id = LLViewerCamera::sCurCameraID; +	LLViewerCamera::sCurCameraID = LLViewerCamera::CAMERA_WORLD; +  	//reset all occluders  	mImpl->mVOCachePartition->resetOccluders();	 @@ -1313,6 +1316,7 @@ BOOL LLViewerRegion::idleUpdate(F32 max_update_time)  	mImpl->mWaitingList.clear();  	mImpl->mVisibleGroups.clear(); +	LLViewerCamera::sCurCameraID = old_camera_id;  	return did_update;  } diff --git a/indra/newview/llvocache.cpp b/indra/newview/llvocache.cpp index 70b65f14be..be7ff00c05 100755 --- a/indra/newview/llvocache.cpp +++ b/indra/newview/llvocache.cpp @@ -840,6 +840,10 @@ void LLVOCachePartition::processOccluders(LLCamera* camera)  	{  		return;  	} +	if(LLViewerCamera::sCurCameraID != LLViewerCamera::CAMERA_WORLD) +	{ +		return; //no need for those cameras. +	}  	LLVector3 region_agent = mRegionp->getOriginAgent();  	LLVector4a shift(region_agent[0], region_agent[1], region_agent[2]); @@ -864,7 +868,7 @@ void LLVOCachePartition::resetOccluders()  	for(std::set<LLVOCacheGroup*>::iterator iter = mOccludedGroups.begin(); iter != mOccludedGroups.end(); ++iter)  	{  		LLVOCacheGroup* group = *iter; -		group->clearOcclusionState(LLOcclusionCullingGroup::ACTIVE_OCCLUSION, LLOcclusionCullingGroup::STATE_MODE_ALL_CAMERAS); +		group->clearOcclusionState(LLOcclusionCullingGroup::ACTIVE_OCCLUSION);  	}	  	mOccludedGroups.clear();  	sNeedsOcclusionCheck = FALSE; diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index 2cf59d212b..c5148690a5 100755 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -2155,11 +2155,11 @@ void LLPipeline::updateMove()  			}  			//balance the VO Cache tree -			LLVOCachePartition* vo_part = region->getVOCachePartition(); +			/*LLVOCachePartition* vo_part = region->getVOCachePartition();  			if(vo_part)  			{  				vo_part->mOctree->balance(); -			} +			}*/  		}  	}  }  | 
