segunda-feira, 11 de maio de 2009

Tutorial do Teapot de Areia - Versão 2.0

Como prometido no post "Tutorial do Teapot de Areia - Versão 1.0", voltei para postar um novo tutorial que cria o mesmo efeito de um objeto se desfazendo, porém dessa vez usarei uma técnica que exige uma quantidade bem menor de partículas, facilitando muito o trabalho.

Para seguir este tutorial é importante que você tenha conhecimentos básicos de 3D Max e se possível já esteja familiarizado com o Particle Flow. Também é interessante que tenha acompanhado o tutorial anterior para perceber as diferenças entre as duas técnicas.

Vamos lá:

1º - Vamos criar uma cena básica no 3D Max. Para isso eu criei uma semi-esfera para servir de ambiente, um Teapot, uma luz Direct para gerar um foco de luz e sombra (para a sombra eu usei a Ray Traced Shadows, pois essa sombra interpretará o alpha que usaremos mais para frente para fazer o Teapot sumir), usei o E-Light (script) para criar uma iluminação homogênea na cena (porém sem emitir sombra) e posicionei a câmera.
2º - Texturize a semi-esfera, no meu caso eu coloquei uma cor básica e reflexo no que seria o "piso" da minha cena. Para texturizar o Teapot vamos criar um material Multi/Sub-Object. Clique no botão "Set Number" e mude o valor para "2". Lembre-se de habilitar a opção "2-Sided".No primeiro Slot do Multi/Sub-Object crie a textura do Teapot, eu coloquei apenas uma cor e um Bump. O resultado você pode conferir na imagem abaixo.

3º - Agora precisamos criar um mapa de opacidade para fazer o Teapot sumir. Para isso vamos adicionar um Gradient Ramp no canal Opacity da textura do Teapot. As configurações que usei estão na imagem abaixo, mas lembre-se que essas configurações e, praticamente todas as outras, podem mudar de cena para cena. Cada um deve encontrar a melhor configuração para o efeito desejado.
Repare que no Gradient Ramp eu usei Map Channel 2, pois a imagem que usei de Bump está com Map Channel 1 e o mapeamento dos dois será diferente. Mapeie o Gradient Ramp como preferir, eu fiz o meu de uma forma que o Teapot suma de cima para baixo. Observe também que eu mudei as configurações do Noise e criei uma pequena faixa preta no canto do Gradient Ramp.
4º - Vamos animar essa faixa preta indo da esquerda para a direita. Para isso basta posicionar a TimeLine no Frame final da animação (nesse ponto cada um decide em quantos Frames o seu objeto irá desaparecer e depois ajusta caso fique muito rápido ou muito lento) clique no botão "Auto Key" na TimeLine do Max, selecione o Flag do Gradient Ramp que queremos animar e mova para a posição final.
Observe na imagem abaixo como o meu Gradient Ramp está reagindo.
É muito importante que no começo da animação o Teapot esteja completamente coberto pela cor branca do Gradient Ramp (essa cor determina a parte do Teapot visível) e no final da animação ele deverá estar completamente coberto pela cor preta (cor que determina a parte que não será visível). Ao renderizar você verá o seu Teapot desaparecendo de forma gradual.
Agora entra uma das partes mais importantes dessa técnica que difere da que postei anteriormente. Na técnica anterior eu usei um Teapot como emissor de partículas. Nessa técnica que estou mostrando agora, vamos usar um mapa para emitir as partículas enquanto o Teapot desaparece. É por isso que fica muito mais leve, pois o Teapot não precisa ser totalmente formado por partículas, o mapa que criaremos irá emitir essas partículas, sincronizado com o mapa de opacidade do Teapot.

5° - Para criar esse mapa que servirá como emissor de partículas, vamos usar o segundo Slot do Multi/Sub-Material. Copie o Gradient Ramp aplicado no canal de opacidade do Teapot e cole como cópia (isso é muito importante, não pode ser instance, pois faremos algumas mudanças) no canal Diffuse do segundo Slot.
É preciso usar o Gradient Ramp do canal Opacity para que a sincronia fique perfeita. Esse Gradient Ramp que estamos usando como base, vai da cor branca para a preta. Porém o Gradient Ramp que usaremos como emissor, deve ser apenas uma faixa branca, animada da esquerda pra direita acompanhando o tempo de animação do Gradient Ramp do canal Opacity. Para isso você deve fazer algumas modificações nas Flags do Gradient Ramp usado como emissor para que ele fique como mostra a imagem abaixo.
Observe como este segundo Gradient Ramp "percorre" o Teapot sincronizado com o Gradient Ramp usado como opacidade. Porém ele não muda a cor do Teapot. Você notará apenas uma estreita faixa percorrendo seu Teapot, é exatamente dessa faixa que as partículas serão emitidas.

6° - Agora precisamos configurar o Particle Flow. Para isso crie um PF Source como mostrei no tutorial anterior. Confira na imagem abaixo os controladores que você irá precisar.
7° - Agora vou explicar rapidamente como configurar cada controlador, baseado nas letras usadas na imagem abaixo.

a) Configuração da emissão de partículas. Note que como as partículas serão emitidas ao longo da animação, acompanhando o Gradient Ramp que usamos como emissor, devemos usar dessa vez a opção Rate e não Amount como no tutorial anterior.

b) Mais uma vez as partículas terão como base para seu posicionamento o Teapot. Atenção agora para o CheckBox "Density By Material", com a opção Grayscale selecionada. Nessa parte estamos "falando" para o Particle Flow que as partículas serão emitidas do material que criamos. Também é importante determinar qual será esse material. Isso é feito escolhendo o Mtl ID. Como o mapa que usei para ser o emissor está no segundo Slot do Multi/Sub-Material, com ID 2, coloquei o número 2 no Mtl ID, determinando assim qual será o meu material emissor.

c) Escolhi minha câmera, para que as partículas estejam sempre viradas para ela e determinei o tamanho das partículas.

d-e) É preciso colocar o mapeamento para que não de aquela mensagem de erro ao tentar renderizar algo que tenha uma imagem não mapeada na textura .

f) Mais uma vez adicionei vento na cena. A configuração de cada um vem logo à seguir, mas é importante que você teste e encontre a melhor configuração para a SUA cena.

g) Neste ponto usei a mesma cor básica que usei no Teapot, para que as partículas fiquem com a mesma cor, dando a impressão que o Teapot está realmente se desfazendo, como se fosse feito de areia ou algo do tipo.

h) Coloquei um controlador para deletar as partículas baseado no tempo de existência de cada partícula após a sua emissão. Isso é útil para deletar as partículas que já saíram do campo de visão de sua câmera e que, sem esse controlador, continuariam "voando" eternamente, deixando o render mais e mais pesado com o aumento dessas partículas soltas no espaço.

8° - A imagem abaixo mostra o posicionamento e a configuração dos dois Winds que usei na minha cena (identificados pelos números 1 e 2).

Pronto. Se você seguiu todos os passos, provavelmente terá um resultado bem próximo do vídeo à seguir. Espero ter ajudado, caso tenha alguma dúvida, basta entrar em contato comigo.

Como a qualidade do vídeo aqui não fica muito boa, coloquei o mesmo vídeo em mais dois lugares. Porém não ficou muito melhor, mas de qualquer forma aí vão os links:

http://s204.photobucket.com/albums/bb303/paulorfo/?action=view&current=teapot.flv


http://www.youtube.com/watch?v=tOBbXZflPu0

domingo, 10 de maio de 2009

Tutorial do Teapot de Areia - Versão 1.0

Estou postando o tutorial do Teapot de areia. Esse arquivo é um pouco antigo. Fiz ele com o 3DS Max 6 e o Particle Flow ToolBox 1.

Abaixo podemos observar o resultado desejado com este tutorial.


Antes de mais nada quero deixar claro que a técnica vista à seguir não é a melhor. Porém foi assim que eu fiz o vídeo que pode ser visto na postagem anterior. Em breve eu postarei uma técnica diferente e bem melhor para obter o mesmo resultado.

Se você vai seguir este tutorial é importante que já esteja familiarizado com o 3DS Max e caso já tenha se aventurado com o Particle Flow, será melhor ainda.

Vamos lá:

1° - Crie um Plane, um Teapot, posicione a câmera como preferir e nesse ponto já podemos adicionar alguma luz também. Para a iluminação eu usei o E-light (script) bem básico, apenas para ter sombra e mais contraste. Porém cada um deve setar sua iluminação de acordo com o resultado desejado e o render que usará. (Usei Scanline, bem simples, exatamente por estar preocupado mais com a simulação do que com imagens mais trabalhadas). Adicione também texturas e os devidos mapeamentos ao Plane e ao Teapot (no caso do Teapot é apenas para testar como ficarão as partículas, pois esse Teapot criado é apenas um guia para servir de emissor e não será renderizado ao final do processo).

2° - Crie um PF Source em qualquer ponto de sua cena. Ele pode ser encontrado no Menu Geometry/Particle Systems/PF Source.

3° - Clique em Particle View, para abrir a tela onde controlaremos as opções das partículas.

4° - Você verá a seguinte tela, com essa configuração Default.

5° - Apague os seguintes operadores marcados (você não precisará deles ou serão substituídos por outros). OBS: Infelizmente esqueci-me de marcar o operador Rotation, ele também deve ser deletado. Como só percebi isso na metade do tutorial, resolvi colocar apenas essa observação e contar com a compreensão de todos, dessa forma não preciso alterar todas as imagens, agilizando a publicação deste tutorial. Obrigado.

6° - A seguir adicione os operadores em destaque na próxima imagem.

7° - Vamos agora a uma breve explicação de alguns operadores importantes, começando pelo Cache. Vamos setar este operador para que as partículas na Viewport não sejam atualizadas a cada modificação feita, tornando o trabalho mais lento. Esse operador proporcionará um controle de quando atualizar essas partículas, de acordo com a vontade de quem estiver usando o programa, dessa forma podemos alterar vários parâmetros e só depois de tudo devidamente setado atualizar para ver o resultado. Para isso eu mudei a opção Update que vem por Default como Always para Manually. Com essa mudança, sempre que quiser atualizar suas partículas na Viewport, basta clicar em Update.

8° - Birth: Deixe o Emit Start em zero assim como o Emit Stop. Dessa forma o Particle Flow iniciará a cena com todas as partículas. Teste quantas partículas serão necessárias na sua cena para cobrir o Teapot de forma que ele pareça sólido. Na minha cena foi preciso 150.000 partículas... Nessa hora que os problemas começam caso você não tenha uma boa máquina. Porém não se desespere. Como eu disse no post anterior, essa não é a melhor forma de se fazer isso, mas foi a forma que eu fiz quando comecei a aprender. Depois postarei um tutorial um pouco mais "inteligente" e "leve" para recriar esse mesmo efeito.

9° - Position Object: Na opção Emiter Objects, clique em By List e selecione o seu Teapot. Isso fará com que as partículas sejam emitidas do objeto escolhido e não do PF Source.

10° - Shape Facing: Na opção Look At Camera/Object, clique no botão None e após isso clique na sua câmera, fazendo com que as partículas fiquem todas viradas de frente para a câmera. Isso deve ser feito porque usaremos partículas em forma de plane, pois assim fica mais leve e fácil de preencher todo o objeto.

11° - Material Static: Arraste o Slot do material criado para o Teapot sob o botão None e faça essa cópia como Instance, dessa forma se futuramente você resolver alterar algo no seu material, ele mudará no operador automaticamente.

12° - Mapping Object: Na opção Mapping From Objects, clique em By List e adicione seu Teapot. Lembre se conferir se na opção Mapping Channels você está usando o mesmo Map Channel usado no mapeamento do Teapot. Isso é muito importante para que as partículas sejam mapeadas de forma correta.

13° - Display: Mude a opção Type, por Default Ticks, para Geometry. Após isso você já pode atualizar as partículas no Cache e ver como está ficando o resultado. Renderize e veja se precisa de ajustes de luz, material, mapeamento, mais partículas, enfim.

Agora que já temos um Teapot formado inteiramente por partículas, vamos à segunda parte onde faremos essas partículas saírem "voando", dando a impressão que o Teapot está se desfazendo.

14° - Para isso eu criei 3 Winds, um Drag e um SDeflector. Veja nas imagens abaixo a disposição e configuração de cada um desses elementos.

15° - Selecione o SDeflector que está logo acima do Teapot e anime-o descendo e passando pelo Teapot. É o SDeflector que desencadeará a próxima ação que é fazer com que as partículas se soltem do Teapot e saiam voando. Por isso preste bastante atenção para ver se o SDeflector está passando por todo o Teapot, caso contrário nem todas as partículas se soltarão.

Só isso não basta, precisamos "falar" para o Particle Flow que todas essas forças estão aí na cena e como ele irá interagir com elas. Outra coisa que eu fiz na minha cena, mas que é opcional, é determinar um momento para as partículas sumirem após saírem voando.

16° - Selecione os controladores Display, Mapping Object, Material Static e Shape Facing. Copie esses controladores e cole como Instance, criando um novo evento. Copiei esses controladores como Instance, pois essas características não irão mudar quando as partículas se soltarem do Teapot.

17° - Para ligarmos esse novo evento ao anterior, precisamos colocar o controlador Collision no evento anterior, já adicione o seu SDeflector ao Collision (isso significa que quando o SDeflector colidir com as partículas, elas reagirão da maneira determinada no próximo evento).

No evento seguinte à colisão, adicione o controlador Force (adicione ao Force os 3 Winds e o Drag) e adicione também o controlador Delete. Vamos configurar este ultimo controlador para deletar as partículas por Age. Veja como fiz na próxima imagem. Encontre os melhores valores para a sua cena.

Pronto! Agora é só atualizar as partículas e ver se tudo está como você deseja, caso contrário basta ir ajustando os parâmetros necessários de acordo com sua vontade. Logo postarei mais um tutorial para essa mesma cena, só que dessa vez usarei uma técnica que deixará o arquivo mais leve e com uma quantidade muito menor de partículas para obtermos o mesmo resultado.

Espero que tenha sido útil, qualquer dúvida é só entrar em contato.

Obrigado.

sábado, 9 de maio de 2009

Tutorial 38 Cano Longo - Render Elements

O resultado deste tutorial você confere clicando AQUI.

Muitas pessoas, ao renderizar, geram imagens completas direto do programa 3D. Em alguns casos não há tanto problema, principalmente quando não há animação na cena e a pós-produção pode ser feita no Photoshop sem muita dificuldade. Porém, quando há animações na cena é sempre interessante gerar imagens separadas para poder ter maior controle da cena e mesmo para renderizar objetos separados.

Algumas vezes as cenas são tão complexa que se torna muito difícil, lento e em alguns casos, inviável o render da cena completa. Quando isso acontece, uma saída é renderizar os vários objetos em arquivos separados para depois compor no After, por exemplo.

Apesar da minha cena não ter animação, eu usei o Render Elements para gerar vários canais de imagens para ter mais controle e facilidade na hora de tratar a imagem no Photoshop. O 3DS Max oferece vários canais, cabe a cada pessoa julgar quais canais serão necessários levando em conta as características da cena e o controle que ela deseja ter sobre isso.

Outra utilidade muito interessante é quando acontece de você resolver mudar algo na cena, como luz, cor, textura, após o render. Caso não tenha usado o Render Elements, a pessoa tem que renderizar tudo novamente, mas com o uso dessa técnica, podemos modificar algumas coisas da cena em um programa de edição como Photoshop (para imagens estáticas) ou After Effects (para animações) sem precisar perder horas de render.

A imagem a seguir mostra onde podemos achar a aba do Render Elements na tela de render do Vray.

Nessa tela, clicando em "Add ..." abrirá uma outra tela com os diversos canais que o 3DS Max oferece. Basta escolher os canais desejados e clicar em “OK”. Cada canal possui alguns parâmetros para configurar. Não entrarei em detalhes sobre todos os canais e muito menos sobre esse parâmetros, porém são todos bem simples e intuitivos. Basta explorar um pouco para entender ou usar o Help.

Não se esqueça de conferir se o filtro está habilitado e de indicar o caminho e o nome da imagem bem como o formato dela.

Para a minha cena eu usei os seguintes canais: VRayShadows (que guarda a informação com as sombras da cena), VRayRefraction (guarda a refração da cena), VRayReflection (guarda os reflexos), VRayMtlID (gera uma imagem com cores sólidas, facilitando a seleção de objetos inteiros, baseados em seus materiais), VRayLighting (guarda informações da iluminação), VRayGlobalIllumination (também guarda informações de luz, só que da iluminação global), VRayDifFuseFilter (guarda informações sobre as cores difusas) e obviamente que gerei a imagem final com todos os elementos. Também poderíamos gerar uma imagem de Ambient Occlusion para ter controle sobre os contornos e sombras da cena. Mas acabei não usando essa imagem e não falarei sobre essa técnica nesse post. Quem não souber o que é ou quiser mais informações sobre o Ambient Occlusion é só dar uma pesquisada na net ou me avisar que eu faço um tuto apenas sobre isso.

O resultado do render desses canais pode ser observado nas imagens à seguir.

DiffuseFilter


MtlID


Shadows


Refraction


Reflection


Lighting


GlobalIllumination


Agora vamos pegar todas essas imagens e junta-las no Photoshop.

A próxima imagem mostra como montei as camadas no Photoshop. Começando com o MtlId, para facilitar a seleção. Seguido da imagem final, no caso da minha cena não achei necessário começar a composição da cena com o canal Diffuse. Normalmente eu abriria o Canal Diffuse e sobre ele iria colocando as informações de luz, sombra, reflexo, refração, etc, dessa forma a imagem iria sendo composta.

Como não gerei uma imagem de DOF, fiz o desfoque da cena selecionando a área que eu quis desfocar e aplicando o Blur do Photoshop.

A seguir vou mostrar que opção de Layer Blend que usei para cada imagem:

“MtlId”: Não importa o Blend, já que essa imagem é apenas uma base para você fazer seleções e recortes com facilidade, podendo usar até mesmo a varinha mágica do Photoshop, já que são cores sólidas.

“Final”: Modo normal.

“DOF”: Normal.

“Cabeça Bala”, “Cromo Bala”, “Cartas”, “Cadeira”, “Toalha” e “Parede”: Normal. Apenas fiz alguns ajustes de contraste, brilho e apliquei o Blur em alguns pontos.

“Light”: Overlay, com opacidade 30%.

“Reflection arma e cinzeiro”: Screen.

“Reflection Fichas”: Screen, com opacidade 50%.

“Refraction copo”: Lighten, com opacidade 20%.

“Smoke02”: Screen, com opacidade 10%.

“Smole01”: Screen, com opacidade 15% e fill 60%.

Para fazer a fumaça usei fotos de fumaça em preto e branco, apliquei o Blend Screen que deixa apenas o branco da fumaça.

A última camada “Luz” foi uma cor sólida que apliquei “overlay” com opacidade 40% apenas para dar uma cor mais quente na cena.

Lembre-se que cada cena é única, por isso não há como criar uma “receita de bolo” ideal para esse tipo de composição. As imagens que usei, o recortes que fiz, efeitos e tratamentos em cada objeto e pedaços da minha imagem foram feitos baseados no que eu julguei necessário para atingir o resultado que eu desejava.

Cenas diferentes podem exigir que a pessoa gere diferentes canais no Render Elements, use Layer Blend diferentes, aplique filtros, etc. Não há segredo, basta juntar as imagens e testas os diferentes Blend, opacidade, fill, efeitos, etc, até atingir o resultado desejado.

Sei que esse tutorial foi bem básico, mas espero que ajude. Quem ainda tiver dúvidas pode entrar em contato diretamente comigo ou se preferir use o link que está logo abaixo. É o link para um tutorial de composição mais aprofundado que o meu. Esse fórum também pode ser muito útil para quem quer aprender ou receber críticas e comentários sobre os trabalhos, além de possuir noticias e uma infinidade de tutoriais muito úteis.

http://www.tresd1.com.br/conteudotutoriais.php?t=27912

sexta-feira, 8 de maio de 2009

Tutorial "Inundação de Cheddar" (RealFlow)


O resultado deste tutorial você confere clicando AQUI.

Olá,

Como de costume estou postando algumas imagens para servir como um mini tutorial da última cena postada. Qualquer dúvida é só deixar uma mensagem e logo responderei.
Obrigado pelo apoio de todos.
Até o próximo projeto,
Abraços...

Modelagem da luz de teto.


Modelagem da luz de parede.


Modelagem do barril.


Composição da cena.


Parâmetros do barril.


Parâmetros da parede.


Parâmetros do emissor de partículas.


Parâmetros do mesh gerado.


Mais parâmetros do mesh.


First Bounce: Irradiance Map.


Second Bounce: Light Cache.


Parâmetros das luzes da cena.

As únicas luzes utilizadas na cena foram VRayLight, que podem ser vistas na imagem acima. No environment eu não usei HDRI e nem outro mapa. A iluminação é feita apenas com as VRayLights e VRayLightMtl aplicados nas luzes de parede e teto, mas esses materiais contribuem pouco para a iluminação final, dão apenas o "toque final".