Unity3D 中场景距离的判断
Posted on 2013 年 03 月 06 日 by U3d / Unity3D 脚本/插件/被围观 304 次
Unity3D 中场景距离的判断。很多地方需要用到距离的判断,比如:玩家的攻击范
围、玩家视野(视野外的物体不渲染)等等。当进入怪物的警戒范围时,怪物会锁定玩家,
并追踪进行攻击。首先,怪物需要获取整个场景中 tag 为“Player”的所有 OBJ,存入数
组 players 中。然后遍历自己和玩家们的距离,一旦出现进入警戒范围的,立即将其锁定
为目标,进行追踪。
players = GameObject.FindGameObjectswithTag("player");
如果怪物当前的目标为空,则在 Update 中,计算其与玩家的距离,寻找目标(小于 6m
的玩家)。
if(targetPlayer == null){
for(int i = 0; i < playersLength; i++){
if(vector3.Distance(other.position , transform.position) < 6){
targetplayer = players[i];
Dosomething.....
评论0