资讯专栏INFORMATION COLUMN

Pygame精准检测图象撞击问题

89542767 / 314人阅读

  此篇文章主要是阐述了Pygame精准检测图象撞击,在使用Pygame写游戏时,有些人可能遇到2个Rect目标撞击可是目标中间也有室内空间间距问题,这儿,将教给大家用一个方法准确地检验图象撞击,需用的小伙伴可以借鉴一下。


  在使用Pygame写游戏时,有些人可能遇到2个Rect目标撞击可是目标中间也有室内空间间距问题,这儿,将教给大家用一个方法准确地检验图象撞击。


  假定大家主要有两种图象(为非Surface):surface1,surface2


  最先,得到这两个surface目标的rect:


  rect1=surface1.get_rect()
  rect2=surface2.get_rect()


  随后,获得他们相匹配的mask目标,用pygame.mask.from_surface()方式,应用如下所示:

  pygame.mask.from_surface(surface)

  填写是指Surface目标,回到Mask目标


  编码如下所示:


  mask1=pygame.mask.from_surface(surface1)
  mask2=pygame.mask.from_surface(surface2)


  接下去,开展路径规划,大家需要使用overlap方法,应用如下所示:


  mask.overlap(other,offset)


  mask是1个Mask目标


  other是另一个Mask目标


  offset是1个数组,数组中分别是两个rect的x坐标插值法和y坐标插值法


  函数参数主要有两种,如果是个数组就证明早已撞击,假如为None就证明并没有撞击


  编码如下所示:


  offset=abs(rect1.x-rect2.x),abs(rect1.y-rect2.y)
  ifrect1.overlap(rect2,offset)!=None:#早已撞击
  print("早已撞击")


  之上编码仅仅实例,可供参考,取名不用和上边相同,合乎命名规范就可以了


  综上所述,这篇文章就给大家介绍到这里了,希望可以给大家带来帮助。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/128841.html

相关文章

  • Pygame精准检测图象撞击问题

      此篇文章主要是阐述了Pygame精准检测图象撞击,在使用Pygame写游戏时,有些人可能遇到2个Rect目标撞击可是目标中间也有室内空间间距问题,这儿,将教给大家用一个方法准确地检验图象撞击,需用的小伙伴可以借鉴一下  在使用Pygame写游戏时,有些人可能遇到2个Rect目标撞击可是目标中间也有室内空间间距问题,这儿,将教给大家用一个方法准确地检验图象撞击。  假定大家主要有两种图象(产品为...

    89542767 评论0 收藏0
  • 毕业设计 - 车道线检测(自动驾驶 机器视觉)

    摘要:车道线检测在无人驾驶领域每一个任务都是相当复杂,看上去无从下手。目标检测图像中车道线位置,将车道线信息提供路径规划。边缘检测有关边缘检测也是计算机视觉。这里用霍夫变换在边缘检测结果中寻找直线。表示我们小格宽度以像素为单位。 ...

    myeveryheart 评论0 收藏0
  • 从零开始开发一款H5小游戏(四) 撞击吧粒子,炫酷技能的实现

    摘要:粒子吃了技能粒子后就能表现各种特殊效果。碰撞检测游戏中粒子可能会撞击到粒子,也可能吃到粒子。然而一个游戏要完整,肯定少不了一些游戏的策略还有一些附属场景,下一节要讲的是从零开始开发一款小游戏五必要的包装,游戏规则和场景设计 本系列文章对应游戏代码已开源 Sinuous game。 本游戏有五种技能粒子,分别是 护盾,重力场,时间变慢,使敌人变小,增加生命。Player粒子吃了技能粒子后...

    hqman 评论0 收藏0
  • pygame中Rect对象介绍案例解答

      小编写此篇文章的目的,主要是给大家来做一个解答,解答关于pygame中Rect对象的相关内容知识,下面就给大家做一个比较详细的解答。  class pygame.Rect Rect  对象的属性:  Rect表示的区域必须位于一个Surface对象之上,比如游戏的主窗口(screen)。上述方法由四个关键参数值构成,分别是left、top、width、height,为了方便大家理解这些距离的含...

    89542767 评论0 收藏0
  • 30个Python小游戏,上班摸鱼我能玩一天【内附源码】

    摘要:源码分享主函数游戏初始化九歌播放背景音乐游戏主循环按键检测更新贪吃蛇和食物判断游戏是否结束显示游戏里必要的元素屏幕更新普普通通玩法详细介绍源码点小游戏玩法通过加减乘除操作小学生都没问题的。 大家好,我是辣条。 今天给大家带来30个py小游戏,一定要收藏࿰...

    番茄西红柿 评论0 收藏2637

发表评论

0条评论

最新活动
阅读需要支付1元查看
<