@@ -115,6 +115,7 @@ int main()
115115
116116 // TODO: Move into renderer?
117117 bool rightHandedCamera = true ;
118+ float moveSpeed = core::nan<float >();
118119 auto camera = smgr->addCameraSceneNode (nullptr );
119120 auto isOkSensorType = [](const ext::MitsubaLoader::CElementSensor& sensor) -> bool {
120121 return sensor.type == ext::MitsubaLoader::CElementSensor::Type::PERSPECTIVE || sensor.type == ext::MitsubaLoader::CElementSensor::Type::THINLENS;
@@ -204,6 +205,7 @@ int main()
204205 camera->setProjectionMatrix (core::matrix4SIMD::buildProjectionMatrixPerspectiveFovRH (core::radians (realFoVDegrees), aspectRatio, nearClip, persp->farClip ));
205206 else
206207 camera->setProjectionMatrix (core::matrix4SIMD::buildProjectionMatrixPerspectiveFovLH (core::radians (realFoVDegrees), aspectRatio, nearClip, persp->farClip ));
208+ moveSpeed = persp->moveSpeed ;
207209 }
208210 else
209211 {
@@ -271,7 +273,9 @@ int main()
271273 core::vector3df_SIMD ptu[] = {core::vectorSIMDf ().set (camera->getPosition ()),camera->getTarget (),camera->getUpVector ()};
272274 auto proj = camera->getProjectionMatrix ();
273275
274- camera = smgr->addCameraSceneNodeFPS (nullptr , 80 .f , core::min (extent.X , extent.Y , extent.Z ) * 0 .0001f );
276+ if (core::isnan (moveSpeed))
277+ moveSpeed = core::min (extent.X ,extent.Y ,extent.Z )*0 .0001f ;
278+ camera = smgr->addCameraSceneNodeFPS (nullptr ,80 .f ,moveSpeed);
275279 camera->setPosition (ptu[0 ].getAsVector3df ());
276280 camera->setTarget (ptu[1 ].getAsVector3df ());
277281 camera->setUpVector (ptu[2 ]);
0 commit comments