Index: GTP/trunk/App/Demos/Vis/KdTreeDemo/OGRE/include/TestKdTreeAppListener.h
===================================================================
--- GTP/trunk/App/Demos/Vis/KdTreeDemo/OGRE/include/TestKdTreeAppListener.h	(revision 1211)
+++ GTP/trunk/App/Demos/Vis/KdTreeDemo/OGRE/include/TestKdTreeAppListener.h	(revision 1215)
@@ -91,4 +91,5 @@
 		Options():
 		mDemoMode(false),
+		mEnhancedVisibility(false),
 		mRotateSpeed(36.0f),
 		mMoveSpeed(100.0f),
@@ -107,4 +108,5 @@
 		String mDemoLogfileName;
 		bool mDemoMode;
+		bool mEnhancedVisibility;
 		Degree mRotateSpeed;
 		Real mMoveSpeed;
@@ -163,4 +165,5 @@
 
 	const static String NA;
+	const static Real DEMO_WAIT;
 protected:
 	// basic
Index: GTP/trunk/App/Demos/Vis/KdTreeDemo/OGRE/src/TestKdTree.cpp
===================================================================
--- GTP/trunk/App/Demos/Vis/KdTreeDemo/OGRE/src/TestKdTree.cpp	(revision 1205)
+++ GTP/trunk/App/Demos/Vis/KdTreeDemo/OGRE/src/TestKdTree.cpp	(revision 1215)
@@ -34,5 +34,7 @@
 				.addOpt("","ki", ARGUMENT_REQUIRED)
 				.addOpt("r","rendermode", ARGUMENT_REQUIRED)
-				.addOpt("s","scenemgr", ARGUMENT_REQUIRED);
+				.addOpt("s","scenemgr", ARGUMENT_REQUIRED)
+				.addOpt("","comment", ARGUMENT_REQUIRED)
+				.addOpt("e","enhancevis", ARGUMENT_NONE);
 
 
@@ -40,5 +42,7 @@
 			cmdparser.getOpt("o", options.mDemoOutfileName);
 			cmdparser.getOpt("l", options.mDemoLogfileName);
+			cmdparser.getOpt("comment", options.mComment);
 			options.mDemoMode = cmdparser.getOpt("d");
+			options.mEnhancedVisibility = cmdparser.getOpt("e");
 
 			std::string tmp;
@@ -248,13 +252,9 @@
 		// don't load the other stuff
 		loadScene(mSceneFiles);
-		//mCamera->setPosition(Vector3(830, 300, -540));
-		//mCamera->setOrientation(Quaternion(-0.3486, 0.0122, 0.9365, 0.0329));
-		// total view
-		//mCamera->setPosition(Vector3(688, 866, 944));
-		//mCamera->setOrientation(Quaternion(-0.979419, 0.201128, 0.0165594, 0.00340038));
+		// top view
 		mTopCam->setPosition(Vector3(1232, 3990, -1477));
 		// walkthrough view
-		mCamNode->setPosition(Vector3(1102.56, 181.845, -350.305));
-		//mCamNode->setOrientation(Quaternion(-0.977321, -0.117497, -0.174903, 0.0210273));
+		mCamNode->setPosition(Vector3(827.885, 184.435, -524.984));
+		mCamNode->setOrientation(Quaternion(0.98935, 0.0348082, -0.141246, 0.00496945));
 
 		mSceneMgr->setSkyBox(true, "Examples/CloudyNoonSkyBox", 5000, true);
@@ -422,4 +422,5 @@
 	mSceneMgr->setOption("KI", &mOptions.mKI);
 	mSceneMgr->setOption("RenderMethod", &mOptions.mRenderMethod);
+	mSceneMgr->setOption("EnhancedVisibility", &mOptions.mEnhancedVisibility);
 }
 
Index: GTP/trunk/App/Demos/Vis/KdTreeDemo/OGRE/src/TestKdTreeAppListener.cpp
===================================================================
--- GTP/trunk/App/Demos/Vis/KdTreeDemo/OGRE/src/TestKdTreeAppListener.cpp	(revision 1211)
+++ GTP/trunk/App/Demos/Vis/KdTreeDemo/OGRE/src/TestKdTreeAppListener.cpp	(revision 1215)
@@ -7,4 +7,5 @@
 
 const String KdTreeAppListener::NA = ": N/A";
+const Real KdTreeAppListener::DEMO_WAIT = 5.0;
 
 void KdTreeAppListener::updateStats(void)
@@ -154,6 +155,6 @@
 	if (!mOptions.mDemoInfileName.empty() && mOptions.mDemoMode)
 	{
-		// force 3 second wait when in demo mode - avoids initial low framerate due to loading delays
-		mWaitBeforeDemoStart = 3.0;
+		// force X second wait when in demo mode - avoids initial low framerate due to loading delays
+		mWaitBeforeDemoStart = DEMO_WAIT;
 		// set playback icon
 		togglePlayback();
@@ -894,5 +895,16 @@
 		mTimeUntilNextToggle = 0.5;
 		if (!displayCameraDetails)
+		{
 			mWindow->setDebugText("");
+		}
+		else
+		{
+			LogManager::getSingleton().logMessage("############## Camera Position:");
+			LogManager::getSingleton().logMessage("############## " + StringConverter::toString(mCamera->getDerivedPosition()));
+			LogManager::getSingleton().logMessage("############## " + StringConverter::toString(mCamera->getDerivedOrientation()));
+			LogManager::getSingleton().logMessage("############## Cull Camera Position:");
+			LogManager::getSingleton().logMessage("############## " + StringConverter::toString(mTopCam->getPosition()));
+			LogManager::getSingleton().logMessage("############## " + StringConverter::toString(mTopCam->getOrientation()));
+		}
 	}
 	if (displayCameraDetails)
@@ -1036,5 +1048,10 @@
 	mWaitBeforeDemoStart -= evt.timeSinceLastFrame;
 	if (mWaitBeforeDemoStart > 0.0)
+	{
+		// do full turn to preload geometry
+		static Real dps = (360 / DEMO_WAIT);
+		mCamNode->yaw(Radian(Degree(dps * evt.timeSinceLastFrame)), Ogre::Node::TS_WORLD);
 		return true;
+	}
 
 	// demo playback - replace position with stored one
