]> git.mxchange.org Git - simgear.git/blobdiff - simgear/scene/material/matmodel.cxx
Stuart Buchanan: Fix a bug in the random object placement where the model selected...
[simgear.git] / simgear / scene / material / matmodel.cxx
index c625d9b0af0e71be2bf17e479969a5d336ba2493..93cbd49478dcdc36f635131455fe2f8e2857439f 100644 (file)
@@ -135,15 +135,11 @@ SGMatModel::load_models( SGPropertyNode *prop_root )
 }
 
 osg::Node*
-SGMatModel::get_random_model( SGPropertyNode *prop_root )
+SGMatModel::get_random_model( SGPropertyNode *prop_root, mt seed )
 {
   load_models( prop_root ); // comment this out if preloading models
   int nModels = _models.size();
-  // int index = int(sg_random() * nModels);
-  static int index = -1;
-  if (++index >= nModels)
-    index = 0;
-  return _models[index].get();
+  return _models[mt_rand(&seed) * nModels].get();
 }
 
 double