网站添加百度地图标注,广西建设网个人登录,一个微信可以做两个网站支付宝吗,川畅互联咨询 网站建设运行时#xff0c;如果一个物体不添加Collider组件就没有办法被鼠标点击#xff0c;LineRenderer由于其Mesh会随着摄像机朝向变化#xff0c;如果要通过添加MeshCollider来使其能够与鼠标交互#xff0c;就需要不断同步更新其MeshCollider网格。 代码参考如下#xff1a; … 运行时如果一个物体不添加Collider组件就没有办法被鼠标点击LineRenderer由于其Mesh会随着摄像机朝向变化如果要通过添加MeshCollider来使其能够与鼠标交互就需要不断同步更新其MeshCollider网格。 代码参考如下
using UnityEngine;public class LineCollider : MonoBehaviour
{[SerializeField]LineRenderer lineRenderer;[SerializeField]MeshCollider meshCollider;void Start(){SetLineMeshCollider();}void Update(){SetLineMeshCollider();}void SetLineMeshCollider(){Mesh mesh new();lineRenderer.BakeMesh(mesh, false);//LineRenderer使用的Mesh中的顶点坐标是基于世界World坐标的而MeshCollider使用的是基于自身Object坐标的需要转换一下。Vector3[] vs mesh.vertices;Transform tranLine lineRenderer.transform;for (int i 0; i vs.Length; i){vs[i] tranLine.InverseTransformPoint(vs[i]);}mesh.SetVertices(vs);Mesh meshPre meshCollider.sharedMesh;meshCollider.sharedMesh mesh;//将原来使用的Mesh要销毁一下否则会内存溢出。if (meshPre) Destroy(meshPre);}
}