代码最重要的就是临界值的判定,最近项目需要使用到限定多个物体间的判断所以。。。上代码
当不想物体离的太远:
//限制两个物体之间的最大距离
if (Vector3.Distance(B.position, A.position) > maxDistance)
{
//获得两个物体之间的单位向量
Vector3 pos = (B.position - A.position).normalized;
//单位向量乘以最远的距离系数
pos *= maxDistance;
//物体A的坐标加上距离向量
B.position = pos + A.position ;
}
`当不想物体离的太近
//限制两个物体之间的最小距离
if (Vector3.Distance(B.position, A.position) >minDistance)
{
//获得两个物体之间的单位向量
Vector3 pos = (B.position - A.position).normalized;
//单位向量乘以最远的距离系数
pos *= minDistance;
//物体A的坐标加上距离向量
B.position = A.position-pos ;
}`