Category Archives: Outros

jRuby e Swing

Há algum tempo que eu estou querendo aprender a linguagem Ruby. Segundo dizem as artes do aprendizado, deve-se sempre partir de algo conhecido para algo não conhecido que queira-se aprender. Então resolvi começar com jRuby, implementação do Ruby em Java, que roda na JVM. Usando Swing, a SDK padrão do Java para interfaces gráficas.

Criei esse joguinho da velha (jrVeia) bem simples, que na verdade eu nem terminei ainda. Na verdade não mexi mais nele depois que eu comecei. Falta apenas a verificação do tabuleiro. Pretendo também, se der, implementar uma camada de rede, para poder jogar via direct ip (igual eu fiz com o VeiaOnline).

Mais detalhes: jrVeia.

Como já disse, comecei com esse joguinho só pra me familiarizar com a sintaxe do Ruby, uma vez que já conheço um pouco de Swing. Na verdade nem sei qual é a real aplicabilidade de linguagens interpretadas a jogos. Vou estudar mais isso, mesmo porque pretendo participar do Indie Bay Competition com Ruby e Gosu. Pode deixar que logo logo eu compartilho aqui o que eu aprendi.

Só para ilustrar o tópico, vou mostrar um código bem simples pra criar uma janela com jRuby e Swing:

# Diz que vamos usar as classes do Java
require 'java'

#
# Podemos usar puro Ruby na JVM, ou interagir completamente com classes em Java! \o/
#

# A classe principal, que herda da classe JFrame, exatamente como fazemos no Java...
class Window < javax.swing.JFrame

   # Nosso construtor
   def initialize

      # Super Man - Nenhuma novidade aqui ^^
      super("Hello World")

      # Aqui muda, você pode chamar os métodos com o mesmo nome em java
      # setSize, ou então chamar pelo padrão Ruby, set_size, que ele
      # irá executar o método do mesmo jeito!
      set_size(300, 300)
      set_visible(true)
      set_default_close_operation(javax.swing.JFrame::EXIT_ON_CLOSE)

      # Vamos adicionar um textinho na janela
      add(javax.swing.JLabel.new("Hello World - by CrociDB"))
   end
end

# Aqui está o nosso &quot;método main&quot;
janela = Window.new

Só para vocês terem uma idéia da facilidade. Não esqueçam de dar uma olhadinha no código do jrVeia. E aguardem, logo sai um post açucarado sobre Gosu e Ruby. Até lá. :)

Google Buzz

Por que eu gosto de jogos em Flash?

Muitos não entendem porque eu gosto tanto de Flash, mas vou tentar mostrar aqui.

flash Jogos em flash dominam o mercado de jogos casuais na internet, primeiro porque segundo a Adobe, cerca de 99% dos computadores com acesso à internet possuem o Flash Player instalado. Depois porque é relativamente fácil criar um jogo com o Adobe Flash. O editor é muito bom, e a integração de desenhos (vetoriais) e animações com código é muito fácil. Ah, nem falo do ActionScript 3… linguagem muito parecida com Java e bem poderosa.

gamebig_farmvilleE há outros pontos importantes a favor do crescimento de jogos casuais em flash apresentados nesse artigo: 5 Reasons why Flash will take over Gaming, que são: o fato da Adobe e a nVidia estarem trabalhando em num flash player com aceleração por hardware, o crescimento de jogos em redes sociais como Facebook ou MySpace, o Adobe Air, que porta sua aplicação Web em flash para Desktop, a ascensão dos netbooks e o Google Chrome OS, o flash player em Smartphones e eu ainda poderia citar a recente notícia de que o Flash CS5 irá exportar diretamente para o iPhone. (Leitura recomendada: Thoughts about flash on the iPhone e Flash on the iPhone)

Mas com todas essas vantagens, por que não entendem o motivo de eu gostar de jogos em Flash? Bom, basicamente porque o Adobe Flash não é muito barato. Mas, felizmente, há muitas alternativas ao Adobe Flash (editor).

gol_total_flex_baixa O Flex, tecnologia baseada em Flash da Adobe para RIA (Rich Internet Application) é composta por um editor pago (Flex Builder), que você, estudante, pode baixá-la gratuitamente aqui, e por um SDK OpenSource. Essa SDK tem um compilador ActionScript e MXML para SWF. Você pode acessar o site do Flex SDK, baixar e começar a criar jogos gratuitamente. Se você já programa jogos em linguagens como C/C++ ou Java, por exemplo, vai gostar muito, pois o modelo de desenvolvimento aqui fica idêntico. Aqui segue alguns tutoriais interessantes sobre desenvolvimento de games com o Flex SDK:

ActionscriptIcon Também há compiladores de ActionScript OpenSource que não são da Adobe, como o MTASC e o haXe. O MTASC é um compilador de ActionScript 2. Já o haXe é uma linguagem muito parecida com ActionScript 3 que lhe dá uma gama muito grande de possibilidades, entre elas, compilar para SWF.

Para evitar que você fique aí programando em ActionScript no Notepad++ ou no VIM, existe o FlashDevelop, uma IDE para ActionScript muito bacana e OpenSource. Infelizmente essa IDE é feita em .NET, o que significa que só funciona no Windows, mas mesmo assim, há alguns plugins para Eclipse que suportam AS.

Ainda há muitas outras ferramentas e material interessantes no OSFlash, um site dedicado à atividade OpenSource para a Plataforma Flash.

Eu estou preparando um artigo aqui pro blog há algum tempo falando sobre monetização de jogos casuais, e como o Flash é uma ótima plataforma para jogos casuais, que vem crescendo muito, é uma ótima opção para desenvolvedores Indies e Hobbistas faturarem um troco para um cafezinho. Espero terminá-lo em breve. Quem sabe assim eu convenço aqueles que ainda não estão convencidos após este post…

Google Buzz

The Face Transformer!

Lendo aqui meus Feeds, achei este site no blog do Rodrigo Flausino:

http://morph.cs.st-andrews.ac.uk//Transformer/index.html

Você envia uma foto sua e ele transforma em vários tipos, como Negro, Macaco, Manga, Bebês, mas o que mais me impressionou foi essa aqui, do Velho:
Eu Velho

E essa aqui também (Modigliani):
Eu no estilo Modigliani!

Muito interessante isso! Gostei! xD

Vale a pena perder alguns minutos modificando seu rosto! xD

Falow!

Google Buzz