I'm seeing different results with the random generator in the distributed binary than I am with my compiled version of the engine with identical seeds.
I built a pretty simple test function to illustrate the problem:
var rng : RandomNumberGenerator = RandomNumberGenerator.new()
rng.seed = 0
for i in range(0,5):
print(rng.randi())
Results on the distributed binary:
1613493245
3894649422
2055130073
2315086854
2925816488
Results on my compiled version (both 32- and 64-bit):
881477183
1327520283
692503688
2153658078
2046399657
Looking at the code, the only reason I can see for this discrepancy is the inc (I'm guessing increment?), as the same seed was used in both runs. The code includes (pcg.h) #define PCG_DEFAULT_INC_64 1442695040888963407ULL and I believe this value is used when instantiating the random number generator. However, I can't figure out why the random number generation would be inconsistent between different compiled versions of the engine unless that INC value differs.
I'm super confused. Any ideas?