Bonjour,
Je réalise actuellement un jeu de Tetris (le même que celui de mon post précédent). J'utilise pour cela la bibliothèque GTGE qui permet la gestion de sprites. Je rencontre le problème suivant :
Toutes les briques apparaissent correctement, sauf la brique "T" qui apparaît "en creux", c'est à dire que ses bords apparaissent (ils ne sont pourtant pas d'1 pixel de large ! Ce sont des surfaces de quelques pixels) mais que l'intérieur est vide : on voit l'arrière-plan à travers.
Un bon dessin valant mieux qu'un long discours :
http://www.flickr.com/photos/59143248@N02/5418227382
Ce qui est étonnant, c'est que je ne rencontre ce problème que pour le sprite en "T" ! En effet, pour "O" par exemple :
[ame="http://www.flickr.com/photos/59143248@N02/5417632799/"]tetris_o | Flickr - Photo Sharing!@@AMEPARAM@@http://farm6.static.flickr.com/5098/5417632799_20c410c81c_m.jpg@@AMEPARAM@@5417632799@@AMEPARAM@@20c410c81c[/ame]
Voici mon code pour l'importation de l'image :
o, z, ..., i étant des variables BufferedImage déclarées dans la classe contenant le main, initialisées convenablement semble-t-il (puisque ça marche).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public BufferedImage getBrique(char type) { BufferedImage retour = new BufferedImage(30, 30, BufferedImage.SCALE_DEFAULT); if (type == 'O') retour = o; else if (type == 'Z') retour = z; else if (type == 'S') retour = s; else if (type == 'T') retour = t; else if (type == 'J') retour = j; else if (type == 'L') retour = l; else if (type == 'I') retour = i; return retour; }
Je soupçonne le BufferedImage.SCALE_DEFAULT de ne pas convenablement prendre en compte les options d'opacité de mon "t.png". Peut-être est-ce aussi la méthode getImage(String image_name) de GTGE qui les prend mal en compte, ou la conversion entre la BufferedImage générée par getImage(String) et ma BufferedImage retour qui se passe mal.
Ci-joint en tout cas :
- t.png représentant une brique unitaire du T-tetromino ;
- o.png représentant une brique unitaire du O-tetromino, comme élément de comparaison.
Voici où je les ai découpées : http://fc07.deviantart.net/fs16/f/20...Swordholio.gif
Je précise que j'ai agrandi les briques : elles faisaient à l'origine 10*10 px², j'en ai fait du 30*30 sous The Gimp.
Partager