float IRandomGenerator <float> .Next(float min, float max) { using (RandomEx.State(state, s => state = s)) { if (min == default && max == default) { return(Random.value); } return(Random.value.Lerp(min, max)); } }
Vector3 IRandomGenerator <Vector3> .Next(Vector3 min, Vector3 max) { using (RandomEx.State(state, s => state = s)) { if (min == default && max == default) { return(new Vector3(Random.value, Random.value, Random.value)); } return(new Vector3(Random.value.Lerp(min.x, max.x), Random.value.Lerp(min.y, max.y), Random.value.Lerp(min.z, max.z))); } }
int IRandomGenerator <int> .Next(int min, int max) { using (RandomEx.State(state, s => state = s)) { if (min == default && max == default) { return(Random.value.Lerp(int.MinValue, int.MaxValue)); } return(Random.value.Lerp(min, max)); } }