Convertendo tutoriais antigos - Parte 02 - Artigo sobre Blender

Ano passado, eu converti para a interface do blog um artigo de inteligência artificial que eu tinha feito na faculdade. Hoje decidi fazer o mesmo, mas com um artigo que tinha feito há mais de 2 anos sobre o Blender. É claro que eu já tinha começado bem antes, mas ele acabou ficando no draft do blog por mais de 3 meses, até que tomei coragem e aproveitei o feriado para refazer o mesmo, checando imagens e frases.

Então decidi mandar direto pro GamedevBR, e isso me custou a manhã inteira e parte da tarde, por causa do tamanho do artigo e de editar/upar imagens. Sorte que o Gimp é meu amigo e me ajuda nessas horas! Então se quiserem ver:

Introdução ao Blender

Revendo este tutorial, tive uma vontade imensa de voltar a estudar o Blender e o farei futuramente. Mas preciso resolver um monte de coisas que estão pendentes, e isso vai demorar.

Em 1 semana, o artigo antigo será apagado, deixando um redirecionador para o texto novo.



Meu TCC sobre jogos eletrônicos

Depois de alguns dias e algumas horas, já está no ar o meu TCC (trabalho de conclusão de curso) que fiz no curso de Sistemas de Informação pela FACECA (Faculdade Cenecista de Varginha):

Os Jogos Eletrônicos e seus Impactos na Sociedade

Algumas considerações:

  1. O texto não foi revisado. Alterei poucas informações dele.
  2. Ele foi entregue no final de 2006. Então está desatualizado. Muita coisa rolou desde aquela época.

Decidi correr e colocar isso no ar para mostrar pra qualquer um desinformado que videogame não é só violência. Videogame também tem um lado importante, como a maioria dos leitores deste blog já sabe de antemão. Quero ver também se eu refaço este trabalho, deixando-o mais atualizado e quem sabe eu posto aqui em partes, numa série de posts. Mas por enquanto, tenho outras coisas pra fazer no momento.

Instalando e configurando temas no Blender

O Blender é o melhor modelador opensource existente, e você pode trocar a sua interface, colocando outros temas diferentes do tema default do software. Primeiramente, você pode baixar um tema novo no Theme Repository, com vários temas à disposição e com imagens ilustrativas de cada tema.
A instalação é bem simples: com o Blender aberto (estou usando a versão 2.45), abra o Text Editor, como mostrado nas Figuras 01 e 02.

Figura 01 - Abrindo o menu com algumas opções

Figura 02 - Interface do Text Editor, sem nenhum texto

Vá agora em FileàOpen, ou aperte Alt+O, e escolha o arquivo que você baixou (é um script Python). Escolha o arquivo e aperte Open Text File (Figura 03).

Figura 03 - Abrindo o arquivo com o tema.

Com o arquivo aberto, execute-o na opção Execute Script (Figura 04)

Figura 04 - Executando um script Python no Blender

Por fim, o Blender ficará com uma cara bem diferente (Figura 05):

Figura 05 - Blender com o tema “Oceanic Theme”

Por fim, Vá em File - Save Default Settings para salvar o tema na interface. Agora, caso queira ficar alternando os temas, no mesmo menu mostrado na Figura 01, escolha a opção User Preferences - Themes e escolha o tema que você preferir.

Com isso, é possível você trocar o tema do Blender, caso você enjoe da interface padrão. Caso tenha outras dúvidas, deixe um comentário que atenderei na medida do possível.

[Via Blendernation]



O jabá na indústria de games e o problema das análises

Recentemente vi um post no Assopre a Fita que me chamou a atenção:

Suborno da Microsoft?

Basicamente o post é uma quase-cópia de uma notícia do OuterSpace, onde um jornalista recebeu, da Microsoft, um kit com produtos do Halo 3 avaliado em 800 dólares. Isso cai no problema do jabá, algo comum no meio musical (onde as gravadoras enviam mimos aos jornalistas para falarem bem das bandas).

É claro que o jabá nos games sempre existiu, mas tudo depende. Se acontecer de eu receber um kit desses, eu ficaria feliz, já que eu não precisaria desembolsar uma grana pelo game (mas não deveria exagerar!). Mas não quer dizer que eu iria falar bem do jogo, caso ele seja um jogo ruim. Se eu vou fazer uma análise, será uma análise e pronto!

Isso cai no caso das resenhas/posts patrocinadas que a gente anda vendo nos blogs fora da esfera gamer. Se alguma empresa me contactar e querer enviar prospectos de um game qualquer (além do próprio game, claro!) eu vou jogar o game e avaliar, mas vou avisar antes de que se eu não gostar, eu vou xingar o jogo ou não vou publicar a resenha, já que eu não vou dizer que certo game é uma maravilha, mas todos os outros jogadores acharam o game medíocre. É a minha credibilidade que está em jogo (ela sempre está em jogo em cada post, mas isso é assunto para outro post). E também que ver também se eu vou ter tempo de avaliar o game.

Mas no caso de Halo 3 é difícil, já que praticamente todos os sites sérios de games do mundo deram notas altas para o game. Tudo bem que eu posso realmente não gostar do jogo (se eu um dia jogar o mesmo, o que é bem difícil atualmente), e isso é a minha opinião, mas eu posso mudar de idéia.

A importância do Game Design

Cheguei a comentar anteontem sobre dicas de como que você poderia gerenciar um projeto. Hoje vou apenas citar a importância do Game Design, mas não vou mostrar como que se cria um. Só quero que saiba que um game design é o planejamento completo de um jogo.

Mas porquê falar da importância do mesmo. Primeiro que parece que o game design é um assunto que a maior parte dos desenvolvedores deixa de lado. Porquê? Simples: criar um game design pode ser algo maçante, já que você vai estar apenas planejando o seu jogo, sem botar a mão na massa. Você não vai programar, ou mesmo modelar um personagem. E a maior parte das pessoas que estudam desenvolvimento de jogos (principalmente os programadores) tentam ir direto pros finalmentes, tentando programar um jogo (algumas vezes na unha).

OK, jogos altamente simples, como um Tetris da vida não precisam de um game design. Ou mesmo uma versão do Super Mario World numa ferramenta de criação de jogos 2D (como Allegro e SDL), já que neste caso o programador está estudando a API.

Mas quando você tem uma idéia nova de um game, a situação muda. E é esse o motivo deste post. Como falei acima, o game design é o planejamento de um game. Segundo a maior parte dos especialistas em criação de games, o chefe da equipe criará um documento de design, que é um documento com todos os detalhes sobre o game. Todos mesmo! Desde detalhes como a jogabilidade, roteiro, detalhes dos personagens, concepts-arts (arte conceitual. Como por exemplo um esboço de um cenário ou personagem. Como exemplo, podemos citar o livro de arte digital de Bioshock) de cenários, e outros.

Os desenvolvedores de jogos acham esta atividade maçante já que ela é uma etapa de análise. O profissional terá de sentar na frente de um caderno (ou no Word/Google Docs, se preferir) e ir desenvolvendo seu game teoricamente. Em outras palavras, você vai apenas planejar o seu game, digitando/escrevendo os detalhes que mostrei no parágrafo acima. E esta etapa pode demorar, já que vai depender da complexidade do jogo.

Games simples em Flash (como os criados pela CubaGames, por exemplo) não demandam muito tempo do game design. Já se você quiser criar um game estilo Metal Gear Solid (se você for corajoso o suficiente para isto) você pode demorar meses para criar o game design. Para o CSIB estou chutando pelo menos 1 ano para ter o game design em mãos e pronto. E olha que eu nem comecei direito.

Aí que tá o problema do game design. Se você for uma pessoa apressada, ficar meses planejando um game pode te fazer desistir. E se isso acontecer, um dos objetivos do game design foram alcançados!

Você tá ficando louco, Flausino? Quer dizer que o game design servirá para que eu desista do meu super-projeto de game?

Não! Mas um dos objetivos é analisar a viabilidade do seu game. Servirá para que você observe o seguinte: será que valerá a pena criar este jogo? Será que ele vai vender? Se você desistir do seu projeto no game design, vai saber que o projeto seria inviável do ponto de vista comercial e/ou pessoal.

Fora que se você ver que terá de voltar algum ponto e querer modificar alguma coisa (como colocar um detalhe a mais no enredo), se você estiver apenas no game design, poderá voltar e modificar pouca coisa. Já se você já tiver criado os personagens e/ou cenários (e ter criado até os diálogos dos personagens), se você tentar modificar, você corre o risco de criar, sem querer, erros de programação ou mesmo você ter de refazer tudo, até o ponto onde você parou antes de modificar o que estava pronto. Já imaginou isso? E se alguém da sua equipe conseguiu criar uma animação fodástica, mas você viu que poderia deixar ela ainda melhor (com a inserção de um novo ítem), já imaginou ter de refazer? Ter de renderizar e editar tudo de novo? Um mês de render podem ir pro ralo se você não planejou direito.

Se você tivesse planejado tudo direitinho, isso com certeza seria evitado.

Mas o mais importante do game design é que quando ele estiver pronto, você poderá dividir os dados gerados com os outros membros da sua equipe (para eles começarem a trabalhar) e o processo de desenvolvimento do jogo terá fluência. Ou você, profissional, gostaria de esperar 2 semanas até o chefe da equipe pensar no que fazer? Isso causaria um desânimo coletivo e o projeto caminharia para a morte iminente…

O game design serve para te ajudar. Se você ralar pra tentar projetar um cenário, melhor sofrer agora, na parte de planejamento, do que depois, quando você ver que certo trecho do cenário foi mal-construído e isso gerar críticas por outras pessoas.

Espero que com isso você olhe para o game design de maneira diferente. Apesar de ser ruim ficar projetando o seu jogo (já que todo mundo quer sair desenvolvendo e vendo as coisas funcionarem na tela), essa etapa pode ser essencial para que um game seja terminado. Se você for começar um game design, desejo boa sorte a você e aos seus colegas de trabalho!

Dicas para quem quer montar uma equipe de criação de games

Vira e mexe alguém me envia um e-mail ou mesmo me adiciona no MSN para me convidar a participar dos seus projetos pessoais. O problema é que, na maior parte das vezes, o usuário é vago e não fala muita coisa sobre o projeto. Bom, isso pode espantar outros interessados. Ou mesmo ele tenha conseguido juntar uma equipe, mas ainda não sabe como motivar os outros membros ou mesmo o que ele pode fazer.

Com isso, decidi criar um pequeno manual com dicas para que o usuário possa seguí-las e ter mais chances de sucesso durante o desenvolvimento de um jogo.

Antes, o usuário deverá analisar sobre o comportamento que as outras pessoas podem ter. Deverá analisar que:

  1. Qualquer pessoal tem vida social, Talvez a maioria ache que um programador só fica programando direto. Ledo engano: ele pode ter escola, faculdade, namorada e/ou mesmo um emprego para que ele possa pagar as contas pessoais ou mesmo as contas da família. Ele pode ainda ter um filho (ou mais de um). Todos estes fatores fazem com que a pessoa não tenha tanto tempo quanto gostaria, e com isso pode não ajudar tanto com o seu projeto.
  2. Cada pessoa sabe melhor um determinado assunto. Alguns são bons programadores. Outros adoram modelagem ou mesmo desenhar. Alguns podem ser programadores, mas tiram parte do seu tempo para tocar um instrumento musical, e com isso podem ter potencial para a música, e saber criar composições. É difícil encontrar alguém que saiba bem duas ou mais áreas do conhecimento de desenvolvimento de jogos.
  3. Uma pessoa pode desistir de uma hora para outra e sair da sua equipe. Esteja preparado para isto e tenha um plano B na manga, para prevenir o que pode acontecer.

Depois dessas dicas, vamos às dicas de como que um projeto poderia ser melhor conduzido:

  1. Tenha um Game Design pronto. Um game design é o planejamento completo do jogo. Com isso, o andamento do projeto terá maior fluência e terá mais rapidez.
  2. Poste o máximo de informações sobre o game. Poste alguns detalhes do enredo, como pode ser a jogabilidade, se um game é 2D ou mesmo um projeto 3D. Será medieval? Futurista? Será um adventure? Um game de tiro em primeira pessoa? Poste o máximo de informações que puder.
  3. Saiba postar e use um corretor ortográfico. Posts sérios que podem ter erros de português podem espantar os usuários que poderiam se interessar. Se um texto for bem escrito, poderá ter mais pessoas interessadas.
  4. Como falei acima, cada um tem uma habilidade específica. Divida a sua equipe onde cada um terá uma tarefa específica e delegue tarefas. Como falei acima, um usuário pode não ter tanto tempo para o projeto. Defina prazos realistas para os outros entregarem as suas partes.
  5. Seja realista com o seu projeto. Um game do nível de um Metal Gear Solid pode se tornar um projeto inviável e difícil de terminar. Comece com games simples e que podem ser divertidos.
  6. Tenha um cronograma de atividades e tente obedecer o mesmo. Com isso você conseguirá terminar o seu projeto no prazo. Mesmo que o desenvolvimento atrase um pouco, você saberá o que fazer em seguida.
  7. Se o seu projeto for bem estruturado e interessante, pode acabar tendo mais interessados do que o número de pessoas da sua equipe. Isso tem duas vantagens: o seu game poderia ser concluído mais rápido, mas gerenciar muitas pessoas (mesmo que você divida as pessoas em várias equipes) pode ser complicado e você pode não dar conta.
  8. Ainda se o seu projeto for interessante, muitos usuários sem conhecimento podem querer entrar na equipe. Isso também tem um lado bom e um ruim: se o usuário não conhece uma linguagem de programação ou um software 3D, ele pode procurar aprender e com isso ele adquirir conhecimentos durante o projeto. Mas se o game for sério, isso pode atrasar o cronograma do projeto. Então avalie os possíveis interessados. Eles tem portfólio? Se tem, as imagens são realmente dele? Ele já fez algum game antes? Já trabalhou em algum projeto ou mesmo numa empresa? Apesar de que muitos usuários poderem mentir para você, se você já o conhece há algum tempo, a possibilidade dele mentir é menor, já que a credibilidade dele também está em jogo.
  9. Tenha um meio de comunicação eficiente. Use MSN e/ou monte um fórum de discussão privado onde você e os outros membros possam postar suas opiniões.
  10. Saiba escutar os outros membros. Eles podem ter idéias úteis que podem ajudar no seu projeto ou mesmo melhorar o mesmo.
  11. Saiba conversar com os outros membros. Todos tem personalidades diferentes e podem reagir de maneiras diferentes a certas situações ou mesmo frases que você disser no fórum ou numa reunião no MSN. Se você trata um membro com falta de educação (mesmo sem querer), ele pode ficar chateado e querer sair do projeto.
  12. Se sua equipe puder se encontrar fisicamente (se moram na mesma cidade, por exemplo), faça isso sempre! Conversar pessoalmente é melhor do que via messenger.
  13. Defina, antes de mais nada, quais as vantagens que as pessoas podem ter ao entrar na sua equipe. O projeto será comercial? Tem potencial para ser? Os membros terão reconhecimento pelo seu trabalho? Isso é importante, já que um game bem feito pode ser usado como portfólio e com isso facilitar a ingressão do profissional numa empresa de desenvolvimento de jogos.
  14. Seja honesto. Isso é o mais importante, já que com isso você pode ter credibilidade. E se você e sua equipe conseguirem entregar um game (mesmo sendo gratuito), você já vai ter formado um círculo de amizades na internet. Os outros membros podem te ajudar no futuro e quem sabe vocês montam uma empresa séria e conseguem viver de criar games!
  15. Opcional: Sempre poste informações do andamento do game em fóruns. Ou mesmo tenha um blog de desenvolvimento. Uma pessoa de fora do projeto pode ter uma idéia ou mesmo uma opinião útil que pode ser utilizada em seu game. Até uma crítica bem construtiva pode ser essencial no andamento do projeto.
  16. Saiba aceitar críticas quando seu game tiver sido lançado ou mesmo quando você tiver lançado um demo nos sites de games. Cada pessoa vai avaliar o seu game de maneira diferente, e isso pode ser útil para que você melhore o seu projeto ou faça projetos melhores no futuro.
  17. Saiba também filtrar as críticas que você vai receber. Muitos usuários nem avaliam o seu game e já postam que o mesmo é uma porcaria. Saiba conversar e também ignore comentários destrutivos que não vão ajudar a sua equipe como um todo.
  18. Saiba criticar a si mesmo e aos outros membros da equipe. Também reconheça o trabalho dos outros membros e incentive-os a melhorar. Cada pessoa consegue criar coisas fantásticas com o conhecimento que elas tem. Saiba usar isso a ser favor e a favor deles. Todos acabam ganhando com isso: o chefe da equipe, que terá algo de qualidade, e o profissional, que verá que estão gostando do seu trabalho. Mas ele deverá ser incentivado a melhorar, já que um artista pode se estagnar e isso pode ser prejudicial a ele e ao projeto como um todo. Em qualquer projeto, o aprendizado é contínuo.
  19. Poste, se puder, dicas ou mesmo o processo de desenvolvimento do game depois. Isso poderá ajudar outros usuários de fora que queiram criar um game. Um tutorial sobre uma técnica usada pode ser útil para outras pessoas.
  20. Tenha um site da sua equipe ou mesmo do game, com tudo relacionado ao game, como screenshots, vídeos, demos. Pode parecer óbvio, mas a maioria posta o seu game (com link para download) num tópico do fórum e nem posta imagens e informações sobre o jogo para que os jogadores possam fazer uma pré-análise do mesmo antes de baixar.
  21. Defina também a idade mínima de um game. Apesar dele ser lançado na internet (e qualquer um pode baixar sem que os pais saibam), é interessante definir se o game possui um certo grau de violência ou não. Pode ser interessante afirmar isso. Alguns pais também procuram games para baixar e instalar nas máquinas dos seus filhos, e se eles souberem de antemão o conteúdo básico do jogo, pode ser útil para eles avaliarem o seu game.
  22. Se o jogo for comercial, defina um preço acessível. Uma das maiores reclamações dos jogadores são os preços elevados dos games. Mas também trabalhe dentro da lei (com relação aos impostos e classificação etária do seu jogo).
  23. Chame outros usuários para testarem seu game. Uma pessoa de fora pode achar erros que você dificilmente acharia se estivesse testando. Também dê reconhecimento ao trabalho deles. Se possível, poste nos créditos os nomes dos testadores (se eles permitirem, claro), já que mostra que você foi cordial e eles podem te ajudar em situações futuras.

Acredito que com estas dicas você poderá começar o seu game e gerenciar o projeto de forma eficiente. Mas recomendo planejar primeiro e criar um game design do jogo. Apesar de ser algo maçante e difícil, pode ser útil para avaliar a viabilidade de um projeto e saber se ele é possível de ser feito ou não.

Boa sorte!

Convertendo tutoriais antigos - Parte 01 - Artigo sobre IA

De vez em quando é interessante a gente procurar artigos e monografias pela internet para ler algo relacionado à games ou mesmo gamedev. Antigamente, era difícil alguém querer tentar criar uma monografia ou mesmo um artigo relacionado, já que muitos professores torciam o nariz se os alunos tentassem aliar um hobby com um trabalho acadêmico.

Eu mesmo fiz um artigo como trabalho de conclusão de curso sobre as vantagens e desvantagens dos jogos eletrônicos. Ainda vou refazer este artigo e colocar aqui no blog.

Outro artigo foi um trabalho na disciplina de Inteligência Artificial, que consegui fazer voltado para jogos eletrônicos:

Estado da Arte da Inteligência Artificial para jogos eletrônicos

Bom, eu fui bem criticado neste artigo por um usuário (e moderador) da Unidev (o artigo estava hospedado lá), mas preferi deixar o artigo na íntegra e sem modificações, já que ele pode ajudar os outros usuários. É um artigo bem introdutório, para que o usuário possa conhecer um pouco a área de IA e escolher o tipo de lógica que ele pode utilizar em seu projeto.

Fora que naquela época eu odiava escrever textos e nem pensava em ter um blog (e por isso a formatação e a escrita não estão tão boas). Hoje a situação é bem diferente :P

Ano que vem vou refazer este artigo e procurar mais fontes e informações sobre isso, já que o desenvolvimento do CSIB estará em pleno andamento. Com isso também surgirão muitos posts sobre gamedev, já que um dos motivos de ter aberto este site foi para ter na internet um repositório de artigos e tutoriais que eu possa fazer para os outros usuários.

O próximo tutorial da lista que irei converter será o Introdução ao Blender (e fracionar o mesmo em várias páginas). Só não fiz a conversão antes pois estava esperando sair a versão 2.45 do software. Mas como ela ainda não saiu, vou fazer esta conversão de uma vez, mesmo na versão 2.44. Eu cansei de esperar o software!

Mas, diferente deste artigo de IA, eu vou refazer aquele tutorial de Blender, colocando mais informações, e formatando melhor o texto.

Introdução ao Java

Muita gente me pergunta dicas e truques para o Java, e como tenho um conhecimento maior desta linguagem, sempre indico sites e livros. Consigo fazer, em Java, um sistema com Hibernate e JSF, gosto de Swing e de Java 3D. Também penso em estudar jMonkeyEngine… acredito que até aqui você não deve ter entendido (ou nem conhece) nenhuma destas siglas, mas não se desespere. Aos poucos você vai aprendendo, isso se você se interessar mesmo em estudar o tal do Java…

Mas o que é o Java? O Java é uma linguagem de programação altamente poderosa onde você poderá criar desde programas simples até páginas de internet e games. Uma das maiores vantagens do Java é que o mesmo é multi-plataforma (desde que você saiba desenvolver, já que se você tentar acessar um recurso nativo do sistema operacional, seu sistema poderá deixar de ser multi e você talvez deverá recompilar o software…) e totalmente gratuito, diferente de outras linguagens que a gente acaba vendo por aí.

Tá, mas onde que eu encontro informações desta linguagem? A seguir vou postar indicações de livros (não postarei material pirata aqui), indicações de blogs e sites para você começar. É claro que eu não vou postar neste post tutoriais avançados da linguagem, já que este post é focado para usuários iniciantes. Também vou, de vez em quando, postar tutoriais diversos sobre a linguagem.

Para programar nesta linguagem, você deverá instalar o JDK. Então acesse o site oficial e baixe o JDK mais atual (até o fechamento deste post é o JDK 6 Update 2). Para instalar, siga o tutorial Instalando o J2SE 5.0 JDK no Windows 2000/XP ou Instalando e configurando o JDK no Linux.

Tutoriais introdutórios

Livros

Desses três livros, recomendo o primeiro. Apesar de ter muito texto, a série de livros do Deitel é muito boa, aborda muita coisa da linguagem e explica direitinho cada pedaço de um programa. Agora, caso você queira tirar certificação, você pode comprar o livro SCJP: Certificação Sun para Programador Java 5 - Guia de Estudo da Kathy Sierra e estudar pelo livro ou pelo curso FJ-19 : Preparatório para Certificação Java da Caelum. Mas caso queira estudar pelo livro, você deverá ter alguma noção da linguagem.

Sites

Destes sites, acabo acessando mais o primeiro, que tem um fórum para os usuários tirarem dúvidas, uma seção excelente de artigos e os usuários sempre postam notícias atualizadas da área.

Blogs

Três blogs excelentes que sempre tem tutoriais e dicas sobre a linguagem (mas o Fragmental, do Phillip Calçado, é mais voltado à análise de projetos). Já no site da Caelum tem duas apostilas excelentes para quem quer começar (que são apostilas dos cursos da empresa):

IDEs

No começo, é recomendável que o usuário aprenda a compilar seus programas no bloco de notas, para depois ele escolher um ambiente de desenvolvimento, também chamada de IDE. As principais são:

Recomendo o Eclipse, já que é uma ferramenta excelente, é gratuito e tem o melhor editor de códigos-fonte que eu já vi. Até hoje nenhuma IDE (isso mesmo: nenhuma!) conseguiu superar o Eclipse em edição de código. O Netbeans está sendo muito utilizado, mas acho ele um pouco lento. Já o IntelliJ é pago, e não cheguei a usar, mas as críticas que eu vejo na internet são sempre muito positivas.

Revistas nacionais

A primeira é bimestral e a segunda é mensal. As duas sempre tem tutoriais e dicas para a linguagem. Algumas vezes a Java Magazine traz reportagens sobre eventos internacionais sobre o Java.

Tecnologias principais do Java

Atualmente, o Java se divide em várias tecnologias diferentes, como o J2SE, J2EE e J2ME. Para mais informações:

J2SE, J2EE e J2ME: uma breve explicação

Você poderá escolher uma das vertentes e focar seus estudos e softwares nelas. Se você pensa em ser um profissional Java, recomendo conhecer o J2EE (mas vai demorar um pouco para você aprender o J2EE, por ser mais complexo e difícil) e talvez o J2ME, mas vai depender do seu foco, ser você pena em desenvolver sistemas comerciais simples (J2SE usando Swing, ou mesmo usando JSP (páginas de internet) acessando um servidor local), aplicações complexas (J2EE) ou mesmo jogos para celular (J2ME).

Caso tenha outras dúvidas (ou queira complementar este post ou mesmo me corrigir), poste nos comentários que eu tentarei ajudar no que for possível (apesar de que eu não sei muito sobre o Java, mas gosto da linguagem e continuo estudando a mesma com afinco!).

O hype e o problema das expectativas exageradas

O que é a palavra hype? Como definir que um assunto é hype? Algum tempo atrás postei um texto sobre Final Fantasy XIII, onde coloquei a definição de hype, por Sérgio Rodrigues (do finado No Mínimo):

Hype é badalação excessiva, propaganda injustificada; histeria, zunzum ou falatório promovido com intenções comerciais em torno de um produto, modismo ou pessoa

Na minha opinião, hype é modinha. Hoje, emo é hype. O iPhone é hype. O Lula é hype (ok…EMO e Lula não poderiam estar como hype, mas a gente não fala deles o tempo todo? Pelo menos não fico falando sobre emo aqui no blog!). O hype é difícil de definir, por ser uma palavra estrangeira (não me perguntem nada relacionado!), e a minha definição de hype é: Assunto atual que as pessoas gostam de comentar e discutir, muitas vezes.

Vamos agora falar de games! Como definir se um jogo é hype? Porquê um game é hype? Como identificar um game hype? porquê o Flausino vive postando que o jogo x é hype? Quantas vezes a palavra hype já foi repetida até aqui?

Muitos games atualmente são hype pois as produtoras sempre divulgam informações sobre os games, o que gera expectativas dos jogadores, discussões, etc. Isso se acentua quando o game está próximo ao lançamento. Outras vezes as informações são tão impressionantes que o povo fica impressionado.

É o marketing! Hoje as produtoras apelam pro marketing, para gerar discussões em fóruns de discussão, sites e blogs. E como os jogadores sempre estão ávidos por novas informações de um game, qualquer imagem serve de discussão. Qualquer informação também serve para iniciar discussões. E também os jogadores vivem fazendo comparações. Cada um tem a sua opinião, claro. Não sou eu que vou mudá-la!

Então as produtoras conseguem gerar marketing e espectativas dos jogadores. Algumas vezes o marketing vem naturalmente, e outros as produtoras tem que agir, enviando imagens para revistas impressas, chamando críticos de games para jogarem algum game, divulgam trailers em feiras como a E3…há muitos métodos. Mas algumas vezes o marketing que vem gratuitamente e não é tão bom para as produtoras.

Por exemplo: temos o Manhunt 2. Você já ouviu falar deste game? Não? Onde você esteve nos últimos meses? Caso esteja um pouco por fora da área de games, vou resumir: o Manhunt 2 é um dos games que geraram mais marketing em 2007. E uma publicidade totalmente gratuita. Mas o que o game tem que foi tão comentado? Simples: ele foi proibido na Inglaterra pelo nível de violência do game e nos EUA a Sony e a Nintendo estão se recusando o lançar o game, que ganhou classificação de 18 anos.

Resultado: todo mundo falou do jogo, e isso pode, por incrível que pareça, turbinar as suas vendas. E a Rockstar, a produtora do game (a mesma do GTA, outro game polêmico) teve de recolher o game e está modificando o mesmo, para conseguir comercializar o jogo.

Outro game altamente comentado é Crysis, um game de tiro para PC. Qualquer informação divulgada nos sites e fóruns geram discussões enormes. E isso vai se intensificar com a aproximação do lançamento do jogo, que está previsto para novembro (isso se a Eletronic Arts, a distribuidora do jogo, não adiar o mesmo).

O maior problema é que a gente espera demais por um jogo, acha que o mesmo será um jogão, mas no final das contas a decepção pode ser grande. Já imaginou se o Crysis for um game ruim? Tudo bem que na véspera do lançamento os sites vão postar notas do jogo, e se o game começar a ter notas medianas ou baixas (todo mundo espera que isto não aconteça, mas tudo pode acontecer nesta área), aí sim os jogadores vão desanimar. Muitos deles estão contando os dias para o lançamento do jogo, e ninguém espera uma decepção quando for jogar aquele game tão esperado (caso ele não leia nenhuma análise postada em sites e blogs).

Por fim, cabe a nós que não coloquemos tantas expectativas num game, já que a gente pode se decepcionar facilmente. E cabe ao jogador analisar o game, mesmo se ele não tiver notas muito altas. Como cada um tem um gosto diferente, vai ter opiniões diferentes. O game que eu mais gosto pode não ser o melhor game por outras pessoas, e vice versa.

E a gente continua sempre de olho nos games e nas notícias. Sempre :D

A influência do clima em jogos eletrônicos

Você, jogador, já parou para pensar no clima? E você, desenvolvedor de games? Já parou para pensar no clima? Este post será para falar de um dos assuntos que a maior parte dos jogadores nem se preocupa com isso: as condições climáticas de um game e as conseqüências que o mesmo pode trazer.

Pergunta: qual foi o último game que você viu chuva? E neve? Apesar da maioria dos games ter momentos que retratam uma determinada condição climática, a mesma não influencia na mecânica de jogo. Antigamente, os games não eram tão complexos tecnicamente, sendo que a simulação de uma condição climática era apenas para mostrar ao jogador uma determinada situação ou mostrar que o mesmo estava numa certa localidade.

Por exemplo: em praticamente todos os RPGs clássicos, onde o jogador passa por diversos locais de um mundo, existem os mesmos tipos de locais da Terra, como um deserto, um local que neva, ou mesmo uma floresta. Ora, se um game está mostrando que está frio, os personagens poderiam aparentar que estão sofrendo com o mesmo. Mas na maior parte das vezes o game não tem esta interação.

Isso entra naquela velha discussão sobre o realismo dos games VS diversão. Para o jogador, pouco importa se está frio ou calor. O que ele quer é continuar com o game até terminar o mesmo! Mas como que ele ficaria se ele soubesse que a sua estratégia teria de ser revista se ele encontrasse uma condição climática desfavorável?

Esse é o ponto que eu quero chegar neste post-artigo. Muitos games não tem este tipo de interação. Já outros games isso é obrigatório, como o Flight Simulator, já que as diferenças entre pousar um avião na chuva e com tempo seco pode ser significativa.

As tecnologias gráficas atuais tem capacidade de simular com realismo um determinado clima, e fazer com que o mesmo influencie, graficamente, um personagem. A Lara Croft em Tomb Raider - Legend saía da água molhada (podem achar a minha afirmação absurda, mas estamos falando da parte técnica dos games. Os games antigos da série não tem este efeito gráfico). Em Metal Gear Solid 2, a chuva no início do game mostra que a água respinga na superfície de um objeto (diferente do primeiro Splinter Cell, onde a água atravessa o personagem, isso no game para PC).

O maior problema são os recursos gastos para se criar, satisfatoriamente, este tipo de efeito, já que a física envolvida consome tempo e processamento que poderia ser usado em outros fatores. Com isso as produtoras não investem muito em criar seus games com este adicional. E isso vai depender de jogo para jogo e da plataforma do mesmo. Mas chegará uma hora que elas terão de analisar este quesito, já que o clima pode ser interessante no jogo.

As possibilidades que isso trazer é enorme. A primeira delas é o já citado realismo. A segunda é a mecânica de jogo, já que, dependendo do local e da condição atual, a estratégia pode mudar radicalmente. Por exemplo: num game de RPG, se você estiver fugindo de um inimigo no mapa, e fugir morro abaixo (e começar a chover), você pode simplesmente escorregar e rolar morro abaixo (desde que o game tenha este evento preparado para ocorrer). Este evento pode desencadear um game over (e fazer o jogador ter raiva de si mesmo e ter vontade de brincar de frisbee com o seu CD original :roll: ) ou mesmo uma situação cômica (pô, gostei de ver eles rolando! Vou fazer de novo :lol: ).

Num local com neve, os personagens deverão usar uma roupa para o frio, e a mesma ter influências na jogabilidade, já que a desenvoltura de um personagem (ou os seus atributos) pode ficar prejudicada por causa da roupa adicional..

Se o tempo muda de uma hora para outra, a jogabilidade pode mudar e o jogador terá de se adaptar rapidamente para conseguir continuar o game. Isso aumenta o seu nível de dificuldade, e como o clima é aleatório, a cada vez que você zerar (jogar) o game, a estratégia pode ser diferente e não ficar na mesmice.

Outro tipo de influência climática foi citado nesta matéria do G1:

Game imita condição climática em tempo real

No caso da reportagem do G1 (que está no início do post), é interessante o game buscar na internet as condições do clima num determinado local e reproduzir no jogo. E dependendo do estado do local, ele teria de repensar como que seria a partida. Mas concordo que, neste tipo de game, se o ambiente real tivesse alterações climáticas, o game também deveria reproduzir (se iniciar uma chuva, o jogo também deveria fazer o mesmo :P ), em tempo real.

O jeito agora é esperar para ver como que os games podem tratar sobre o clima, e as produtoras analisarem que isto pode ser interessante para a diversão do jogador. Para o desenvolvedor de games, é um trabalho a mais, mas que pode ser necessário no futuro.

E aí? Será que, quando você for jogar, vai pensar no clima enquanto estiver num local aberto?