您的位置:首页 > 移动开发 > Unity3D

Unity 通过LineRenderer绘制两点之间的直线

2017-02-25 15:37 2983 查看
private LineRenderer line;
//画线
line = this.gameObject.AddComponent<LineRenderer>();
//只有设置了材质 setColor才有作用
line.material = new Material(Shader.Find("Particles/Additive"));
line.SetVertexCount(2);//设置两点
line.SetColors(Color.yellow, Color.red); //设置直线颜色
line.SetWidth(0.01f, 0.01f);//设置直线宽度

//设置指示线的起点和终点
line.SetPosition(0, initPosition);
line.SetPosition(1, newPosition);


绘制圆

下面是以物体position为圆心,半径为R,在xz平面上的画圆

public float R;//半径
public int N;//不要超过45

line.SetVertexCount(N+1);//这里要加1,达成闭合曲线

for (int i = 0; i < N + 1; i++)
{
float x = R * Mathf.Cos((360 / N * i) * Mathf.Deg2Rad) + transform.position.x; //确定x坐标
float z = R * Mathf.Sin((360 / N * i) * Mathf.Deg2Rad) + transform.position.z; //确定z坐标
line.SetPosition(i, new Vector3(x, transform.position.y, z));
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity LineRender