如下图所示,我想在蓝色区域(B)内找到一个随机位置而不是红色区域(A)。我怎样才能做到这一点? A和B目前是2个对手。我只需要一个B内的位置,但它不能在A内。提前感谢。
答案 0 :(得分:1)
一个解决方案与Nico Schertler在评论中提到的相同
if(Random.value < GetRatio(xminBlue-xminRed),xmaxRed-xmaxBlue){
x= Random.Range(xminBlue,xminRed);
}else
{
x= Random.Range(xmaxRed,xmaxBlue);
}
float GetRatio (float distance_1,float distance_2){
return distance_1 / distance_1 + distance_2;
}
在这个解决方案中你不需要拒绝任何坐标