J'utilise Box2DLights dans un de mes projets. J'ai travaillé sur ce projet pendant quelques mois maintenant, et j'ai juste essayé de le porter sur Android, pour voir à quoi ça ressemble. Alors que l'effet de lumière semble très agréable sur la version de bureau du jeu, il semble vraiment moche sur la version Android. Le gradient de lumière n'est pas lisse du tout, avec un effet de bande de couleur. Voici les captures d'écran du bureau et les versions Android: libGDX/Box2DLights Couleur Banding sur Android
Pour utiliser Box2DLights dans mon jeu, j'utilise ce code dans mon GameScreen:
RayHandler.useDiffuseLight(true);
rayHandler = new RayHandler(world);
rayHandler.resizeFBO(Gdx.graphics.getWidth()/5, Gdx.graphics.getHeight()/5);
rayHandler.setBlur(true);
rayHandler.setAmbientLight(new Color(0.15f, 0.15f, 0.15f, 0.1f));
J'ai aussi essayé de jouer avec des paramètres différents, tels que:
rayHandler.diffuseBlendFunc.set(GL20.GL_DST_COLOR, GL20.GL_SRC_COLOR);
Ou
rayHandler.shadowBlendFunc.set(GL20.GL_DST_COLOR, GL20.GL_SRC_COLOR);
Ou
Gdx.gl.glEnable(GL20.GL_DITHER);
Je ne sais pas ce qui aide, mais voici d'autres precisions:
- Mon tileset a été fait sur Photoshop et enregistré en tant que fichier PNG avec le mode RVB, 8 bits/canal
- Cet effet a été observé sur mes 2 appareils Android qui sont:
- Tablet Transformer Prime TF701 avec Android 4.2.1
- LG G avec Android Stylo 5.0.2
Merci pour votre aide!