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

Unity 代码编辑网格节点 C#

2019-08-15 17:58 1591 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/qq258456qq/article/details/99646970
MeshFilter meshFile;
List<Vector3> vectrs = new List<Vector3>();
List<Vector3> tempVectrs = new List<Vector3>();
void Start()
{
tempFactor = factor;
meshFile = tempGo.GetComponent<MeshFilter>();//找到物体的meshFile
meshVer = meshFile.mesh.vertices.Length;
for (int i = 0; i < meshVer; i++)
{//添加节点
vectrs.Add(meshFile.mesh.vertices[i]);
tempVectrs.Add(meshFile.mesh.vertices[i]);
}
tempCount = vectrs.Count;
}

控制模型节点变化

//控制模型节点变化
for (int i = 0; i < tempCount; i++)
{
if (vectrs[i].x <= factor && vectrs[i].z >= 0)
{
Vector3 tempVect = new Vector3(vectrs[i].x, vectrs[i].y, vectrs[i].z * vectOffset*0.1f);//节点变化
vectrs[i] = tempVect;
}
}

mesh变换

meshFile.mesh.vertices = vectrs.ToArray();

//修改网格数据方法

public void MeshMd() {
for (int i = 0; i < tempVectrs.Count; i++)
{
vectrs[i] = tempVectrs[i];
}
factor = tempFactor;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: