Dicas e truques: Planejamento e Fluxo de Trabalho da Vagalume Animation Studios Heber Conde – Vagalume Animation Studios Demonstração de técnicas intermediárias e avançadas em 3DS MAX. Apesar de tratarmos de técnicas bastante complexas, a palestra será ágil e degustável a todos os níveis de usuários. Objetivo de aprendizado Ao final desta palestra você terá condições de: Conhecer os processos pro trás dos Estúdios Vagalume Entender como combinar diferentes técnicas para a obtenção de um resultado complexo O aluno deverá ser capaz de iniciar um estudo na com Particle Flow Iniciar seus estudos em mParticles Iniciar seus estudos com Data Operators Sobre o Palestrante Após 8 anos como technical Director na Atitude Midia Digital, fundei ha 7 a Vagalume Animation Studios para entrar no mercado publicitário e iniciar um projeto solido de licenciamento de produto. Pelo exercício me “formei” Character TD, especialista em simulação e artista generalista. Como diretor publicitário, assinei e co-dirigi alguns filmes, sempre em animação ou efeitos especiais. Estudante assíduo, ainda hoje, estuda pelo menos 10 horas por semana para manter-se em desenvolvimento. Ministrei por 4 anos e implementei os cursos de personagem avançado na Cadritech (curso autorizado Autodesk), fui professor Universitário e Demo Artist Autodesk Brasil de Max e Motion Builder. Atualmente dirijo o estúdio ao lado do meu sócio (Yohann) e atuo como Diretor comercial e executivo do estúdio. Mais de 15 anos de 3D Studio no curriculum e aprendendo. Inserir o Título da Palestra Vagalume Animation Studios A partir do momento em que se desligou do cargo de diretor do departamento 3D da Atitude Mídia Digital, Heber Conde, trocou uma promissora carreira no mercado de web meeting e treinamento voltados aos maiores grupos farmacêuticos do país pela incerteza de seguir carreira solo como fundador de um estúdio voltado para produção de animação digital e efeitos especiais para o mercado publicitário e de entretenimento. Nascia então, em março de 2005 a Vagalume Animation Studios. Sua operação inicialmente seguia através de home-office, com raros freelances que pontuavam alguns trabalhos, já que o próprio Heber conseguia dar vasão a demanda da empresa. Já no final daquele mesmo ano a necessidade de uma estrutura física e de uma equipe fixa crescia à medida que o número de trabalhos, sempre desafiadores aumentava. Assim em Janeiro de 2006 a Vagalume instalava-se em sua sede em Santo Amaro e os novos colaboradores iniciavam na produção efetiva. Colaboradores estes que vieram em sua maioria dos cursos especializados da Cadritech Computação Gráfica, onde Heber Conde foi por alguns anos titular do curso de animação de personagens. E esse era um fator importante para Vagalume estabelecer suas raízes: formar profissionais dentro do seu workflow, com o seu know-how, criando uma base mais sólida e um robusto pipeline de produção. 2 Inserir o Título da Palestra Ainda que produzam de forma competente efeitos especiais realistas, o trabalho com personagens sempre liderou a Vagalume, chegando muitas vezes a buscar trabalhos desafiadores nesse sentido, mesmo com orçamentos restritivos. Esse desenvolvimento técnico que vem se desenvolvendo desde a fundação, hoje é questão de orgulho e nos coloca em um seleto grupo junto a outros players do mercado. Seja pela sua experiência de longa data em trabalhos robustos, seja pela qualidade conferida aos mesmos, a Vagalume busca cada vez mais elevar não somente o seu nível, mas o do mercado nacional, pois nessa vitrine de serviços em que se converteu a internet, acreditamos que qualidade seja fator determinante para tomada de decisão de investidores internacionais. “Cuide dos meios, os cuidarão se sí mesmos” - Gandhi fins 3 Inserir o Título da Palestra TIPS AND TRICKS INTRODUÇÃO Ao longo dos anos o 3D Max vem se consolidando como uma das ferramentas de simulação mais poderosas do mercado. Criativos e inovadores desenvolvedores como a Thinkbox, criadores do poderoso Krakatoa e a Sitni Satnov, responsável pelo fume FX entre outros, tem expandido consideravelmente as possibilidades das ferramentas nativas no software e agora a Autodesk acaba de incorporar ao max 2013 as reconhecidas ferramentas Box#2 e Box#3 (mParticles e Advanced Data Manipulation toolset), desenvolvidos até então pela Orbaz Technologies. Muito além das estrelinhas brilhantes, partículas hoje controlam simulações em tecidos, explosões e fragmentações complexas, modelagens procedurais e permeiam muito mais soluções do que inicialmente imagina-se. Tal versatilidade tem ficado cada vez mais acessível através de ferramentas mais intuitivas e flexíveis, atendendo do usuário iniciante até as necessidades mais complexas comumente exigidas em produções publicitárias e cinematográficas. Essa rápida apresentação tem o objetivo de expandir o conhecimento do público em soluções de simulação, e elucidar o caminho autodidata que cada um terá que traçar até o completo domínio das ferramentas aqui apresentadas. PARTICLE FLOW Conhecimentos Fundamental O particle flow é o sistema baseado em eventos, nativo, de partículas do 3D Max. Partículas são pontos com dimensão de 1x1x1, sujeitos a forças internas do sistema (velocidade, rotação, forças vetoriais, etc) ou externas (max standard forces – Wind, gravity, drag, etc) que pela multiplicação de suas dimensões não se acumulam em estado original, característica contornável com o advento das mParticles no 3D Max 2013. Para se criar um novo Particle Flow (Pflow) na cena é preciso utilizar o menu: Create | Particle System | PF Source (ilustração abaixo), e criar o ícone na viewport. 4 Inserir o Título da Palestra Após criado, o ícone poderá ser modificado e sob o grupo setup do PFSource poderá se acessar o Particle View (shortcut “6”), a Interface gráfica do ParticleFlow. Particle View Baseada em nodes. Todas as propriedades de todos os sistemas de partículas da cena poderão ser localizados e alterados através dessa interface, incluído propriedades de render e de objeto. 5 Inserir o Título da Palestra O fluxo de dados (data flow) Através do Particle View é possível se combiner operators que determinam as partículas propriedades especificas como forma, posição, velocidade, materias entre outros, em um determinado período de tempo, chamado evento. Cada operador (que por sua vez contém parâmetros animados para controlar diferentes propriedades) é executado assim que cumpre sua missão o próximo evento na lista entra em operação, sucetivamente até o final do sistema. Para obter alterações mais significativas nas partículas, é possível a criação de flows. Essas conexões enviam as partículas de um evento a outro através de operadores que testam determinadas propriedades e “decidem” se a partícula cumpre ou não o teste, e a envia para o próximo evento ou para o próximo operador da lista. Abaixo uma ilustração com um sistema de partículas simples (cujo o resultado pode-se contemplar à esquerda da imagem), e uma adaptação para o português das ordens executadas pelo sistema. 6 Inserir o Título da Palestra Condições Fundamentais | Analisando o Standard Flow O standard Flow é um preset (disponível no Depot) que contém todas as propriedades básicas em um sistema de partículas, e é um ótimo ponto de partida para a construção de suas próprias soluções. Ele exemplifica as 2 condições fundamentais para a criação de partículas: 1. O primeiro evento sempre será a representação do PFSource (ícone da cena) e por isso o evento e o objeto dividirão sempre o mesmo nome. Ele atua como um controle global no sistema e tudo o que for adicionado à ele será comum entre todos os eventos seguintes. Por default ele traz um Render Operator que garante que todas as partículas criadas sejam renderizadas. 2. O Segundo evento é chamado de birth event. Caracterizado por um Birth Operator no topo, é através deste operador que as partículas serão geradas em determinadas condições e especificações. Tais propriedades serão compartilhadas por todas partículas no evento. 7 Inserir o Título da Palestra Tipos de Operators Os operators são os nodes que criamos para customizar os eventos. Eles são classificados em 3 tipos: 1. Born Operators - os operadores de criação ou Born Operators são responsáveis pela criação das partículas. Conforme demonstrado na ilustração acima, é um operator que flui em um único sentido e como já foi dito deve sempre constar como primeiro operador no Birth Event do Sistema. 2. Operators – os operadores ou operators controlam diversas propriedades específicas das partículas e comumente contém valores animáveis. Eles operam com fluxo linear, conforme ilustrado na esquematização ilustrada acima. 3. Test Operators – atuam como testes condicionais que decidem os fluxos de partículas ao longo dos eventos. Conforme ilustrado no esquema acima, elas recebem as partículas e submete-as a algum teste (cada operador testa determinadas propriedades). Dependendo do resultado obtido, envia a partícula para outro evento ou segue processando os operadores abaixo. Para cada uma dessas classes existem vários operators disponíveis que controlam as partículas baseados em análises específicas, por exemplo, a velocidade de uma partícula pode ser controlada vetorialmente (speed operator), através da análise de normais de uma geometria (speedBySurface) ou através da análise de posição de um ícone (speed by icon). O domínio desses recursos e principalmente de suas combinações e inter-relações possíveis é a chave para o sucesso com o particle flow. 8 Inserir o Título da Palestra Action Time Frames Normalmente os operadores atuam sobre as partículas de 2 formas em relação ao tempo: 1. Uma única vez quando a partícula entra no evento 2. Continuamente enquanto a partícula perdurar no evento Em uma explosão, por exemplo, a velocidade de expansão das partículas deve ser aplicada uma única vez na detonação da bomba, enquanto as forças de gravidade devem atuar continuamente influenciando a trajetória das partículas ao longo do evento. Alguns operadores trabalham apenas em uma configuração de tempo enquanto outros trabalham com as duas opções (customização feita através de parâmetros no Particle View). CONCLUSÃO Esses são alguns dos conhecimentos conceituais básicos para o desenvolvimento de partículas Event-based no 3d Max. Obviamente existem muitos outras informações necessárias para se utilizar essa informação, mas espero que essa breve explanação conceitual solidifique seus conhecimentos mais estruturais do sistema, antes de passarmos a alguma coisa mais sofisticada e poderosa. 9 Inserir o Título da Palestra Mass FX Particles Como vantagem dos consumidores subscription, a Autodesk lançou recentemente o Extension for Autodesk 3ds Max 2013. Essas ferramentas estão disponíveis apenas pata os assinantes do programa subscription. Esse poderoso sistema de simulação adiciona o MassFX (Max physX engine) como algoritmo físico das partículas, que passam a ser regidas por operadores específicos para executarem a operação. Instantâneo, poderoso, versátil e intuitivo, as mParticles revolucionam a forma de se simular física no Max e tornou-se uma incontestável ferramenta para a simulação ágil de incríveis efeitos especiais. As mParticles trazem simplicidade à complexas operações geométricas. Aqui começaremos a subverter a utilização de partículas em aplicações atípicas e inusitadas. Abaixo vemos um MassFx Flow, um preset disponível no Depot para a rápida criação de um sistema de simulação física. Como podemos ver no infográfico acima, alguns operators combinados são necessários no birth event para o sucesso da simulação. Vale dizer que não há nenhuma restrição ao uso dos birth operators usuais e os operators de posição com o sistema. 10 Inserir o Título da Palestra Segue abaixo uma relação com os MassFX Operators e uma breve explicação de suas funções: mParticles | Birth Grid Operator O Birth Operator controla a posição das partículas e sua quantidade baseado em uma geometria externa. É importante para o Mass Fx que as partículas sejam criadas sem intersecção para um funcionamento adequado e o birth operator um uma forma ágil e poderosa de se garantir um processo seguro para a simulação física de partículas. mParticles | Birth Group Operator O Birth operator permite ao Max utiliza a posição e a geometria de vários objetos simultaneamente. Rápida forma de se administrar objetos pré-fragmentados, por exemplo. mParticles | Birth Steam Operator O birth steam Operator é semelhante ao Birth operator, mas é otimizado para evitar que as partículas entre em colisão no momento de criação, ideal portanto, para criação de mParticles. mParticles | MassFX World Operator (operador fundamental) O MassFX World helper determina as propriedades globais para a simulação. É uma interface direta para o physX, e através do driver abre controles globais de bounce (restitution), Friction, Sleep, Ground Colision, gravity e todas os parâmetros comuns ao physX World. É importante lembrar que apesar de ser possível ter diferentes World operators em uma mesma cena (submetendo 2 sistemas de partículas a diferentes gravidades, por exemplo) mas partículas com diferentes drivers, não se inter-relacionam na simulação. mParticles | MassFX Shape Operator ( operador fundamental) O Mass FX Shape Operator converte e otimiza os shapes para a simulação física. É indispensável para a simulação com MassFX e depende de um Shape 3D aplicado para funcionar adequadamente. mParticles | MassFX Glue Test O massFX Glue cria joints entre as partículas e tende a mantê-las nas mesmas posições em relação a outras partículas, criando uma “cola” entre elas. 11 Inserir o Título da Palestra mParticles | MassFX Solvent Operator O Solvent Operator dissolve o Glue destruindo os joints de forma controlada e customizavel mParticles | MassFX Force Operator Diferente das standard Forces que as partículas aceitam, o MassFXForce Operator interpreta as forças dispersadas pelos shapes (force fields) e interferem nas simulações 3D com a devida precisão. mParticles | MassFX Drag Operator Além de dispensar a criação do Space Warp, o operador é controlado com as regras de fricção do MassFX. mParticles | MassFX Switch Operator Operador que altera a condição das partículas de dinâmicas (massFX Particles, para Kinematic (Standard Particle Flow Operators). A idéia é poder subverter as condições físicas “reais e impostos” pelo PhysX. Kinect Particles não colidirão entre sí, porém colidirão com as dinâmicas. A sucessão rápida destas condições pode gerar resultados de colisão problemáticos e irreais. mParticles | MassFX InterCollision Test Operador que mapeia e controla do fluxo das partículas baseado nas informações de suas Inter colisões. É um processo dispendioso para o sistema e eu recomendo prudência e seletividade ao usa-lo. mParticles | MassFX Buoyancy Operator Simula ambiente para simulação de partículas submersas em liquido. mParticles | MassFX Collision Test Similar ao Collision Test Operator, o MassFX Collision Test Operator usa como deflectors para a simulação qualquer objeto com o modificador PFlow Collision Shape (WSM). Expressivamente mais rápido e customizável que o Udeflector do max. 12 Inserir o Título da Palestra Particle Flow Simulation Modifiers Além dos operadores, foram adicionados alguns poderosos modificadores que se comunicam com as partículas e expandem ainda mais o leque de possibilidades, são eles: Particle Face Creator Modifier O Particle Face Creator é um modificador que utiliza a posição das partículas para esconder ou revelar a geometria do objeto determinado. É um passo de mágica na criação de efeitos de revelação de geometria e incrivelmente customizável. Particle Skinner Modifier O modificador permite que as partículas influenciem na posição da malha, criando um skinning entre malha e partículas. Complexos efeitos de colisão entre malhas (como batidas de carro e outras deformações por contato), simulações que envolvam derretimento ou cloth, é surpreendente o controle que esse modificador dá ao artista de fx. Particle Flow Data Operators O Advanced Data Manipulation toolset para Particle Flow permite que você desenvolva seus próprios operators. Eles podem ser standard, test ou baseados em ícones, e history independent – processo expressivamente mais rápido do que o usual History Dependent. São 27 adicionais suboperators que podem ser customizados e uma poderosa solução de ferramentas que “encapsulam” a programação criada como um novo operator expandindo drasticamente o seu acervo de recursos em pouco tempo. Complexo, dirigido a usuários avançados e com uma curva de aprendizagem difícil, os data operators podem ser renunciados até um certo ponto da produção, mas aconselho-os a enfrentar os desafios técnicos envolvidos e se aprofundarem nessa poderosa e “ilimitada” ferramenta de controle de partículas. Conclusão Nesse rápido curso de apresentação espero ter mostrado o caminho inicial para a abordagem de cada uma das técnicas e funções descritas nessa apostila. Como disse inicialmente seria presunção esgotar temas tão amplos em tão pouco tempos, mas espero que os mais desbravadores encontre nessas explicações um norte para seus estudos, e que todos ao menos conheçam melhor o acervos de possibilidades da ferramenta para desenvolverem suas próprias abordagens em desenvolvimentos futuros. Bons estudos! 13