Professional Documents
Culture Documents
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
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
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
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
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
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
-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
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
-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
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
-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
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