Rando View on Asset Store (opens in new tab)

Package details

Latest version
1.0.0
Last updated
First released
Unity version
2022.3.21 or later
Package size
933 KB
Files
10
Favorites
5
Views in the past week
2

Price tracking

Last checked
Tracked since
Lowest recorded
$17.50 on

Keywords

Rando

by TAC (opens in new tab)

No ratings yet

Rando is your new all-purpose random number generation tool. High performance, great randomization. Direct Managed C#, General multi-threading, Burst/Jobs, GPU (or Jobs using pre-calculated arrays)

Price $25.00

Buy on Asset Store (opens in new tab)

Affiliate link · Purchases support this site

Price history

Last 6 months

USD
Price history for Rando, 6 months Current $25.00; lowest $25.00; highest $25.00 in this period. $0 $12.5 $25 Jun Jul Aug Sep Oct Nov

Asset preview

1 / 4

Rando screenshot 1

Rando screenshot 1

About this asset

We constantly find ourselves needing random numbers, and as such we need as much performance as we can get while still getting high quality random results.

This tool will provide all of that for you and a lot more: It comes with several different RNG algorithms, each implementing 20 odd methods to quickly get you going on all platforms from CPU, Multithreaded etc. up to and including GPU. You no longer have to investigate and test other RNG's that only have partial support, we've done all the hard work for you.

We also provide you with some extra ways to use RNG, for example using arrays to get existing RNG platforms such as Engine/Mathematics working inside of for example Burst/Jobs.

From the publisher's Asset Store listing.

Technical details

Four random number algorithms:

  • Xoshiro128Plus
  • PCG32
  • TauswortheLCG
  • WangHash

Refer to the screenshots, but these perform anywhere up to almost 2x faster than the RNG inside of Mathematics (or 3.14 times faster than the old Engine RNG).

Four Platforms:

  • Managed C#
  • Direct calculation in any multithreading system such as Tasks, or using Burst/Jobs
    • Examples with named instantiation or by using generic Jobs<T>
  • Pre-calculate and save data to arrays to use anywhere (and/or use an IJob for calculation)
    • Helper methods to advance the array index and refill it at the end of the frame
  • GPU, both compute or generic shaders
    • Simple use case is to just include one of the RNG header hlsl files
    • Also supports the more complex case of using keywords to disable/enable a specific RNG algorithm

Twenty Methods:

  • UInt [0, uint.maxValue) where [ denotes inclusion and ) exclusion
  • Int [0, int.maxValue)
  • Float [0, 1)
  • Bool True/False
  • Sign 1/-1
  • UIntRange [min, max)
  • IntRange [min, max)
  • FloatRange [min, max)
  • Float2 (all these with each component the same 0-1 as Float)
  • Float3
  • Vector2
  • Vector3
  • InsideUnitCircle
  • OnUnitCircle
  • InsideUnitSphere
  • OnUnitSphere
  • quaternion (as per the newer math library)
  • Quaternion
  • ColorHSVDefault (Random Color via HSV with some default ranges for HSVA)
  • ColorHSV

Code:

  • As always our code in all of the C# and HLSL files are fully documented, the same goes for the demo

Documentation/Demo:

  • A comprehensive 13-page document to walk you through all the use cases, modes, algorithms and the demo
  • The demo is a comprehensive 1.2k (documented) lines that covers all the algorithms and platforms, as well as several of the methods

Compatibility

Render pipelines supported in each Unity version
Unity version Built-in URP HDRP
2022.3.21f1 Compatible Compatible Compatible

Code only package.

As listed on the Asset Store.