首页 > 解决方案 > 列出或更好的随机 C# 算法 - Unity

问题描述

我正在 Unity3D (2018.3.0f2) 中使用 C#,我需要创建一个具有多个结果和多个参数的随机函数。有没有更好的办法?我的作品,但我想把它放在一个列表中,如果可能的话更短。

float rndFloat = Random.value;

if      (rndFloat <  0.33f)  occlusionTime = 0.3f;
else if (rndFloat >= 0.33f && rndFloat < 0.66f) occlusionTime = 0.7f;
else                                            occlusionTime = 1.1f;

rndFloat = Random.value;

if (rndFloat < 0.25f)
{
    BallEnd.transform.position = EndPositions[0];
    endPosPixelCoords = EndPositionsPixel[0];
}

if (rndFloat >= 0.25f && rndFloat < 0.5f)
{
    BallEnd.transform.position = EndPositions[1];
    endPosPixelCoords = EndPositionsPixel[1];
}

if (rndFloat >= 0.5f && rndFloat < 0.75f)
{
    BallEnd.transform.position = EndPositions[2];
    endPosPixelCoords = EndPositionsPixel[2];
}

if (rndFloat >= 0.75f)
{
    BallEnd.transform.position = EndPositions[3];
    endPosPixelCoords = EndPositionsPixel[3];
}

标签: c#listunity3drandom

解决方案


推荐阅读