Nieoczekiwane wyniki implementacji prostego rozmycia ruchu w Libgdx
Na dwóch dołączonych zdjęciach zrzut ekranu pulpitu libgdx działa zgodnie z oczekiwaniami. Zrzut ekranu z mojego Galaxy Nexusa nie jest niestety zgodny z oczekiwaniami. Próbuję stworzyć prosty efekt rozmycia ruchu lub efektu szlaku.
Rendering zgodnie z oczekiwaniami na moim pulpicie.
Nie renderuję tak, jak oczekiwałem na moim nexusie Galaxy.
Tekstury okręgu są rysowane w pętli for podczas renderowania, a efekt jest uzyskiwany za pomocą pixmapy używającej RGBA 0, 0, 0, 0.1f, która jest rysowana przed okręgami.
tworzenie 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();
Renderowanie
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();
Więc co zrobiłem źle? Być może jest lepszy sposób na uzyskanie efektu ruchu „rozmycia ruchu”?