Saudações, pessoal.
Com certeza a maioria aqui já ouviu falar no Crysis, que com certeza é o jogo portador da engine mais avançada para games da atualidade. Eu não aguentei e baixei o demo para matar minha curiosidade. O jogo é interessante e, como não poderia deixar de ser, super pesado. Mas vamos direto ao ponto.
Eu estava "fuçando" nas pastas do demo quando, para minha surpresa, encontrei um tal de "Editor" e quando o abri, era nada mais nada menos do que a ferramenta de edição da Crytec. Ela é bem completa e interessante e resolvi postar esse tópico para mostrar alguns recursos.
Como podem ver (imagem 1), a cara da ferramenta é semelhante aos modeladores 3D que encontramos por aí. Com certeza o que mais chama a atenção nesse programa é que ele mostra na viewpoint toda a capacidade de renderização da engine em tempo real! Quer dizer, real pra quem tiver um PC potente, muito potente. No meu PC as viewpoints ficaram em média a uns 5 fps, taxa aceitável se comparado às minhas cenas mais pesadas no MAX ( com suas viewpoints horrorosas, pelo menos no 2008 já mostra umas sombras ).
É incrível como as engines da nova geração de games estão conseguindo renderizar cenas em tempo real que antes demorávamos um bom tempo para fazer em 3D. Nas sequências de imagens vocês podem ver em detalhes.
A engine dá suporte a
- normal maps,
- bump maps,
- parallax ( recurso incrível que simula um displace em uma malha simples, reparem nas imagens da areia ),
- subscatering ( nas folhas de algumas árvores, na penúltima imagem dá pra ver nos coqueiros ),
- efeitos volumétricos ( reparem nas imagens em que os coqueiros formam sombras volumétricas no ar ),
- refrações ( reparem a cena subaquática ),
- HDRI ( a iluminação é dinâmica, simula a transição entre dia e noite em tempo real, com todas as diferenças de causa atmosférica nas cores. Se a câmera estiver em um local escuro com uma janela, a imagem de fora ficará extremamente clara. Ao sair do ambiente, o controle de exposição é automaticamente ajustado )
- motion blur ( movimentaçoes rápidas ativam o efeito ), desfocagem ( em algumas imagens é possível reparar que quanto mais distante, mais desfocado ),
- area shadows ( nas primeiras fotos dá pra ver na sombra do coqueiro na areia ), e outros... E, acreditem, você entra no editor de materiais do programa, faz as alterações nos shaders e observa as mudanças em tempo real.
A física dessa engine merece destaque também. As explosões são um show à parte. Para você ter uma idéia do que estou falando, é possível derrubar árvores e quebrar seus galhos, pegá-los do chão depois disso e jogá-los para longe.
Como a ferramenta é voltada para o desenvolvimento de jogos, não há nenhuma opção de renderização mais complexa. Ela limita-se a oferecer um recurso de salvar vídeos em divx que são gravados à partir das viewpoints ( apesar de que, na maioria dos PCs, será uma apresentação de slides ). Ainda temos a oportunidade de ativar o modo jogo na hora em que quisermos e sair jogando na viewpoint para testar.
Há muitas opções para se programar eventos ( movimentos de personagens e cenário ). Podemos exportar a geometria criada no programa para o formato .obj. Infelizmente, a opção de importar objetos de formatos diferentes não está disponível diretamente no programa ( com certeza precisaremos de plugins de terceiros ).
Bom, meu objetivo com esse tópico é dar uma noção dos rumos que a CG está tomando com o progresso dos hardwares. Fica claro com essa e outras engines modernas que, em pouco tempo, poderemos pensar em renderizações em tempo real de imagens extremamente realistas, em PCs acessíveis. Espero que não demore muito para eu poder mostrar aqui um programa semelhante a esse calculando GI facilmente em cenários complexos como esses.