Explorar o código

Add description why minstd has been chosen

Ivan Savenko hai 1 ano
pai
achega
bdc83bb1b8
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  1. 4 0
      lib/CRandomGenerator.h

+ 4 - 0
lib/CRandomGenerator.h

@@ -14,6 +14,10 @@
 
 VCMI_LIB_NAMESPACE_BEGIN
 
+/// Generator to use for all randomization in game
+/// minstd_rand is selected due to following reasons:
+/// 1. Its randomization quality is below mt_19937 however this is unlikely to be noticeable in game
+/// 2. It has very low state size, leading to low overhead in size of saved games (due to large number of random generator instances in game)
 using TGenerator = std::minstd_rand;
 using TIntDist = std::uniform_int_distribution<int>;
 using TInt64Dist = std::uniform_int_distribution<int64_t>;