Przeglądaj źródła

Added helper float random functions frnd 0.0 to 1.0f and frndh -1.0f to 1.0f.

bkaradzic 13 lat temu
rodzic
commit
84987bfdf2
1 zmienionych plików z 15 dodań i 0 usunięć
  1. 15 0
      include/bx/rng.h

+ 15 - 0
include/bx/rng.h

@@ -92,6 +92,21 @@ namespace bx
 		uint32_t m_jsr;
 		uint32_t m_jsr;
 	};
 	};
 
 
+	/// Returns random number between 0.0f and 1.0f.
+	template <typename Ty>
+	inline float frnd(Ty* _rng)
+	{
+		uint32_t rnd = _rng->gen() & UINT16_MAX;
+		return float(rnd) * 1.0f/float(UINT16_MAX);
+	}
+
+	/// Returns random number between -1.0f and 1.0f.
+	template <typename Ty>
+	inline float frndh(Ty* _rng)
+	{
+		return 2.0f * bx::frnd(_rng) - 1.0f;
+	}
+
 } // namespace bx
 } // namespace bx
 
 
 #endif // __BX_RNG_H__
 #endif // __BX_RNG_H__