如何从此脚本生成行星?

时间:2018-04-14 20:07:24

标签: c# unity3d

所以我试图在随机生成的星球上制作游戏。我想出了一个脚本,它会产生所需的噪音,但不知道如何生成瓷砖。我想创造一个类似于Terraria但在圆形星球上的世界。我希望能够控制每一层的深度。

public class CircularNoise
{
    System.Random random = new System.Random();
    float offsetX, offsetY;
    float scale;

    public CircularNoise(float scale)
    {
        offsetX = random.Next(100000);
        offsetY = random.Next(100000);
        this.scale = scale;
    }

    public float getNoise(float radian)
    {
        float r = radian % (float)Math.PI*2;
        if(r < 0.0){r += (float)Math.PI*2;}
        return Mathf.PerlinNoise(offsetX + (float)Math.Cos(r) * scale, offsetY + (float)Math.Sin(r) * scale);  
    }  
}

0 个答案:

没有答案