Fast Flash Gamming

Flash é uma plataforma interessantíssima para desenvolver jogos. Eu já falei um pouco sobre Flash e outras plataformas semelhantes aqui no blog. Na verdade, esse post é mais para mostrar esse vídeo que eu achei interessante:

É um joguinho simples, mas foi feito em menos de 10 minutos! Isso prova que dá pra você fazer jogos bem legais rapidamente. Obviamente não em 9 minutos e pouco, mas num tempo suficiente.

Faz um tempo que eu to querendo aprender ActionScript 3, ainda mais agora que eu to interessado no Flex. Vou correr atrás, assim que possível, posto algum tutorial aqui! =D

Enquanto isso, podem dar uma olhada nesses:

E caso queiram alguma coisa sobre Flex, vejam esses tutoriais aqui! Vale a pena. ^^

FireCat

FireCat

FireCat era o jogo que eu ia participar do Contest de MiniGames em XNA.

Na verdade, foi a coisa mais imatura que eu já fiz. Não tinha idéia nenhuma. Abri o fireworks e comecei a mexer, pensando em alguma coisa, até que desenhei um gato. Aí coloquei um fogo no rabo dele e já era, saiu o termo FireCat.

Mas mesmo assim eu não tinha idéia do que fazer para um jogo com isso. Aí é que vem a parte imatura, eu comecei a codificar sem ter noção alguma do que eu queria fazer. E então criei uma ‘moviementação’ ao gato, na verdade ele só podia olhar para os lados, cima, baixo, direita e esquerda. E quando pressionasse espaço, seu rabo acendia uma chama.

Tá certo que foi a primeira coisa que eu fiz com XNA, era mais um teste mesmo. Mas mesmo assim fiz com o mínimo de linhas possíveis para entrar no contest com ele. O problema é que eu nunca tive uma boa idéia do que fazer com aquilo. Mas como eu gostei, vou pensar em alguma idéia, agora que eu posso usar quantas linhas e classes eu quiser, e criar algum joguinho com ele. Aí eu posto o código aqui, e quem sabe, se o tempo me permitir, até um tutorialzinho.

2D Versus 3D

2D Versus 3D

Muitos de vocês diriam que 3D é melhor. Mas já pararam para pensar como era bom jogar jogos de Super Nintendo? Ou PS-One 2D?

Junta tudo isso com a capacidade de processamento dos computadores e consoles de hoje, e imagina o que se pode fazer com jogos 2D. Muitos efeitos gráficos, velocidade, movimentos alucinantes, dá pra abusar de jogos com duas dimensões apenas.

Tenho muita vontade de começar a criar jogos 3D, mas acho que ainda não tenho experiência suficiente em programação de jogos, e também não quero estragar esta fase bacana que é a de criar jogos simples 2D. Não que eu ache que jogos 2D são melhores, mas são charmosos e exigem muito mais criatividade. Criatividade, termo principal no desenvolvimento de jogos.

Veja quantos FPS’s têm no mercado hoje? É um tipo de jogo interessante, divertido, mas é quase sempre a mesma coisa. Mas mesmo assim eles ainda vendem muito, por que? Porque trazem uma simulação realista de combates, mortes, tiros e tal. Agora imagina um pong? Como você vai vender um pong mudando apenas o tema dele? Não dá, você tem que ter criatividade para inovar sobre isso.

Tá certo que eu exagerei um pouco ao usar o Pong como exemplo, mas deu pra ter uma idéia, né? Aproveitar as limitações das duas dimensões para desenvolver a criatividade e criar muitos jogos divertidos e bonitinhos! hehehe

É por isso que eu acho que qualquer gamedeveloper deveria começar mexendo com jogos 2D, pois foi onde tudo começou. O conceito de jogos digitais era só 2D e mesmo assim saíram os jogos mais famosos do mundo. Por que não começar por aqui?

To ficando com vontade de desenvolver algum jogo, e já tenho um concept de um que eu quero desenvolver. Mas dessa vez, eu vou investir bastante em GameDesign e documentação. Vou criar concepts e em breve posto aqui mais detalhes sobre ele.

GameSpaceLib – Que tal?

Já há um tempo que eu ando procurando uma boa biblioteca para programação de jogos 2D em C++ com renderização por hardware. Uso Allegro há um bom tempo, e sou fã incondicional pela biblioteca. Mas há momentos, que fazer algo nela, fica realmente chato (e pesado! hehe). Ela só renderiza por software (ok, tem até renderizadores por hardware, mas não vale a pena…).

Andei pesquisando por aí bibliotecas ports de DirectX e/ou OpenGL (dando mais valor à segunda, por ser multiplataforma), achei várias delas, inclusive postei aqui no blog sobre uma delas. Mas a preguiça nem deixou eu testar nenhuma! hehe

Claro, também já tinha visto a GameSpaceLib no fórum da UniDev, mas como eu disse, a preguiça realmente me pegava. Aí então vi o contest da GameSpaceLib. Eu já adoro contests, ainda mais com a possibilidade de ganhar algum prêmio (ótimos livros), e o melhor de tudo, aprender a usar uma biblioteca, porque em contests, a preguiça diminui um pouco! Aí eu entrei pro ‘jogo’!

Dessa vez, quem me pegou mesmo foi o tempo. Tive que fazer tudo nos últimos dias, mas sem problemas, pelo menos terminei o (uma demo jogável) jogo.

GameSpaceLib

Bom, mas e aí? Então, vou falar um pouco sobre a biblioteca…

Primeiramente, gostaria de falar que é uma biblioteca que está em constante atualização, foi criada e é mantida pelo André Santee, que a maioria de vocês da área de GameDev do Brasil já deve ter ouvido falar. Inclusive, vou aproveitar e dizer que hoje mesmo saiu uma nota no site dizendo que a versão 1.5.2 está pra sair esse mês, acesse o site e veja um vídeo de um efeito implementado nela!

Ela é muito fácil de usar, pois ela cria toda a parte gráfica, deixando a parte mais fácil e gostosa com você, que é criar. Apesar de ser fácil, e ser criada em cima do DirectX (e do OpenGL, em breve), a única limitação é a sua criatividade. Por usar DirectX/OpenGL, é possível criar efeitos gráficos de alta qualidade com o uso de Shaders. Quem é que não gosta de um jogo 2D com vários efeitos? Na minha opnião, é melhor que um 3D!

Claro que ela não tem somente parte gráfica. Ela incorpora a biblioteca Audiere para toda a parte sonora. Perfeito para usar com OGG! Também tem sistema de Input e rotinas para lidar com o tempo, que são SIMPLES demais e muito eficientes.

Tá, mas é tudo 1000 maravilhas? Sinceramente, eu só desenvolvi um projeto com ela, não tive muitas experiências, porém todas elas foram muito boas. Sem contar que a documentação é ótima.

Quanto ao meu jogo do contest, eu pretendo dar uma incrementada nele. Aproveitar para aprender mais sobre a Lib, e então criar um projeto que eu estou pensando há um tempo. É um projetinho até que grande (perto dos que eu faço! haha), e acho que ela será perfeita para ele. Em breve, eu volto a falar deste projeto, vai ser interessante.

Ahh, e você, está esperandoo que? Vai no site, veja os tutoriais (por enquanto ainda são poucos, mas assim que puder, vou fazer algum também), exemplos e baixe a biblioteca. Boa sorte.

Acham que eu esqueci do Blog?

Pois é, realmente faz tempo que eu não atualizo o blog. Sabe como é, né, trabalho, universidade, trabalhos da universidade, banda, sair com amigos, nossa, isso tá matando meu tempo! hehe

Ultimamente só me sobra tempo de postar (às vezes) no Twitter (@CrociDB podem me seguir, não vou floodar sua caixa de entrada).

Sábado vou num evento sobre Ruby On Rails, pode deixar que depois eu dou uma passada aqui para contar como foi.

Ahh… e vou atualizar mais isso aqui, mais de um mês sem postar não dá não! hehe

Músicas de Jogos Remixadas

Você conhece o OverClocked ReMix? É um site com vários remixes de jogos de video-game enviados por usuários!

Muito bom. Eu descobri quando procurava a música do Guile do Street Fighter 2, uma das melhores músicas de games que eu conheço.

Lixo no Lixo

Eu participei do contest da GameSpaceLib, que é uma lib de programação de Jogos em C++ feita pelo André Santee (ele mesmo, o escritor do livro Programação de Jogos com C++ e DirectX). Esse contest começou dia 10 de Janeiro e terminou na última sexta-feira, dia 20 de fevereiro.

Eu comecei a desenvolver o jogo uma semana antes da entrega do projeto, por falta de tempo, e infelizmente também não pude implementar tudo o que eu queria. Mas ainda vou mexer nele para colocar mais features. Pretendo colocar ele para participar no Contest da PDJ também.

Lixo no Lixo

[Download]
[Fonte]

Controles: Espaço para selecionar a força e o ângulo e atirar a bolinha.

Eu desenvolvi esse tema porque é um problema real. Pessoas jogam lixo nas ruas, trilhos de trem, ou em qualquer outro lugar que não é adequado o tempo todo. O lixo por si só já nos traz muitos problemas, se é jogado em lugares inadequados, os problemas são ainda maiores. Enchentes e rios poluídos são um dos maiores problemas.

Nós não precisamos sair na rua pegando lixo do chão e jogando no lixo, basta que façamos a nossa parte, que é jogar o lixo na lata de lixo. Claro, temos que ver que em muitos lugares não há lugares para jogarmos o lixo, isso é fato, e é uma coisa deveria ser vista por governantes, porém, não custa nada guardar para jogarmos no lixo, esteja ele onde estiver.

Apesar do jogo estar fraquinho, espero que valha a intenção! 🙂