Unity3D Line Renderer Circle

时间:2016-04-17 00:13:08

标签: c# unity3d line geometry gameobject

我想使用LineRenderer功能在我的游戏对象周围画一个圆圈。 通过互联网搜索后,我发现了一个代码,它在我的游戏对象周围画了一个椭圆,效果非常好。

但从现在开始,我无法弄清楚如何将椭圆变成圆形。

这是代码:

public int segments;
public float xradius;
public float yradius;
LineRenderer line;

void Start ()
{
    line = gameObject.GetComponent<LineRenderer>();

    line.SetVertexCount (segments + 1);
    line.useWorldSpace = false;
    CreatePoints ();
}


void CreatePoints ()
{
    float x;
    float y;
    float z = 0f;

    float angle = 20f;

    for (int i = 0; i < (segments + 1); i++)
    {
        x = Mathf.Sin (Mathf.Deg2Rad * angle) * xradius;
        y = Mathf.Cos (Mathf.Deg2Rad * angle) * yradius;

        line.SetPosition (i,new Vector3(x,y,z) );

        angle += (360f / segments);
    }
}

0 个答案:

没有答案