它只有一个四边形,只有4个顶点和一个meshCollider: 在更新期间,对于某些动画,每个帧中的顶点位置都会更改,但meshCollider会固定在原始创建的位置。
我用谷歌搜索了许多,但没有接近这一点。我也试过切换凸面复选框但是 它也没有跟随这些变化的大小,并且meshCollider保持修复并且比实际四边形大得多。
有经验的人请指教。 在此先感谢您的努力将非常感激。
以下是顶点变化的片段和网格重新计算线:
aniMeshColliderTest:
switch(btn.sTarget){
case "open":{
btn.v3a_vertex[0].x -= btn.fDeltaX;
btn.v3a_vertex[0].y -= btn.fDeltaY;
btn.v3a_vertex[1].x += btn.fDeltaX;
btn.v3a_vertex[1].y -= btn.fDeltaY;
btn.v3a_vertex[2].x -= btn.fDeltaX;
btn.v3a_vertex[2].y += btn.fDeltaY;
btn.v3a_vertex[3].x += btn.fDeltaX;
btn.v3a_vertex[3].y += btn.fDeltaY;
// Debug.Log("thumbPADctxSeqc2:aniMeshColliderTest:1380:btn.v3a_vertex[0].y:" + btn.v3a_vertex[0].y + ", v3a_vertex[1].y:" + btn.v3a_vertex[1].y);
}break;
btn.g.GetComponent<MeshFilter>().mesh.vertices = btn.v3a_vertex;
btn.g.GetComponent<MeshFilter>().mesh.RecalculateNormals();
btn.g.GetComponent<MeshFilter>().mesh.RecalculateBounds();