terça-feira, 23 de novembro de 2010

Assombroso sistema de criação de personagens em 3d


O game online para multidões Eve Online, de ambientação espacial, está atualmente testando um novo gerador de personagens. O vídeo abaixo promete o mais impressionante sistema de adequação facial e corporal já criado nos games. Nele, a estrutura muscular e óssea pode ser ampliada ou diminuída com facilidade conforme o desejo do jogador. O resultado é assombroso - e os desenvolvedores garantem que ele será levado fielmente ao jogo em si.

Por enquanto, porém, os personagens permanecerão aparecendo apenas como troncos no jogo, dentro dos cockpits de suas naves. Mas, futuramente, haverá integração social em bases espaciais, onde os personagens poderão andar livremente.





Bem que poderia ter uma versão desse sistema para vernder separadamente do game, com capacidade de exportar os modelos criados para softwares de 3d, acho que isso faria mais sucesso que o próprio game!

quarta-feira, 17 de novembro de 2010

Zdepth em objetos com mapas de transparência (max, maya e xsi)

É muito comum usarmos fotos de arvores aplicadas em planes e recortadas por mapas de opacidade, para reduzir o tempo de render, só que nos deparamos com uma grande incomodação quando precisamos de um pass de zdepth, pois ele não  reconhece a transparência em objetos recortados com mapas de opacidade.
Recentemente conheci um pacote de shaders para o mental ray, o Shaders P (Puppet, sobrenome do criador, Ledin Pavel aka Puppet), esse pacote é simplesmente fantástico, com recursos incríveis para usuários um pouco mais avançados. Mas ele tem um shader de zdepth fantástico, que reconhece mapas de opacidade e é muito simples de se usar, inclusive por usuários de outros renderizadores.
Então fiz um pequeno tutorial para mostrar como usar.


Antes de começar vale salientar que esse pacote de shader esta disponível para 3Ds Max, Maya e Softimage XSI

Nessa primeira imagem pode-se ver os planes com mapas de opacidade aplicados para gerar o recorte do objeto.


Para usar o shader é muito simples (não vou falar sobre a instalação pois no pacote vem as instruções detalhadas).


Primeiro precisamos carregar o shader de base que é o "mental ray" (como mostra na imagem acima), para os que não usam o MR notem que esse shader é como uma carcaça vazia, onde vc pode ir adicionando os elementos necessários para criar o seu material. Nesse caso o nosso material vai ser um Zdepth, portanto vamos carregar o shader "p_z" no canal "Surface" do shader "mental ray".

Agora para configurar o "p_z" o processo é semelhante a configuração do Elements de Zdepth do Max. Precisamos saber a distância máxima do efeito a partir da câmera.


Uma maneira simples de se ver isso é movendo o "target distance" da câmera até a distância necessária para compreender toda a área que se deseja ter visível no mapa de zdepth, e então usar esse valor para configurar o shader.


O "Near clip" (em amarelo na imagem acima) seria o que esta perto ou seja começa com branco (255) e vai até o preto (0) que seria o "Far clip" (em verde na imagem acima). Se colocarmos valores maiores que zero no "Near Clip" teremos o que esta próximo a câmera muito mais claro.
Por algum motivo que eu não sei o Ledin Pavel, criador desse shader, fez por padrão o que esta perto ser preto e o que esta longe ser branco, mas ele colocou uma opção de "invert result" (em azul na imagem acima) para poder ficar no padrão correto, então basta marcar essa opção.
Com o shader configurado e aplicado em todos os objetos da cena, ao fazermos um primeiro teste de render já teremos o resultado que pode ser visto acima.

Agora precisamos configurar o material para os planes com transparência.


Para simplificar o processo, vamos fazer uma cópia desse primeiro material que criamos e vamos renomear. Feito isso basta aplicar a textura de opacidade no canal "opacity" do shader "p_z" e se certificar de que o valor seja 1.
Agora basta aplicar esse novo material nos planes e esta pronto para usar.

Esse shader porém é bem mais completo que isso, podendo por exemplo renderizar um mapa de zdepth com reflexão e refração:

Ou então a opção "Split Color", onde ele faz um mapa de Z colorido, o que possibilita isolar e recortar elementos do mapa usando os canais de cor (red, green e blue)


Red channel - main Z        /        Green channel - reflection Z

Blue channel - refraction Z

Ele também tem suporte para salvar imagens de 8bit, 16bit e 32bit (float).
Ao todo esse pacote possui 19 shaders com muitos recursos uteis e que quando misturados entre si podem gerar novas alternativas. Conforme eu for tendo tempo para estudá-lo, vou postar mais tutoriais com dicas de uso.

segunda-feira, 15 de novembro de 2010

Aprenda a usar Sub-Surface Scatter no Maya

Olá pessoal, bom infelizmente eu falo pouco sobre o Maya ou outros softwares por que eu trabalho com 3ds max, e minhas pesquisas acabam indo mais para esse lado.
Mas ocasionalmente eu encontro alguns materiais ótimos como esse, são 4 vídeos aulas de 1 hora de duração produzidas pela Gnomon.

Intro to Subsurface Scattering:
Translucency is a characteristic of many materials, both natural and man made. From leaves and murky water to wax, sandblasted glass or skin, many objects that may be opaque will still absorb light into the surface. Subsurface Scattering is a rendering technique that allows for the simulation of translucency in Mental Ray.

Skin Shading with Mental Ray
Chapter One: Working with the Fast-Skin Material:
Rendering skin with the natural appearance of translucency, specularity and reflection is achievable thanks to the Mental Ray Fast-Skin material. This tutorial demonstrates how to build the necessary shading network and manage the many attributes available.

Skin Shading with Mental Ray:
Chapter Two: Mapping Color, SSS Layers and Bump

Skin Shading with Mental Ray:
Chapter Three: Layering Specularity and Reflections