Mostrando postagens com marcador Imagine Cup. Mostrar todas as postagens
Mostrando postagens com marcador Imagine Cup. Mostrar todas as postagens

terça-feira, maio 25, 2010

Vehicle Cleaner

Em meados do ano passado eu fui convidado por um colega do mestrado para ajudar no desenvolvimento do jogo Vehicle Cleaner, semifinalista da Imagine Cup 2009. O jogo já havia sido desenvolvido e passado pela primeira fase quando eu entrei na equipe. O objetivo era ajudar no polimento final e na adição de novas fases e recursos para levá-lo adiante na competição, o que infelizmente não aconteceu.

Aproveitando que o autor do jogo, o José Ricardo, postou o vídeo abaixo no Youtube, eu resolvi falar um pouquinho dele aqui também.


Seguindo o tema da Image Cup, o jogo propõe um ambiente onde uma bateria pode ser utilizada para reduzir a poluição emitida pelos veículos e cabe ao jogador fazer a conversão nos carros, ônibus, caminhões e motocicletas que passam pelas ruas. É preciso tomar cuidado para converter apenas os veículos poluentes e também atentar para o uso da bateria correta. O jogo acaba caso o nível de poluíção chegue ao limite.

Esse foi um dos jogos com a interface mais bacana que eu trabalhei. O menu principal com um robô gigante em meio à cidade era composto de três fundos diferentes que mudavam aleatoriamente, alterando também a disposição dos botões. A tela do mapa que aparece antes das fases também ficou muito interessante, levemente inspirada no jogo Captain Commando, ela mostra a fase atual, as concluídas e as que estão por vir.

O jogo se passa em diversas localidades espalhadas por uma visão futurista da cidade do Rio de Janeiro. As fases crescem em dificuldade à medida que novas pistas são adicionadas (incluíndo trânsito nas duas direções) e novos veículos ficam disponíveis.

Como não avançou à final, não chegamos a terminar todas as fases do jogo, mas ele estava bem promissor. Nós nos empenhamos bastante pra fazer o jogo interessante e divertido, tanto do lado da programação, desenvolvida por mim e pelo José Ricardo, quanto da arte, feita pelo David Siqueira.

Enfim, quem sabe em algum momento não conseguimos retomar o projeto... Enquanto isso, mais detalhes e uma galeria maior de imagens estão disponíveis aqui.

quinta-feira, outubro 25, 2007

Imagine Cup - Competição de Algoritmo

Já está rolando a Competição de Algoritmo da Imagine Cup 2008.


O desafio dessa vez é criar um programa na linguagem 'h' (definida no próprio site da competição) para controlar um pequeno robô chamado Herbert, que deve percorrer o campo passando por todos os botões brancos e evitando os botões cinza. Existe também a limitação na quantidade de bytes disponíveis para a criação do programa em cada etapa.


Gostou? Ficou interessado? Então conheça o Herbert e a Competição de Algoritmo clicando aqui.

terça-feira, outubro 16, 2007

XNA Breakout

Esse é um joguinho no qual eu venho trabalhando nos últimos dias. Sim, trata-se de mais um Breakout, mas meu objetivo não é fazer o jogo em si, mas sim estudar a parte 3D do XNA pra um outro jogo que vou fazer com a galera da faculdade pra Imagine Cup 2008.

Falando sobre os estudos, o XNA é muito bom, mas dá pra ver que o Framework ainda é muito cru e ainda tem bastante pra evoluir. Eu tive dois grandes problemas na criação do meu jogo, um na parte das colisões e outro com os sons.

Primeiro, por mais estranho que pareça, o XNA não oferece uma maneira prática de se calcular uma caixa de colisão para objetos 3D. Você pode usar uma colisão por círculo, ou se virar pra encontrar outro jeito.

Bem, aqui vemos o lado positivo de um produto da Microsoft. A comunidade abraçou o XNA e já existem centenas de boas fontes de informações sobre o Framework por aí. Uma delas, o Andy's Blog, publicou uma maneira simples de se escrever um Content Pipeline personalizado que guarda informações sobre Bounding Box na hora de carregar o modelo. Não deve ter nem 50 linhas de código e aí fica a pergunta, porque a Microsoft não colocou isso direto no XNA?

Está com o mesmo problema? Veja a solução aqui.

O outro problema é ainda pior. Até o momento o XNA aceita somente sons no formato Wave (ou Aif o que dá na mesma) e sons nesse formato são enormes. Se um dos objetivos do XNA é atingir os jogadores casuais, ainda há muito trabalho para torná-lo viável. Um jogo que poderia ficar facilmente com uns 2 ou 3MB acaba ficando com dez ou mais graças aos arquivos de som. O jogador casual quer ter acesso rápido ao jogo, se ele precisar ficar horas baixando o arquivo, provavelmente vai buscar um site de jogos em Flash onde cada jogo demora só alguns segundos pra carregar.

Pra se ter uma idéia do exagero que o formato Wave causa no tamanho final do jogo, o Catapult é um minigame disponível no Creators Club com código-fonte completo, voltado para o aprendizado. É um jogo muito simples, mas tem 33,4MB sendo 30,2MB gastos somente por 9 arquivos de audio e o pior é que esse tamanho ainda aumenta quando os arquivos são transformados para o formato padrão compilado pelo XNA.

Como alternativa, se o desenvolvimento focar somente o Windows, pode-se usar uma biblioteca externa, como o IrrKlang, mas o XNA deveria empacotar esse tipo de solução nativamente.

No fim das contas eu ainda acho que o XNA é uma ótima plataforma de desenvolvimento, o suporte da Microsoft e da comunidade realmente fazem a diferença, mas vamos torçer para que a versão 2.0 do Framework traga mudanças relevantes em relação a estes problemas.

O jogo ainda não está disponível pra download, mas libero ele em breve. Enquanto isso, alguns screenshots do XNA Breakout 3D:

Menu principal do jogo. Fiz um Game Component bacana que quando você passa o mouse por cima do botão ele muda a imagem.

sábado, setembro 08, 2007

Imagine Cup 2008


As inscrições pra Imagine Cup 2008 já estão abertas e a competição já está rolando. Desta vez a final será na França (ano passado foi na Coréia).

Pra quem tiver interesse em participar, existem várias categorias, sendo que uma das novidades desta edição é a categoria Game Development usando o XNA Framework.

Podem se inscrever na Imagine Cup qualquer estudante que esteja regularmente matriculado no segundo grau ou no ensino superior no mundo todo (exceto alguns países listados no site).

Vale a pena se inscrever mesmo que não for pra participar a sério, já que a Microsoft disponibiliza para download gratuito vários softwares (entre eles o Windows XP Profissional, o Windows Vista Business, o Visual Studio 2005 e o SQL Server 2005) para os participantes.

Confira a categoria Game Development aqui e a página oficial da competição aqui.