首先说下我的思路:
开始想的比较简单,就是先建两个空物体分别挂上脚本,一个在X轴画直线,一个与X轴成angle夹角,通过计算得出坐标,这样就能画出一个菱形的角度,下面是实例图:
最后再写个脚本通过循环遍历,将那两个物体横向,竖向克隆,最后一个完整的菱形就出来了。
上面我用红色标号1表示的是这条边小菱形的数量count,2表示小菱形的边长len,count*len表示的就是整个菱形的边长
实现代码如下:
Draw1
LineRenderer line;
ControlDrawL control;
float len;
float angle;
// Start is called before the first frame update
void Start()
{
control = GameObject.Find("Draw").GetComponent<ControlDrawL>();
angle = control.angle;
len = control.count * control.len;
line = gameObject.AddComponent<LineRenderer>();
line.material = new Material(Shader.Find("Standard"));
line.startColor = Color.yellow;
line.endColor = Color.red;
line.startWidth = 0.5f;
line.endWidth = 0.5f;
line.positionCount = 2;
line.SetPosition(0, new Vector3(transform.position.x, 0, transform.position.z));
line.SetPosition(1, FindPos(transform.position, angle, len));
}
V