我有一個精靈,我與借鑑:雪碧調整libGDX
sprite.draw(spriteBatch);
這個工程.... 我有兩個spites顯示相同,但具有不同的分辨率...
讓我們說X1 = H:100像素,X2 = H:200像素
在非常包裝類精靈的我有這樣的方法:
public static void setSclae(float newScale, Sprite sprite) {
// sprite.scale(newScale - sprite.getScaleX());
sprite.setScale(newScale);
}
(我都嘗試,既沒有工作)文檔:http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/graphics/g2d/Sprite.html#setScale(float)
在創建包裝類的我這樣調用該函數:
setScale(setSide/(setWidth ? this.sprite.getBoundingRectangle().width : this.sprite.getBoundingRectangle().height));
setWidth =>布爾(你想設置高度還是寬度?) 這個。精靈是一個精靈。原產地@(0,0)
的問題是:我想設置的高度,無論哪個精靈進來,以50像素...
對於X1:setScale(50/100) - > 0.5 ˚F
對於X2:setScale(50/200) - > 0.25F
憑啥這是否piese的代碼無法正常工作?
感謝您的幫助了
你的,
弗洛裏安
PS:這裏的包裝類的構造函數:
public Drawable(Sprite sprite, Vector2 position, Anchor anchor, float setSide, boolean setWidth, boolean flipH, boolean flipV) {
this.sprite = new Sprite(sprite);
this.sprite.setOrigin(0, 0);
setPosition(anchor, position.x, position.y);
setScale(setSide/(setWidth ? this.sprite.getBoundingRectangle().width : this.sprite.getBoundingRectangle().height));
this.sprite.flip(flipV, flipH);
}