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

Android libGDX移动对象并检测

洪飞驰
2023-03-14

我刚刚开始尝试libgdx并理解...我查看了示例项目...我的问题 :

原始球编号1和6。其他球,球的(1和6)将随机去其他地方。(速度1)。例如,如果一个i是任何球上的火炬,它的速度最高可达3…游戏对象应该在while循环中。球图像有时(随机),球应该返回自己的360度。并在TecureRegion上获取图片。有类似的例子吗?或者我该怎么做?

(抱歉英语不好)

谢谢。。。

共有1个答案

葛修筠
2023-03-14

据我所知,你想让你的球在你退出游戏之前一直移动。你也想加快他们的速度,对吗?你也想纹理他们,也许他们应该检测与屏幕边界和其他球的碰撞?

>

  • Libgdx有一个主循环。此循环在每个renderloop中调用render(delta)delta取决于自上次调用render以来的ellapsed时间。因此,在快速设备上,这delta比在慢速设备上要小(大多数情况下)。此时间以秒为单位。要移动对象,可以在每个渲染循环中为其位置添加一个值。在您的情况下,您需要添加1(希望不是像素,因为在大屏幕上它看起来会更慢):

    用于(BallObject球:BallObject){ball.setPositionX(ball.getPositionX()ball.getSpeed()*增量*方向. x);ball.setPositionY(ball.getPositionY()ball.getSpeed()*增量*方向. y);}

    在这种情况下,BallObject有一个描述其当前位置的位置X方向。x方向。y,描述他在x和y方向上的运动(45°时为方向x=0.5和方向y=0.5),以及描述每秒运动的速度。触摸时,此速度将设置为3。

    1. 要加快触球速度,首先需要在类中实现InputProcessor,它管理所有气球对象的移动。接下来,您必须将其设置为游戏的InputProcessor:Gdx.input.setInputProcess(this) 。InputProcessor有一个方法touchDown(intx,inty)或类似的东西。x和y值在屏幕上以像素为单位给出坐标。如果在新的Libgdx版本中使用摄影机或视口(应该这样做),则必须使用摄影机。unproject(x,y)或它的viewportversion(idk确切的方法名)。此方法为您提供世界坐标系中的接触位置。然后,您可以简单地检查此touchpos上的球,并将其速度设置为3。
    2. 要对球进行纹理处理,必须使用SpriteBatch进行绘制。查看API中不同的draw()方法,并使用最适合您的方法。只需加载一个纹理,它应该是一个带有圆形纹理的“.png”,其余部分应该是透明的(alpha=0)。启用混合(默认)后,它将仅渲染球,即使它实际上是一个矩形纹理

    我希望它有所帮助

  •  类似资料:
    • 移动对象 可以通过以下方式移动对象:使用特定工具拖动对象、使用键盘上的箭头键,或在面板或对话框中输入精确数值。 在移动对象时,您可以使用对齐功能来帮助定位对象。例如,您可以使指针对齐参考线和锚点,也可以使对象边界对齐网格线。还可以使用 “对齐 ”面板,根据对象之间的相对位置来对其进行定位。 然后,您便可以使用 Shift 键来限制一个或多个对象的移动,使其沿相对当前 x 轴和 y 轴的精确水平、垂

    • 我不能用REmover类直接擦除代码对象...它给了我一个错误...但是当我第一次用我的代码删除连接的注释时,然后删除已经完成的代码...是否有其他方法可以自动删除代码和代码对象的注释?关于... 警告:SQL错误:0,SQLSTATE:23503 2013年6月24日2:25:51 PM org.hibernate.engine.jdbc.spi.sqlExceptionHelper logEx

    • 我正在为我的计算机科学课做一个项目,在这个项目中,我们使用pyplay在屏幕上移动一个物体。我不使用pygamesprites,而是导入到pygamesprites中的图像,并使用这些图像作为自定义sprites。当我试图在屏幕上移动兔子或“玩家”对象时,它似乎确实更新了位置。这是我试图改变位置的Player对象: 这是我用来运行游戏本身的类:

    • 我已经通过HTTP脚本记录器记录了一个脚本,但当我运行脚本时,我得到的对象移动到这里错误的登录事务的采样器上。当在记录的xml中搜索相同的请求时,我可以看到它给出了一个有效的输出。有人能告诉我为什么当我运行脚本时,只有它显示这个错误。请参考以下快照。 来自录制xml的请求:录制的\u请求\u正文 来自录制xml的请求头:录制的请求头 录制xml的请求-响应:录制的请求-响应 脚本请求:脚本请求正文

    • 我试图理解“有效现代C”中关于特殊成员函数生成的第17项,所以我尝试了一些示例,并试图对一些行为进行推理。书中说: ..当我提到移动操作move构造或移动分配一个数据成员或基类时,不能保证实际会发生移动。“Memberwise移动”实际上更像Memberwise移动请求,因为未启用移动的类型(即,对移动操作不提供特殊支持的类型,例如大多数C 98遗留类)将通过其复制操作“移动”。。。此外,不会为任

    • 我是Twilio的新手,我需要一些关于特定场景的帮助。一段时间以来,我一直试图为这个问题找到解决办法,但一直未能如愿。 我想使用一个移动(a)的Twilio号码打电话给移动(B)的另一个用户。我想这样做的方式,其中呼叫是由Twilio号码发起的,而不是由(a)的电话号码发起的。 换句话说,(A)从移动台拨Twilio号码,Twilio依次拨(B)并将(B)与(A)连接。 我已经将(A)拨打的Twi