Unitly 3D 这么获取一个点周围一定范围内的物体?最终得到物体名称。
我的想法是先获取所有物体,然后遍历对比距离,在范围内就返回name,但又觉得这样太没效率了
参考一下,https://blog.csdn.net/qq_38186269/article/details/90042148,如有帮助,望采纳,谢谢
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
你的想法我觉得就可以了
使用圆柱形射线检测碰到的游戏体Physics.OverlapSphere(),会返回获取的数组,参数有中心的坐标、圆柱形半径、碰撞层layer;
还有一种方法,原理一样,用碰撞检测,在指定位置生成一个圆柱形碰撞体,获得碰到的游戏体。
在Unity中查找物体、查找范围内物体基本逻辑都是遍历所有物体进行判断查找,如果物体过多的话效率确实比较低
按照你的需求:“一个点周围一定范围内的物体”
可以把(0,0)到(100,100)的矩形面积内分割成4个组(或者更多),可以初始化的时候把所有物体按照坐标分别放入4个组内
在根据点的坐标查找所包含的组,在遍历组内物体进行判断,这样遍历物体的总量就会减少以提高效率