Bonjour.
Je programme un jeu mais je rencontre une difficulté
je veux afficher un sprite sur un décor. c'est à dire une image jpg sur une autre image jpg.  je n'arrive pas à enlever le carré blanc autour du sprite : il ne se fond pas dnas le décor.
je crois qu'il faut uttiliser setcomposite mais je n'y arrive pas
pouvez-vous m'aider ?
voici mon code source de test. Attention au chemin des fichiers. pour les fichiers utiliser n'importe quelle fichier jpg
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.image.BufferStrategy;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.*;
public class FenetreJeuTest extends JFrame  {
	
	private static final int LARGEUR_APPLICATION = 1000;
	private static final int HAUTEUR_APPLICATION = 550;
	private static final String TITRE_APPLICATION = "Super-Poulet 2006";
	
	BufferedImage imageSuperPouletCourante;
	
	private BufferedImage decor;
	private BufferStrategy strategy;
	private Graphics2D backBuffer;
	
	
	public FenetreJeuTest ()  throws IOException{
		this.setBackground(Color.WHITE);
		this.setTitle(TITRE_APPLICATION);
		this.setPreferredSize(new Dimension(LARGEUR_APPLICATION, HAUTEUR_APPLICATION));
		this.addWindowListener(new WindowAdapter () {
			public void windowClosing(WindowEvent e) {
				System.exit(0);
			}
		});	
		
		
		
		this.pack();
		this.setVisible(true);
		this.setIgnoreRepaint(true);
		
		File f = new File("D://Mes documents//développement//workspace//SuperPoulet//images//decors.jpg");
		decor = ImageIO.read(f);
		f = new File("D://Mes documents//développement//workspace//SuperPoulet//images//Sprite//SuperPoulet//Marche//poulet marche 3_1.jpg");
		imageSuperPouletCourante = ImageIO.read(f);
		
		
		 strategy = getBufferStrategy();
		 backBuffer = (Graphics2D) strategy.getDrawGraphics();
		 renderingRoutine();
				
	}
	
	
	 private void renderingRoutine() {
		backBuffer.drawImage(decor ,0,0, this);
		backBuffer.drawImage( imageSuperPouletCourante, 0,0,  this);
		strategy.show();
	 }
	 
	 public static void main(String[] args) throws IOException {
			
			// TODO Auto-generated method stub
			new FenetreJeuTest().show(); //setVisible(true);
			
		}
	
}
Forum Programmation.java sprite et décor
28
août
2006
# Canal Alpha
Posté par Joc M . Évalué à 4.
Je te conceil donc d'utiliser du PNG
Donc:
- tu ouvres ton fichier JPEG avec GIMP (ou ton soft de traitement d'image préféré)
- tu l'enregistres en PNG
- tu sélection le fond blanc
- tu fais supr
- tu resauvegardes ton image
Et paf c'est bon
[^] # Re: Canal Alpha
Posté par nicolas . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.