Você está na página 1de 12

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

Treinamento T2Ti Jogos - Java Bsico


Desenvolvendo um jogo digital em java

O treinamento "Desenvolvimento de Jogos Digitais - Java Bsico" tem como objetivo preparar o aluno para o desenvolvimento completo de um jogo side-scroller 2D na linguagem java. Todas as etapas da criao so descritas passo-a passo, auxiliando aqueles que esto comeando no mundo da programao. Para os alunos que j possurem um bom conhecimento na linguagem Java, as possibilidades de implementao e melhoria do jogo so sugeridas ao longo do curso, oferecendo ao aluno a chance de melhorar o cdigo e personalizar o seu prprio jogo. Ao final do treinamento, o aluno ser capaz de desenvolver seu prprio jogo, baseando-se no projeto desenvolvido durante o treinamento, ou se desejar, ampliar e melhorar o "Nebula Hero" de acordo com sua prpria vontade. importante salientar ao aluno interessado, que o curso ter um suporte de EAD (Ambiente de Ensino a Distncia) da T2Ti, e quaisquer dvidas que surgirem ou sugestes sobre melhorias no jogo, podero ser feitas por l. Para acessar o EAD, visite: http://www.t2ti.com/ead/

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

Greenfoot IDE

Para a realizao do treinamento, foi utilizada a IDE grfica em Java Greenfoot. A Greenfoot uma IDE voltada para o ensino fundamental de programao, mas que possui uma interface excelente para o desenvolvimento de jogos digitais, perfeita para quem est comeando a programar, e principalmente, para aquelas pessoas que ainda no tiveram contato com o desenvolvimento de jogos. possvel visitar a Greenfoot Gallery: http://greenfootgallery.org/home, um espao virtual reservado para os desenvolvedores publicarem seus projetos e cenrios, podendo trocar informaes e sugestes sobre os mesmos. Para acessar o site da Greenfoot, visite: http://www.greenfoot.org/

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

O Projeto Nebula Hero

O jogo em java Nebula Hero foi baseado no jogo R-Type (Sega Master System 1987). R-Type um Side-scrolling Shoot-em-up Sci-fi 2D game, ou simplesmente um jogo de tiro de nave. Sua estrutura define os elementos bsicos de um jogo sidescroller de tiro: Um ou mais cenrios, um objeto heri, inimigos, tiros (tanto do heri quanto do inimigo), deteco de coliso, pontuao, condio de vitria e derrota. Para o jogo Nebula Hero, seguimos com esta mesma estrutura, porm limitamos o escopo para apenas um cenrio que possua estas propriedades supracitadas e algumas extras: Cenrio, Heri, Inimigos, Tiros, Coliso, Vida, Pontuao, Condio de Vitria e Condio de Derrota. Gameplay do jogo Movimento da Nave: As setas para cima, para baixo, para esquerda e para direita movimentam o Heri para suas respectivas direes. O Heri no poder atravessar a rea de visualizao do jogo. Tiro da Nave: Tecla Espao Dano do tiro do Heri = 10

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

Dano do tiro dos Inimigos = 10 Escudo inicial do heri = 100 Condio de vitria: Atingir 15.000 pts no Score Condio de derrota: Escudo ficar menor ou igual a zero. Objetivo: Atingir os inimigos que surgem na tela, desviando de seus tiros. Inimigo Simples: Escudo = 10 Pontos = 150 Inimigo Chefes: Escudo = 80 Pontos = 800 Voc pode conferir a ementa completa do curso com comentrios adicionais. Vdeo Aula 01 Introduo Tpicos: -Seja bem vindo -O Treinamento em jogos -Ferramentas & pr-requisitos Aqui apresentaremos o instrutor, a aula e o conceito inicial do jogo que iremos criar em java, alm dos pr-requisitos para realizar o curso. Durao: 00:02:57 Vdeo Aula 02 - O Projeto Nebula Hero Tpico: -Sobre o projeto "Nebula Hero"

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

O game sidescroller de tiro 2D, "Nebula Hero" apresentado neste vdeo. O Objetivo do treinamento criar um game em java semelhante ao apresentado no vdeo. Durao: 00:04:36 Vdeo Aula 03 - Baixando e Instalando Greenfoot Tpicos: -"Greenfoot Gallery" -"For Programmers" -"Download" Como instalar e utilizar a API grfica 2D Greenfoot. Onde encontrar recursos que facilitaro o desenvolvimento do jogo e arquivos que possam auxiliar o desenvolvedor. Durao: 00:05:26 Vdeo Aula 04 - Primeiro Projeto com a Greenfoot Tpicos: -Criando um cenrio novo -Criando um cenrio Base (World.class) -Propriedades das classes (boto direito) -Instanciando com boto Direito - new Object() -Instanciando com Shift -Salvando o Status do Mundo Trabalhando com a Greenfoot, criaremos nosso primeiro cenrio e exploraremos as possibilidades de sua classe. Alm disso, aprenderemos alguns "shortcuts" (atalhos de teclado) e ferramentas que nos auxiliaro no desenvolvimento do jogo. Durao: 00:14:19 Vdeo Aula 05 - Projeto Nebula Hero - Criando um cenrio novo

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

Tpicos: -Definindo sua resoluo inicial (comprimento x altura x tamanho da celula) -Colocando sua imagem correta A partir desta videoaula, iniciaremos o projeto "Nebula Hero" em java. Nesta etapa, iremos definir o cenrio inicial do jogo, e suas propriedades iniciais. Durao: 00:04:47 Vdeo Aula 06 - Projeto Nebula Hero - Criando um Objeto "Heri" Tpicos: -Criando um Ator novo (Heri) -Colocando sua imagem correta -Colocando comandos de teclado no objeto heri -Setando as imagens para subida e descida da nave (feedback visual) -Criando um "Escudo" para o Heri -Criando um mtodo para tirar vida do Heri -Criando um mtodo para checar se o Heri est vivo -Colocando a nave no MeuMundo e salvando meu mundo (mtodo prepare) Nesta etapa, ser criada a classe Heri com suas propriedades iniciais como: imagens 2D, comandos de teclado, variveis, mtodos e eventos que checaro seu status. Durao: 00:28:08 Vdeo Aula 07 - Projeto Nebula Hero - Classe tiro Tpicos: -Criando uma classe tiro -Colocando sua imagem correta -Fazendo o heri atirar -Criando movimento automtico -Detectando coliso com o fim do cenrio

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

-Colocando udio Da mesma forma que o heri foi criado, uma classe para o objeto tiro ser criada, todavia suas propriedades sero diferentes. "Assets" de grfico e som sero instanciados nesta classe, a deteco de coliso com cenrio ser implementada e um movimento automtico ser definido. Nesta etapa tambm ser possvel fazer o heri atirar pela primeira vez. Durao: 00:27:43 Vdeo Aula 08 - Projeto Nebula Hero - Criando um inimigo Tpicos: -Colocando sua imagem correta -Movimentando o inimigo com mtodo move() -Criando um "Escudo" para o inimigo -Criando um mtodo para tirar vida do inimigo -Criando um mtodo para checar se o inimigo est vivo Uma classe inimigo ser criado e seus mtodos explicados. O inimigo tambm ganhar um escudo e movimento automtico. Durao: 00:08:26 Vdeo Aula 09 - Projeto Nebula Hero - Atingindo e Destruindo o inimigo Tpicos: -Criando um mtodo para detectar coliso -Utilizando o mtodo getOneIntersectiongObject(classe) -Criando a condio de coliso -Setando o dano -Removendo o tiro A coliso do objeto inimigo com o objeto tiro ser explicada nesta etapa, sendo ela uma

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

das mais importantes do treinamento em jogos. Ser utilizado um mtodo para checar uma condio de coliso entre os objetos, e a remoo dos mesmos. Durao: 00:23:01 Vdeo Aula 10 - Projeto Nebula Hero - Como fazer o inimigo atirar Tpicos: -Criando uma classe tiro_inimigo -Colocando sua imagem correta -Setando o dano -Criando movimento automtico -Detectando coliso com Heri e bordas do cenrio -Colocando som de tiro -Criando o mtodo tiro() no inimigo Nesta etapa, o inimigo ganhar a possibilidade de atirar de volta no heri. Um mtodo de causar danos ser implementado, e uma nova classe tiro_inimigo ser criada. Durao: 00:10:27 Vdeo Aula 11 - Projeto Nebula Hero - Detectando coliso entre naves Tpicos: -Criando o mtodo detectarColisao e causar danos no inimigo -Criando o mtodo detectarColisao e causar danos no heri A ltima etapa na deteco de coliso entre objetos do jogo. Ser desenvolvido um mtodo que reconhea a coliso entre a nave do heri e as naves inimigas. Durao: 00:11:50 Vdeo Aula 12 - Projeto Nebula Hero - Colocando musica no cenrio Tpicos: -Criando o objeto BG_music

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

-Executando suas funes (Playloop, pause, stop e setVolume) -Iniciando a musica dentro das funes started e stopped do objeto world e o level started Uma das etapas mais importantes para a produo. Aqui aprenderemos a instanciar uma msica no cenrio e controlar suas funes: Play, Stop, Pause, Loop e Volume. Durao: 00:12:54 Vdeo Aula 13 - Projeto Nebula Hero - Criando um contador Tpicos: -Passando o string nome -Criando a imagem e definindo as cores -Criando o mtodo mostra() -Criando mtodo getEscudo() e getScore no heri -Criando o mtodo setScore() no heroi -Implementar mtodo _mundo.heroi.setScore(pontos) no inimigo -Criar contadores "contadorEscudo" e "contadorScore" Um dos elementos mais importantes para o feedback dos jogadores ser criado nesta videoaula. O Contador servir como referncia mais tarde para o jogador acompanhar sua pontuao e vida no decorrer do jogo. Durao: 00:35:22 Vdeo Aula 14 - Projeto Nebula Hero - Timers & Inimigos Randmicos Tpicos: -Criando Inimigos Randmicos - mtodo "Level_1()" -Timer - metodo "timer()" -Criando um inimigo chefe -Criando mais tiros para o inimigo chefe -Criando uma variao no movimento do inimigo

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

Os timers so elementos fundamentais para qualquer jogo digital. Aqui aplicaremos timers que controlaro o fluxo do jogo e a apario de inimigos no cenrio. Durao: 00:33:36 Vdeo Aula 15 - Projeto Nebula Hero - Colocando um background animado Tpicos: -Refazendo a classe ScrollWorld -Cuidados com o Bug do pezinho da Greenfoot -Cuidados com o Tamanho da imagem (aumentando a resoluo) -Super 800 x 480 Para uma melhor produo grfica, criaremos atravs de um cdigo desenvolvido por um programador da comunidade Greenfoot, um background animado para o nosso jogo em java. Durao: 00:16:11 Vdeo Aula 16 - Projeto Nebula Hero - Feedback visual Ajustando Detalhes & Extras -Tpicos: -Mtodo GUI() -Mudar cores do "contadorEscudo" -Timer e regenerao no escudo do heri -Partculas Nesta videoaula, implementaremos os contadores criados nas aulas anteriores em um GUI (graphical user interface) que apresentar o escudo e o score do jogador. Alm disso, desenvolveremos partculas para criao de efeitos especiais no nosso jogo e um mtodo para regenerar o escudo. Durao: 00:37:37 Vdeo Aula 17 - Projeto Nebula Hero - Criando sprites, tela de vitria e derrota

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

-Tpicos: -Criando classe sprite -Gameover na morte do heri -Youwin no heri - mtodo checarScore(condio de vitoria) Definiremos as condies de vitria e derrota do jogo, e criaremos uma classe sprite para lanar os assets grficos que definiro cada uma destas etapas. Durao: 00:10:43 Vdeo Aula 18 - Projeto Nebula Hero - Criando uma tela inicial, tela de Crditos e How to play -Tpicos: -Criando o cenrio Menu -Sprites logo e start -Boolean menustarted -Timer para trocar as imagens do menu -Condies para trocar as imagens do menu -Ordem de desenho das classes "setPaintOrder" nos cenrios -Configurando a Greenfoot para dar load no menu Nesta etapa, a ltima do estgio de produo e desenvolvimento, criaremos um menu inicial com crditos e instrues de como jogar (how to play). Durao: 00:36:15 Vdeo Aula 19 - Projeto Nebula Hero - Publicando o arquivo Tpico: -Share Webpage No menos importante, exploraremos as possibilidades que a Greenfoot nos oferece para a publicao do nosso jogo 2D em java.

www.t2ti.com

CURSO DESENVOLVIMENTO DE JOGOS COM JAVA

Durao: 00:03:44 Vdeo Aula 20 - Projeto Nebula Hero - Reviso do Projeto Um resumo de todas as etapas do projeto Nebula Hero Durao: 00:15:41 Vdeo Aula 21 - Projeto Nebula Hero - Tpico Extra - Criando Sons com o SFXr Tpico especial para aqueles que desejam criar seus prprios efeitos sonoros. Durao: 00:02:00 Vdeo Aula 22 - Projeto Nebula Hero - Desafios Finais Tpicos: -Novos Cenrios -Mais Levels -Criar Multiplayer Local (teclado) -Criar power-UPS (tiro, vida, aliados, etc..) -Melhorar AI (pathfinding & comportamento) -Desafio do Melhor "BOSS" Aqui desafiamos o aluno a melhorar seu game em java, explorando os seguintes tpicos: Durao: 00:05:01 Para mais novidades na rea de jogos, ou cursos, treinamentos e videoaulas sobre criao e desenvolvimento de jogos, visite o site: www.t2ti.com

www.t2ti.com