
程序图形碰撞检测思路
我思路是简单的两个图形的X轴与Y轴相减,如果<被检测物体的宽高则为碰撞。这一点大概没错,但是想知道的是碰撞到物体后该如何类似墙一样把图形挡住?...
我思路是简单的两个图形的X轴与Y轴相减,如果<被检测物体的宽高则为碰撞。这一点大概没错,但是想知道的是碰撞到物体后该如何类似墙一样把图形挡住?
展开
1个回答
展开全部
这属于碰撞检测问题。
1、简单的2D的物体:
物体形状一般可以设定为矩形区域,这类规则图形。它的碰撞检测可以通过java API中的
Rectangle类来实现碰撞的检测。
2、复杂点的:像素级别的碰撞检测
像素级别的碰撞检测算得上是最精确的碰撞检测方法了。
首先遍历算出一张位图所有的像素点坐标,然后与另外一张位图上的所有点坐标进行对比,
一旦有一个像素点的坐标相同,就立刻取出这两个坐标相同的像素点,通过位运算取出这两个
像素点的最高位(透明度)进行对比,如果两个像素点都是非透明像素则判定这两张位图发生
碰撞。
1、简单的2D的物体:
物体形状一般可以设定为矩形区域,这类规则图形。它的碰撞检测可以通过java API中的
Rectangle类来实现碰撞的检测。
2、复杂点的:像素级别的碰撞检测
像素级别的碰撞检测算得上是最精确的碰撞检测方法了。
首先遍历算出一张位图所有的像素点坐标,然后与另外一张位图上的所有点坐标进行对比,
一旦有一个像素点的坐标相同,就立刻取出这两个坐标相同的像素点,通过位运算取出这两个
像素点的最高位(透明度)进行对比,如果两个像素点都是非透明像素则判定这两张位图发生
碰撞。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询