当前位置: 首页 > 知识库问答 >
问题:

使用精灵的边框,而不是矩形或圆形,在精灵之间检测libgdx冲突

百里渊
2023-03-14

我在Android Studio中使用libgdx,并且我正在使用精灵碰撞检测。我需要知道如何检测两个形状不规则的精灵之间的碰撞。我的精灵是从png图像纹理创建的。是否可以使用子画面的边框作为检测表面?使用在子画面周围绘制的矩形或圆形将不够准确。感谢您的帮助!

共有1个答案

解鸿运
2023-03-14

使用Box2D,这是一个很棒且易于学习的物理和照明库。正确设置身体后,您可以使用路径将身体形状设置为矩形、圆形、正方形或任何自定义形状,您根本不需要担心碰撞。你只需要注意碰撞时或碰撞后会发生什么

 类似资料:
  • 使用< code >加速计,我的精灵图像会左右移动,如果我触摸屏幕,精灵会移动到Y轴。我想在不同的精灵之间进行碰撞检测,这样如果精灵穿过一个物体,它就会停下来藏在那个物体里。我已经看了这个https://www.youtube.com/watch?v=T1aN-vTqLc的教程,但什么也没发生。进行碰撞检测的正确方法是什么?我不知道我的编码有什么问题。任何建议或更好的教程谢谢和进步 这是我的编码

  • 多边形精灵(Polygon Sprite) 也是一个精灵,同样是为了展示一个可以被控制的图像,但是和普通精灵的区别是,普通精灵在绘图处理中被分为了两个三角形,多边形精灵则是被分为了一系列三角形。 为什么要使用多边形精灵 提高性能! 要深入分析这个是如何提高性能的,会需要很多和像素填充率有关的技术术语。幸好本节是入门性质的文档,能让大家理解多边形精灵比普通精灵性能好就可以了,不用讨论特定宽高矩形绘制

  • 在那里你可以看到我的多边形,我使用我的动态游戏对象 我必须把这个红点左下角放在这个多边形的中间。 但是我如何计算我的sprite的x/y? 通常我会说 和sprite的定位如下所示: 但是现在这个多边形是不可能的,因为body phyiscs编辑器通常将body的原点放在X、Y0和右上部的顶点上,就像你在上面贴出的图片中看到的一样。但在我的例子中,身体的原点(红点)被放置在这个多边形中间的某个地方

  • 我是libGDX的新手,据我所知,Intersector类有矩形/矩形、圆/圆、圆/矩形和多边形/多边形的重叠方法,但由于某种原因,它似乎没有任何检查多边形/矩形或多边形/圆的方法。 有没有推荐的方法来检查多边形和矩形/圆之间的冲突? 另外,为什么这被排除在跨部门类之外,有什么原因吗?(即,我应该避免它吗?如果是这样,推荐的替代方案是什么?

  • 我的游戏有两个职业,它们都产生精灵,唯一的区别是它们的精灵向不同的方向移动。 然而,我如何检测另一个类的精灵是否与这个类碰撞,两个类都产生了很多精灵。我的想法是也使用池为每个精灵创建一个矩形。

  • 我想一起旋转一组精灵,多边形和矩形,图a)显示2个精灵,边界多边形和矩形,这组围绕大矩形中心旋转90度(两个矩形的联合)。 以下代码创建图b)。它不会围绕联合矩形的中心旋转精灵和多边形。 下面的代码创建了图c)。当我试图将精灵和多边形移动到矩形位置时,出现了对齐错误。 问题是旋转后如何将精灵与矩形对齐(即类似于图a,角度=0)。提示:问题出现是因为精灵在绘制时会旋转,因此精灵和矩形之间会错位对齐。