参考网址:http://www.cnblogs.com/xpvincent/p/3211043.html
using UnityEngine;
using System.Collections;
public class NewBehaviourScript : MonoBehaviour
{
//三个物体的变换
public Transform a1;
public Transform a2;
public Transform a3;
public Color color = Color.red;
void Awake()
{
//添加Mesh Filter(模型网格)和Mesh Renderer(模型渲染)组件
gameObject.AddComponent<MeshFilter>();
MeshRenderer render = gameObject.AddComponent<MeshRenderer>();
//对模型的材质赋值个颜色
//获取模型网格
Mesh mesh = GetComponent<MeshFilter>().mesh;
render.material.color = color;
render.material.shader = Shader.Find("Sprites/Default");
//清楚模型的顶点和三角形索引
mesh.Clear();
//变换三个物体的坐标到代码所挂物体上的局部坐标!
Vector3 v1 = gameObject.transform.InverseTransformPoint(a1.position);
Vector3 v2 = gameObject.transform.InverseTransformPoint(a2.position);
Vector3 v3 = gameObject.transform.InverseTransformPoint(a3.position);
//然后赋值顶点
mesh.vertices = new Vector3[] { v1, v2, v3 };
//赋值三角形的索引
mesh.triangles = new int[] { 0, 1, 2 };
}
}
效果如图如下图所示:
挂脚本,比如T1上挂脚本: