Index: GTP/trunk/App/Demos/Vis/FriendlyCulling/src/Transform3.h
===================================================================
--- GTP/trunk/App/Demos/Vis/FriendlyCulling/src/Transform3.h	(revision 3114)
+++ GTP/trunk/App/Demos/Vis/FriendlyCulling/src/Transform3.h	(revision 3359)
@@ -49,4 +49,6 @@
 	inline bool IsIdentity() const { return mIsIdentity; }
 
+	void InitFrame();
+
 
 protected:
Index: GTP/trunk/App/Demos/Vis/FriendlyCulling/src/ResourceManager.cpp
===================================================================
--- GTP/trunk/App/Demos/Vis/FriendlyCulling/src/ResourceManager.cpp	(revision 3358)
+++ GTP/trunk/App/Demos/Vis/FriendlyCulling/src/ResourceManager.cpp	(revision 3359)
@@ -346,5 +346,5 @@
 	int vertexCount;
 	str.read(reinterpret_cast<char *>(&vertexCount), sizeof(int));
-	cout << "vertices: " << vertexCount << endl;
+	
 
 	// end of file reached
@@ -382,8 +382,4 @@
 		texcoords = NULL;
 	}
-
-	cout << "here3: " << normals[vertexCount-1] << endl;
-	cout << "texCoordCount: " << texCoordCount << endl;
-
 
 	const bool delGeometry = true;
@@ -422,5 +418,4 @@
 	if (!istr.is_open()) return 0;
 
-	cout << "here7" << endl;
 	cout << "loading textures" << endl;
 	
Index: GTP/trunk/App/Demos/Vis/FriendlyCulling/src/Transform3.cpp
===================================================================
--- GTP/trunk/App/Demos/Vis/FriendlyCulling/src/Transform3.cpp	(revision 3115)
+++ GTP/trunk/App/Demos/Vis/FriendlyCulling/src/Transform3.cpp	(revision 3359)
@@ -40,5 +40,5 @@
 {
 	mIsIdentity = false;
-	mOldMatrix = mMatrix;
+	//mOldMatrix = mMatrix;
 	mMatrix = trafo * mMatrix;
 }
@@ -53,3 +53,9 @@
 
 
+void Transform3::InitFrame()
+{
+	mOldMatrix = mMatrix;
 }
+
+
+}
Index: GTP/trunk/App/Demos/Vis/FriendlyCulling/src/chcdemo.cpp
===================================================================
--- GTP/trunk/App/Demos/Vis/FriendlyCulling/src/chcdemo.cpp	(revision 3358)
+++ GTP/trunk/App/Demos/Vis/FriendlyCulling/src/chcdemo.cpp	(revision 3359)
@@ -646,8 +646,12 @@
 	// sibenik positions
 	VertexArray positions;
-	//positions.push_back(Vector3(6.07307, 8.20723, 6.7));
-	positions.push_back(Vector3(6.07307, 8.20723, 6.62));
+	
+	/*positions.push_back(Vector3(6.07307, 8.20723, 6.62));
 	positions.push_back(Vector3(-17.1935, 11.1687, 8.8781));
-	positions.push_back(Vector3(1.50032, 31.1943, 19.1f));
+	positions.push_back(Vector3(1.50032, 31.1943, 19.1f));*/
+
+	positions.push_back(Vector3(6.07307, 8.20723, 4.6f));
+	positions.push_back(Vector3(-17.1935, 11.1687, 6.8f));
+	positions.push_back(Vector3(1.50032, 31.1943, 17.6f));
 
 #endif
@@ -671,10 +675,19 @@
 	}
 
-	const float rotAngle = M_PI / 180.0f;
-	const Matrix4x4 rotMatrix = RotationZMatrix(rotAngle);
+	const float rotAngle = M_PI / 2.0f;
+	const Matrix4x4 rotMatrix = RotationXMatrix(rotAngle);
+	const Matrix4x4 scaleMatrix = ScaleMatrix(14, 14, 14);
+
 	// hack: second buddha
-	//dynamicObjects[1]->GetTransform()->MultMatrix(rotMatrix);
-
-	
+	dynamicObjects[2]->GetTransform()->MultMatrix(rotMatrix);
+	dynamicObjects[1]->GetTransform()->MultMatrix(rotMatrix);
+	dynamicObjects[0]->GetTransform()->MultMatrix(rotMatrix);
+	dynamicObjects[0]->GetTransform()->MultMatrix(scaleMatrix);
+	dynamicObjects[1]->GetTransform()->MultMatrix(scaleMatrix);
+	dynamicObjects[2]->GetTransform()->MultMatrix(scaleMatrix);
+
+	cout << "dynamic objects: " << (int)dynamicObjects.size() << endl;
+
+	// hack
 	resourceManager->mUseNormalMapping = false;
 	resourceManager->mUseSpecialColors = false;
@@ -1146,5 +1159,8 @@
 void MainLoop() 
 {	
-	if (buddha)
+	for (size_t i = 0; i < dynamicObjects.size(); ++ i)
+		dynamicObjects[i]->GetTransform()->InitFrame();
+
+	if (0)//buddha)
 	{
 		Matrix4x4 oldTrafo = buddha->GetTransform()->GetMatrix();
@@ -1180,5 +1196,5 @@
 		dynamicObjects[1]->GetTransform()->MultMatrix(rotMatrix);
 
-		const float rotAngle2 = 0.6f * M_PI / 180.0f;
+		const float rotAngle2 = 0.0033f * M_PI;
 
 		Matrix4x4 rotMatrix2 = RotationZMatrix(rotAngle);
Index: GTP/trunk/App/Demos/Vis/FriendlyCulling/Converter.vcproj
===================================================================
--- GTP/trunk/App/Demos/Vis/FriendlyCulling/Converter.vcproj	(revision 3357)
+++ GTP/trunk/App/Demos/Vis/FriendlyCulling/Converter.vcproj	(revision 3359)
@@ -156,5 +156,5 @@
 				AdditionalLibraryDirectories="libs\Zlib\lib"
 				IgnoreDefaultLibraryNames="libCMT"
-				GenerateDebugInformation="true"
+				GenerateDebugInformation="false"
 				SubSystem="1"
 				LargeAddressAware="2"
Index: GTP/trunk/App/Demos/Vis/FriendlyCulling/Converter/PlyConverter.cpp
===================================================================
--- GTP/trunk/App/Demos/Vis/FriendlyCulling/Converter/PlyConverter.cpp	(revision 3358)
+++ GTP/trunk/App/Demos/Vis/FriendlyCulling/Converter/PlyConverter.cpp	(revision 3359)
@@ -120,5 +120,5 @@
 
 	v[i ++] = (float)ply_get_argument_value(argument);
-	//printf("here3 %g", ply_get_argument_value(argument));
+	//printf("%g", ply_get_argument_value(argument));
     
 	if (eol)
@@ -215,6 +215,4 @@
 	//if (texCoordCount) str.write(reinterpret_cast<char *>(geom->mTexcoords), sizeof(float) * texCoordCount * 2);
 
-	cout << "here34 " << geom->mNormals.back() << endl;
-
 	int texCoordCount = 0;
 	str.write(reinterpret_cast<char *>(&texCoordCount), sizeof(int));
