diff --git a/source/graphics/ObjectBase.cpp b/source/graphics/ObjectBase.cpp index 719b675a0f..a7fc568cdd 100644 --- a/source/graphics/ObjectBase.cpp +++ b/source/graphics/ObjectBase.cpp @@ -29,8 +29,6 @@ #include "lib/timer.h" #include "maths/MathUtil.h" -#include - namespace { /** @@ -594,7 +592,7 @@ std::set CObjectBase::CalculateRandomRemainingSelections(rng_t& rng, const // Choose a random number in the interval [0..totalFreq) to choose one of the variants. // If the diversity is "none", force 0 to return the first valid variant. - int randNum = diversity == CObjectManager::VariantDiversity::NONE ? 0 : boost::random::uniform_int_distribution(0, totalFreq-1)(rng); + int randNum = diversity == CObjectManager::VariantDiversity::NONE ? 0 : std::uniform_int_distribution(0, totalFreq - 1)(rng); for (size_t i = 0; i < grp->size(); ++i) { randNum -= (allZero ? 1 : (*grp)[i].m_Frequency); diff --git a/source/graphics/ObjectBase.h b/source/graphics/ObjectBase.h index e0a23d18ca..8cabb4a0da 100644 --- a/source/graphics/ObjectBase.h +++ b/source/graphics/ObjectBase.h @@ -28,9 +28,9 @@ class CObjectManager; class CXeromyces; class XMBElement; -#include #include #include +#include #include #include #include @@ -185,7 +185,7 @@ private: // A low-quality RNG like rand48 causes visible non-random patterns (particularly // in large grids of the same actor with consecutive seeds, e.g. forests), // so use a better one that appears to avoid those patterns - using rng_t = boost::mt19937; + using rng_t = std::mt19937; std::set CalculateRandomRemainingSelections(rng_t& rng, const std::vector>& initialSelections) const; /** diff --git a/source/graphics/ParticleEmitterType.cpp b/source/graphics/ParticleEmitterType.cpp index d7768997f1..b1f0ec870f 100644 --- a/source/graphics/ParticleEmitterType.cpp +++ b/source/graphics/ParticleEmitterType.cpp @@ -40,12 +40,10 @@ #include "renderer/backend/Sampler.h" #include -#include #include #include #include - /** * Interface for particle state variables, which get evaluated for each newly * constructed particle. @@ -133,7 +131,7 @@ public: virtual float Compute(CParticleEmitterType& type, CParticleEmitter&) { - return boost::random::uniform_real_distribution(m_Min, m_Max)(type.m_Manager.m_RNG); + return std::uniform_real_distribution(m_Min, m_Max)(type.m_Manager.m_RNG); } virtual float Min(CParticleEmitterType&) diff --git a/source/graphics/ParticleManager.h b/source/graphics/ParticleManager.h index 255e64c73a..417c192594 100644 --- a/source/graphics/ParticleManager.h +++ b/source/graphics/ParticleManager.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2019 Wildfire Games. +/* Copyright (C) 2025 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -21,8 +21,8 @@ #include "graphics/ParticleEmitter.h" #include "graphics/ParticleEmitterType.h" -#include #include +#include #include class SceneCollector; @@ -55,7 +55,7 @@ public: Status ReloadChangedFile(const VfsPath& path); /// Random number generator shared between all particle emitters. - boost::mt19937 m_RNG; + std::mt19937 m_RNG; private: float m_CurrentTime; diff --git a/source/maths/tests/test_Sqrt.h b/source/maths/tests/test_Sqrt.h index 542cc38e5f..d396b85114 100644 --- a/source/maths/tests/test_Sqrt.h +++ b/source/maths/tests/test_Sqrt.h @@ -20,11 +20,9 @@ #include "lib/types.h" #include "maths/Sqrt.h" -#include -#include -#include #include #include +#include class TestSqrt : public CxxTest::TestSuite { @@ -78,13 +76,12 @@ public: // Test with some random u64s, to make sure the output agrees with floor(sqrt(double)) // (TODO: This might be making non-portable assumptions about sqrt(double)) - boost::mt19937 rng; - boost::random::uniform_int_distribution ints(0, (u64)-1); - boost::variate_generator> gen(rng, ints); + std::mt19937 rng; + std::uniform_int_distribution ints(0, (u64)-1); for (size_t i = 0; i < 1024; ++i) { - u64 n = gen(); + u64 n = ints(rng); s(n, static_cast(sqrt(static_cast(n)))); } } diff --git a/source/simulation2/components/tests/test_RangeManager.h b/source/simulation2/components/tests/test_RangeManager.h index 4b1b123da9..a707d9da6d 100644 --- a/source/simulation2/components/tests/test_RangeManager.h +++ b/source/simulation2/components/tests/test_RangeManager.h @@ -22,9 +22,7 @@ #include "simulation2/components/ICmpPosition.h" #include "simulation2/components/ICmpVision.h" -#include -#include - +#include #include class MockVisionRgm : public ICmpVision @@ -175,11 +173,11 @@ public: { CMessagePositionChanged msg(100, true, entity_pos_t::FromInt(348), entity_pos_t::FromInt(83), entity_angle_t::Zero()); cmp->HandleMessage(msg, false); } cmp->Verify(); - boost::mt19937 rng; + std::mt19937 rng; for (size_t i = 0; i < 1024; ++i) { - double x = boost::random::uniform_real_distribution(0.0, 512.0)(rng); - double z = boost::random::uniform_real_distribution(0.0, 512.0)(rng); + double x = std::uniform_real_distribution(0.0, 512.0)(rng); + double z = std::uniform_real_distribution(0.0, 512.0)(rng); { CMessagePositionChanged msg(100, true, entity_pos_t::FromDouble(x), entity_pos_t::FromDouble(z), entity_angle_t::Zero()); cmp->HandleMessage(msg, false); } cmp->Verify(); }