LibGDX:Sprite绘图和SpriteBatch绘图之间的区别是什么?

时间:2017-10-09 07:28:15

标签: java libgdx

使用LibGDX编程时,我注意到有两种方法可以绘制精灵。但首先是我的情况:

(...)
SpriteBatch batch;
Sprite testSprite;
(...)
batch = new SpriteBatch();
testSprite = new Sprite(new Texture("test.png"));
(...)

第一种方法来自SpriteBatch:

(...)
batch.draw(testSprite,...);
(...)

第二种方法来自Sprite本身:

(...)
testSprite.draw(batch);
(...)

这种方法有什么区别?希望你能帮助我:D 〜亨利

PS:我是初学者:D

1 个答案:

答案 0 :(得分:1)

testSprite.draw(batch);

Sprite包含使用Batch绘制2D精灵的几何,颜色和纹理信息。 Sprite的位置和大小分别为宽度和高度。

以简单的方式,您可以说Sprite是一个完整的包(在哪里绘制,并且具有不同的因素,如大小,比例因子,旋转......)。

但是如果你使用

batch.draw(testSprite,...);

然后,您需要通过draw(..)方法的另一个参数来指示绘制所需的位置,大小和其他因素。