📜  unity C# 随机数 - C# (1)

📅  最后修改于: 2023-12-03 14:48:11.403000             🧑  作者: Mango

Unity C# 随机数

在Unity游戏引擎中,C#随机数是经常被使用的功能。在本篇文章中,我们将介绍Unity C#中的随机数的用法和示例代码。

使用Random类

Unity中的随机数可以使用Random类来实现。这个类提供了不同种类的随机数生成函数,它们都可以帮助我们生成随机数。下面是一个简单的例子:

using UnityEngine;
using System.Collections;

public class RandomExample : MonoBehaviour
{
    private void Start()
    {
        Debug.Log(Random.Range(0, 10));
    }
}

上面的代码将在控制台输出一个0到9之间的随机数。

取整数随机数

如果我们需要得到一个整数随机数,可以使用Unity的Random.Range函数。这个函数可以接收两个整数型参数,这两个参数指定了我们要生成的随机数的范围,包含了开始和结束位置。下面是一个例子:

using UnityEngine;
using System.Collections;

public class RandomExample : MonoBehaviour
{
    private void Start()
    {
        int randomNumber = Random.Range(0, 10);
        Debug.Log(randomNumber);
    }
}
取浮点数随机数

我们可以利用Random.Range函数来生成浮点型随机数。下面的示例代码会在控制台输出一个0到1之间的浮点型随机数:

using UnityEngine;
using System.Collections;

public class RandomExample : MonoBehaviour
{
    private void Start()
    {
        float randomNumber = Random.Range(0f, 1f);
        Debug.Log(randomNumber);
    }
}
生成随机向量

我们可以利用Random.insideUnitSphere函数来生成三维向量中的随机平面向量,这个函数生成一个半径为1的球体中的随机向量。下面是一个使用这个函数生成随机向量的例子,写在一个独立的脚本中:

using UnityEngine;
using System.Collections;

public class RandomVector : MonoBehaviour
{
    public float speed = 10.0f;
    private Vector3 direction;

    private void Start()
    {
        direction = Random.insideUnitSphere;
    }

    private void Update()
    {
        transform.Translate(direction * speed * Time.deltaTime);
    }
}
小结

Unity C#的Random类提供了不同种类的随机数生成函数,使用这些函数可以帮助我们轻松生成随机数。在游戏中,这些随机数可以用于产生随机的游戏情境,增加游戏的趣味性。