我是Java,Android和LibGDX的新手,请原谅我,如果我要求的很简单。 我想要的是,如箭头所示,那个灰色的东西(画得太厉害,意思是一个大炮)可以摆动。此外,我可以使用什么来获得更自然的运动,例如重力作用于大炮,当它转向其侧面时速度最慢,而当它朝向地面时速度最快。我可以用什么来确保大炮一直在摆动并且它不会失去动量?这是我可能开始听起来很愚蠢的地方......我在网上看过一些教程,但我并不完全理解游戏制作的某些方面是如何运作的。我必须在Java类中创建什么?什么是精灵,我需要创建一个吗?什么是spritebatch?我理解基本知识,例如需要游戏状态管理器等等。我从教程中复制了大部分内容,例如渲染spritebatch(或类似的东西)。如果您可以将我链接到一些解释下面问题的简单教程,我们将不胜感激。谢谢。
答案 0 :(得分:0)
什么是spritebatch?
我们在帧中绘制了大量映射到矩形几何体的纹理,但是将每个矩形一次一个地发送到要绘制的GPU是低效的。所以这是spritebatch的作用。
Ext.ComponentQuery.query('#panelFormID')[0].form.setValues(Ext.ComponentQuery.query('#panelFormID')[0].form.getValues())
什么是精灵?
Sprite是一个描述纹理的类,还有一些属性,如颜色,角度,偏移等。 绘制纹理CPU时,每个帧也会向GPU发送数据。 然而,精灵在创建时将纹理数据发送到GPU,并在必要时仅更改其几何或颜色。
private SpriteBatch batch;
public void create () {
batch = new SpriteBatch();
}
public void render () {
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); // This cryptic line clears the screen.
batch.begin();
// Drawing goes here!
batch.end();
}
你可以看到它也回答了你的第一个问题。您可以轻松地围绕其中心旋转精灵。
我可以用什么来确保大炮不停摆动并且不会失去动量?
您可以使用box2d,也可以设计自己的算法来摆动。
我必须在Java类中创建什么?
您需要学习面向对象的编程以获得答案。
这是一个很好的libgdx教程 http://www.gamefromscratch.com/page/LibGDX-Tutorial-series.aspx