Category: concursos

final do e-games 2009

Ontem foi a final da primeira edição do concurso de jogos digitais organizado pelo SENAC São Paulo, o e-Games. Eu e mais 4 equipes finalistas apresentamos nossos jogos para um banca que os avaliou e decidiram os 3 melhores. Infelizmente não fiquei entre os 3 melhores jogos, fiquei em 5º lugar. No fundo eu esperava isso, já que fiquei bem surpreso por ser um finalista, sendo que fiz o jogo em apenas uma semana. Segundo a organização do evento, pouco mais de 60 equipes se inscreveram para este concurso, e apenas 20 e poucas equipes enviaram tudo que era necessário para participar.

Entrada do evento no SENAC Santo Amaro

Entrada do evento no SENAC Santo Amaro

Existem vários outros concursos como este que pretendo participar, com a Imagine Cup, o XNA Challenge e o Dream Build Play, mas agora vou me dedicar mais. Consegui um desempenho muito bom com um jogo simples e não muito original. Acho que uma desvantagem que tive foi fazer tudo sozinho, enquanto as demais equipes tinham pelo menos um artista. Preciso encontrar algum artista para me ajudar a fazer jogos, já que meu forte é a programação.

Certificado de Finalista no e-Games 2009

Certificado de Finalista no e-Games 2009

O evento foi bem legal e muito bem organizado pelo SENAC. Todas as equipes deram entrevista para o Programa Novo da TV Cultura, teve um ótimo coffee break, ganhei uma camiseta e um certificado de finalista, e dei bastante risadas com as conversas com os demais finalistas. Embora eu não tenha ganho, valeu muito a pena participar disso tudo, e as equipes vencedoras mereceram o que conquistaram.

Identificação de Finalista no e-Games 2009

Identificação de Finalista no e-Games 2009

Depois atualizo este post com mais imagens e videos que encontrar na internet sobre este evento, estou torcendo para que tenha muitas outras edições e que seja mais divulgado também.

Atualizado: Adicionei dois videos feitos no dia do evento: a entrevista para o Programa Novo da TV Cultura e o video feito pelo Rodrigo van Kampen, membro da equipe vencedora do concurso, ambos retirados do blog continue.

finalista no e-games 2009 com um dos 5 melhores jogos!

e-Games 2009Hoje fiquei muito feliz com a notícia de que meu jogo SpaceShip 4042 feito com XNA para o concurso e-Games 2009, a primeira competição de jogos digitais do SENAC São Paulo, foi escolhido como um dos finalistas. Fiquei mais feliz ainda em descobrir que os finalistas deste concurso são apenas 5 jogos, entre eles o meu!

Eu não esperava ser um dos finalistas neste concurso, por diversos motivos. Porém, consegui ficar entre os 5 melhores jogos, o que para mim já é uma vitória. Fiz este jogo sozinho, sem conhecer muito bem XNA, em menos de uma semana, virando noites programando, tive diversos problemas, e apesar de tudo isso meu trabalho foi reconhecido e todo este esforço valeu muito a pena.

O jogo vencedor será anuncia na quinta-feira (05/11) em um evento no SENAC Santo Amaro, no qual eu irie participar apresentando meu jogo para os jurados. Não sei se tenho chances reais de ganhar, não faço a menor idéia do que os demais participantes podem ter feito com mais tempo do que eu, mas vou tentar fazer o máximo e o melhor que eu puder para conseguir uma boa colocação final.

Este é o primeiro concurso que participo sozinho, e fiquei muito feliz em ver a minha capacidade em criar algo em tão pouco tempo, com todas as dificuldades tecnológicas que tive, e ainda ser reconhecido por isto. Sem dúvidas isto é um grande insentivo para eu continuar a estudar e desenvolver jogos.

Após a final, irei escrever aqui tudo que aconteceu e qual minha colocação final!

e-games: meu jogo com XNA

O SENAC São Paulo organizou sua primeira competição de jogos digitais, o e-Games, onde os concorrentes deveriam criar um jogo utilizando XNA. Além do jogo feito com XNA, foi necessário entregar um vídeo, documento de game design, apresentação, resumo e guia de instalação. O Download do jogo pode ser feito clicando aqui, ele necessita do .Net Framework 3.5 e Microsoft XNA Framework Redistributable 3.1 instalados para rodar, não é necessário instalar o jogo, apenas executar o SpaceShip4042.exe.

Tela inicial do jogo desenvolvido com XNA para o e-Games

Tela inicial do jogo desenvolvido com XNA

O prazo para entrega foi na última sexta-feira, e eu decidi participar disto uma semana antes e sozinho. Ou seja, tive apenas uma semana para fazer tudo isso, além de ter que trabalhar e ir para a faculdade. Como estava sem tempo, decidi criar uma versão do meu jogo de celular SpaceShip 4042 em XNA, pois já tenho todas as imagens para criar o jogo, além de ter todo o conceito pronto, só foi necessário programar.

Depois de uma semana dormindo menos de 4 horas por dia, virando noites programando, o resultado não foi exatamente o que eu imaginei, mas consegui terminar meu jogo com tudo que a versão de celular tem, com excessão de som, pois tive dificuldades com isto e estava sem tempo. Além disso, no lugar de um High Score, fiz um Ranking top 5.

Embora eu tivesse apenas que programar, tive vários problemas por não conhecer muitas coisas no XNA e não ter tempo suficiente para estudar melhor. O maior problema que tive foi com a detecção de colisão por pixel. No JME existe uma função que verifica a colisião entre dois Sprites, inclusive existe o tipo de dado Sprite. Já no XNA não é tão fácil assim, não existe Sprite e método de detecção de colisão pronto.

O método de colisão que utilizei consiste em verificar se existe a interseção entre a área da imagem dos dois Sprites que estão colidindo. Uma vez que esta interseção existe, vem a parte mais complicada que é verificar se existe a sobreposição dos pixels que não são transparentes na imagem, utilizando um vetor com a cor da cada pixel da imagem. Não é tão complicado quanto parece, mas é bem chatinho de fazer.

Resolvi o problema do Sprite criando uma classe com os atributos que achei necessários para a fazer a nave, os meteoros, os itens e os tiros. Os principais atributos são: um Vector2D para a posição do objeto, uma lista de Texture2D para guardar todos as imagens que compoem a animação do Sprite, um Rectangle para ser utilizado na detecção da colisão, um vetor de Color com as cores da imagem, um bool para a visibilidade, e inteiros para armazenar vida, frame da animação e movimentação do objeto. Criei métodos para desenhar, mover, esconder, causar dano e verificar se o sprite “morreu”.

Outro problema que tive, mas que foi simples de resolver, foi a animação, pois o XNA também não possui algo que facilite isto como o incrível arquivo GameDesign do JME. Utilizando um inteiro, controlei a animação do Sprite em cada quadro. Também tive dificuldades com a criação das telas e sua maniulação. Criei uma interface para telas, e todas as telas implementam os métodos default do XNA: Update, Draw e LoadContent, além de um para controlar a inicilização das variáveis. A classe principal do jogo inicia todas as variáveis que representam as telas e tem responsabilidade de controlar a exibição de cada uma, de acordo com o estado do jogo.

Tela do jogo com os três tipos de Sprite criados

Tela do jogo com os três tipos de Sprite criados

Se eu tivesse tido mais tempo, ou começado bem antes quando fiquei sabendo desde concurso, eu poderia ter feito muitas outras coisas e melhor, mas fiquei satisfeito em fazer um jogo em XNA em tão pouco tempo e sem conhecer tão bem as características desta tecnologia. Fiz muitas coisas básicas para um jogo 2D, e na minha opinião só faltou colocar som no jogo.

Assim como no JME, que tive dificuldades no começo, tive dificuldades com o XNA também, mas meus próximos jogos 2D nessas plataformas ficarão muito melhores, e provavelmente levarei menos tempo para programar, pois aprendi muitas coisas desenvolvendo para plataformas diferentes com tecnologias distintas. Praticamente tudo que utilizei aprendi fuçando nos exemplos do XNA Creators Club e nas dúvidas no forum, são ótimas fontes de informações.

Meu próximo passo agora é começar a estudar programação de jogos em 3D com C++. Este estudo é o primeiro passo para o meu TCC ano que vem, que provavelmente será um jogo em 3D com C++. Tenho algumas idéias para o jogo, mas nada decidido ainda, porém preciso aprender este tipo de programação, que eu tive contanto apenas no XNA para movimentação de modelos 3D simples na tela.

Panorama theme by Themocracy