Hoje venho apresentar os primeiros resultados do jogo de tiro sobre o qual falei no último post, referente ao projeto Bizuca. Vou apresentar a principal ferramenta nativa de Java que utilizei para criar os gráficos e a animação do jogo:
[Bizuca V 1.0]
---//---
[Desenhos em Java]
Todo o desenho do projeto foi desenvolvido em cima da classe Graphics, que trabalha no redesenho do JPanel do nosso projeto:
import java.awt.Graphics;
Assim, o método principal de desenho sobre o JPanel é o paintComponent, que recebe um objeto do tipo Graphics. Chamando primeiro o método da superclasse:
super.paintComponent (g);
Assim, um programa básico de desenho, que traçaria, por exemplo, uma linha reta, teria a seguinte estrutura:
Lines.java
import javax.swing.JFrame; public class Lines { public static void main(String[] args) { DrawLines panel = new DrawLines(); JFrame frame= new JFrame("Meu primeiro desenho"); frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); frame.setSize( 250, 250 ); frame.setVisible( true ); frame.add( panel ); } }
DrawLines.java
import java.awt.Graphics; import javax.swing.JPanel; public class DrawLines extends JPanel{ public void paintComponent( Graphics g ){ super.paintComponent( g ); g.drawLine( 0, 0, 250, 250 ); } }
Porém, o grande diferencial desta classe é possibilidade de manipular imagens de diversos formatos (.bmp, .png, etc) com grande facilidade, abrindo um grande leque de possibilidades para a criação de jogos. Para a criação de uma imagem, é preciso usar as seguintes classes:
import java.swing.ImageIcon;
import java.awt.Image;
Abaixo, um exemplo de aplicação com imagens. Note que o caminho da imagem deve ser especificado no código. O ideal é criar um pacote no projeto para colocar as imagens, que podem ser inseridas simplesmente arrastando-as para dentro do pacote, conforme a imagem abaixo:
Figura 1 - Projeto com Imagens
Assim, temos um exemplo de projeto com imagens:
Figura.java
package figura; import javax.swing.JFrame; public class Figura { public static void main(String[] args) { Panel panel = new Panel(); JFrame frame = new JFrame("Meu primeiro desenho"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(450, 450); frame.setVisible(true); frame.add(panel); } }
Panel.java
package figura; import java.awt.Color; import java.awt.Graphics; import java.awt.Image; import javax.swing.ImageIcon; import javax.swing.JPanel; public class Panel extends JPanel { Image imagem; ImageIcon icon; String caminho = "src\\imagens\\pentagrama.png"; public void paintComponent(Graphics g) { super.paintComponent(g); icon = new ImageIcon(caminho); imagem = icon.getImage(); g.drawImage(imagem, 10, 10, this); g.setColor(Color.red); g.drawLine(0, 0, 350, 350); } }
O resultado terá a seguinte forma:
Figura 2 - Resultado da aplicação com uso de imagem.
E assim concluo a apresentação deste recurso interessante e poderoso. Deixo o link para um site bem didático que ensina a criação de um game clássico de naves e tiros:
E ainda mais alguns links:
http://papeldiario.blogspot.com.br/2013/06/tutorial-java-jogo-invasores-do-espaco_16.html
Alguns outros links interessantes:
Por hoje é só, pessoal!
Nenhum comentário:
Postar um comentário