复合精灵如何与libgdx一起缩放

时间:2015-03-02 12:26:25

标签: libgdx

我已经合成了我的精灵,用可定制的保险杠,驾驶室,扰流板轮等制作一辆怪物卡车。持有这些Sprite s的班级是MTruck,如果我待在这里,我可以完美地画出它规模1.0。

    mWheels.setPosition(posX + 17 * scale, posY);
    mCab.setPosition(posX + 22 * scale, posY + 7 * scale);
    mFender.setPosition(posX, posY + 75 * scale);

mWheels位于卡车的y原点,mFender位于x原点。

我已尝试过各种各样的缩放值,并将其与我应用于mWheelsmCab等的缩放分开,但所有发生的都是精灵缩放,但它们的位置不对齐

我必须渲染到纹理并按比例缩放,如果我不能解决这个问题。

1 个答案:

答案 0 :(得分:2)

也许,Set origin可以帮助你:

void    setOrigin(float originX, float originY)
  

设置相对于精灵位置的原点以进行缩放和   转动。

float   getOriginX()

The origin influences setPosition(float, float), 
                      setRotation(float) and the expansion direction 
                      of scaling setScale(float, float)

float   getOriginY()

The origin influences setPosition(float, float), 
                      setRotation(float) and the expansion direction of
                      scaling setScale(float, float)
  1. http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/graphics/g2d/Sprite.html
  2. 新编辑:也许如果您在菜单上自定义车辆,例如在此之后切实可行的自定义车辆并在运行时创建图像并进行缩放,请在Sprite中使用此图像,也许它更容易,但它只是一个想法