Apply a random seed when NOT in benchmark mode to have 100% deterministic runs in all samples (#1127)

* Apply a random seed when NOT in benchmark mode to have 100% deterministic runs

These samples lack the check for benchmark.active when applying a random seed, which is done for other samples.

* Update texture3d.cpp
This commit is contained in:
takayhan-AMD 2024-05-18 10:01:01 +02:00 committed by GitHub
parent 478b6c39bf
commit 3d4446fa15
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 26 additions and 27 deletions

View file

@ -28,9 +28,9 @@ public:
float ambient;
} material;
VkDescriptorSet descriptorSet;
void setRandomMaterial() {
void setRandomMaterial(bool applyRandomSeed) {
std::random_device rndDevice;
std::default_random_engine rndEngine(rndDevice());
std::default_random_engine rndEngine(applyRandomSeed ? rndDevice() : 0);
std::uniform_real_distribution<float> rndDist(0.1f, 1.0f);
material.r = rndDist(rndEngine);
material.g = rndDist(rndEngine);
@ -161,7 +161,7 @@ public:
// Setup random materials for every object in the scene
for (uint32_t i = 0; i < objects.size(); i++) {
objects[i].setRandomMaterial();
objects[i].setRandomMaterial(!benchmark.active);
}
}
@ -342,7 +342,7 @@ public:
void updateMaterials() {
// Setup random materials for every object in the scene
for (uint32_t i = 0; i < objects.size(); i++) {
objects[i].setRandomMaterial();
objects[i].setRandomMaterial(!benchmark.active);
}
for (auto &object : objects) {