00001 /* 00002 * Randomizer header 00003 * 00004 * This file is part of the "SoftPixel Engine" (Copyright (c) 2008 by Lukas Hermanns) 00005 * See "SoftPixelEngine.hpp" for license information. 00006 */ 00007 00008 #ifndef __SP_MATH_RANDOMIZER_H__ 00009 #define __SP_MATH_RANDOMIZER_H__ 00010 00011 00012 #include "Base/spStandard.hpp" 00013 #include "Base/spMaterialColor.hpp" 00014 #include "Base/spDimensionVector3D.hpp" 00015 00016 00017 namespace sp 00018 { 00019 namespace math 00020 { 00021 00022 00024 namespace Randomizer 00025 { 00026 00031 SP_EXPORT void seedRandom(bool isTimeBase = true); 00032 00034 SP_EXPORT s32 randInt(); 00035 00037 SP_EXPORT s32 randInt(const s32 Max); 00038 00040 SP_EXPORT s32 randInt(const s32 Min, const s32 Max); 00041 00043 SP_EXPORT bool randBool(const u32 Probability); 00044 00046 SP_EXPORT f32 randFloat(); 00047 00049 SP_EXPORT f32 randFloat(const f32 Max); 00050 00052 SP_EXPORT f32 randFloat(const f32 Min, const f32 Max); 00053 00055 SP_EXPORT video::color randColor(bool RandAlpha = false); 00056 00058 SP_EXPORT dim::vector3df randVector(); 00059 00060 } // /namespace CollisionLibrary 00061 00062 00063 } // /namespace math 00064 00065 } // /namespace sp 00066 00067 00068 #endif 00069 00070 00071 00072 // ================================================================================