在兩張附加的圖片中,libgdx的桌面截圖按預期工作。不幸的是,我的Galaxy Nexus的屏幕截圖並不如預期。我正試圖創建一個簡單的運動模糊或跟蹤效果。在Libgdx中實現簡單運動模糊的意外結果
按照我的預期在我的桌面上進行渲染。
未呈現,如我所料在我的Galaxy Nexus。
在渲染過程中將圓形紋理繪製在for循環中,並且使用在圓圈之前繪製的0,0,0,0.1f的RGBA的像素映射來實現該效果。
screenClearSprite創作
Pixmap screenClearPixmap = new Pixmap(256, 256, Format.RGBA8888);
screenClearPixmap.setColor(Color.rgba8888(0, 0, 0, 0.1f));
screenClearPixmap.fillRectangle(0, 0, 256, 256);
screenClearTexture = new Texture(screenClearPixmap);
screenClearSprite = new Sprite(screenClearTexture);
screenClearSprite.setSize(screenWidth, screenHeight);
screenClearPixmap.dispose();
渲染
batch.begin();
font.draw(batch, "fps:" + Gdx.graphics.getFramesPerSecond(), 0, 20);
screenClearSprite.draw(batch);
for (int i = 0; i < circleBodies.size(); i++) {
tempPos = circleBodies.get(i).getPosition();
batch.draw(circleTexture, (tempPos.x * SCALE) + screenWidthHalf
- circleSizeHalf, (tempPos.y * SCALE) + screenHeightHalf
- circleSizeHalf);
}
batch.end();
所以,我做了什麼錯?也許有更好的方法來獲得運動的「運動模糊」效果?
你能在其他Android設備上重現此行爲嗎? –
您是否確定存在問題,因爲第二個屏幕截圖上的球看起來好像比第一個屏幕截圖上的球移動速度慢?你的遊戲循環是什麼?您是否使用當前時間來計算運動模糊 - 可能與您的PC CPU相比,連接處的CPU速度更快/更慢。 –
是的,這是可重現的我的充滿活力和Galaxy Nexus S. 至於模糊,他們是沒有運動模糊計算。運動模糊可能不是效果最準確的術語。我正在查找的效果在頂部圖像中精確描述。問題似乎是繪製爲不透明層的紋理不能正確計算爲1。這導致了我無法解釋的討厭的裸奔,因爲它在我的兩臺電腦上按預期工作。 # –