using UnityEngine;
using System.Collections;
public class Test : MonoBehaviour {
public int a;//a>0,开口向上;a<0,开口向下。
public int b;//b=0,抛物线对称轴为y轴
public int c;//c=0,抛物线经过原点
public int size;
void Update () {
if (Time.frameCount%6 == 0)
{
gameObject.AddComponent<MeshFilter>();
gameObject.AddComponent<MeshRenderer>();
Mesh mesh = GetComponent<MeshFilter>().mesh;
mesh.Clear();
Vector3[] v=new Vector3[size];
Vector2[] v2=new Vector2[size];
int[] index=new int[(size-2)*3];
for (int i = 0; i < size; i++)
{
if(i==0)
{
v[i]=new Vector3(0,-1,0);
}
else
{
float x=(i-size/2f)*0.1f;
v[i].x=x;
v[i].y=a*x*x+b*x+c;
v[i].z=0;
}
if(i>1){
index[3*i-6]=0;
index[3*i-5]=i-1;
index[3*i-4]=i;
}
print("v["+i+"]="+v[i]);
}
mesh.vertices = v;
mesh.uv = v2;
mesh.triangles = index;
for (int j = 0; j < index.Length; j++)
{
print(j + "==" + index[j]);
}
}
}
}
<pre name="code" class="csharp">通过unity画弧线