本帖最后由 shitake 于 2018-10-11 13:47 编辑 和面积没关系把 你这描述 需要的是碰撞检测算法 a npc 的范围包围盒 和 b npc 的包围盒【当然也可以是个点】 看你之后的讨论 你npc的包围盒是当点来抽象的 那么你需要的是点和多边形的碰撞检测方法 对于圆来说 直接两边平方做比较 轴对齐包围盒【边和坐标轴平行的矩形】 min_x < x < max_x && min_y < y < max_y 三角形之类的大家一般都是统一算到多边形里【矩形当然也是多边形了】 如果只是凸多边形的话 那么只需要把欲检测的点和多边形的每个顶点相连,然后判断这个线和多边形的边有没有交点,没有交点 那么这个点就在多变形内部。 对于线段和线段的碰撞检测 作者:周智 还有一个更高效更通用(凹凸都行)的点和多边形碰撞检测的算法 叫 PNPoly http://riyueshi.github.io/2015/10/07/is_point_in_polygon/ |
三角形為什么这么复杂不就是底*高除2 |
|
站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作
GMT+8, 2024-11-25 13:32
Powered by Discuz! X3.1
© 2001-2013 Comsenz Inc.