O ponto forte de Houdini sempre foi sua natureza processual. Com alguns nós e um pequeno conjunto de expressões, você pode criar resultados complexos e naturalistas - modelos e cenas que levavam para sempre para criar de maneira tradicional.
Por muito tempo Houdini tem sido a espinha dorsal de muitas produções em grande escala na indústria de efeitos visuais. No entanto, por causa de sua abordagem processual, muitas vezes é difícil ser muito difícil de aprender.
Embora isso possa ter sido verdadeuis alguns anos atrás, as coisas mudaram. Com esquemas de licenciamento mais acessíveis e uma renovação completa da interface de Houdini, ela continua a se abrir para pequenos estúdios, artistas e entusiastas. Vindo de outros pacotes, ainda é uma maneira muito diferente de pensar, no entanto.
Neste tutorial, daremos uma visão geral do programa. Vamos começar com técnicas básicas de modelagem para folhas e grama. Vamos cobrir os volumes de vdb de amostragem para distribuir o crescimento da planta e, eventualmente, usar o código VEX e os nós para gerar geometria na mosca.
Vamos ver se o que todo mundo diz sobre Houdini é verdadeiro: Uma vez que você vai processar, você nunca vai olhar para trás!
Baixe os arquivos para este tutorial.
Comece com um modelo de uma ruína que você quer cobrir na folhagem. Certifique-se de nomear suas formas de uma maneira significativa. Isso permite fácil agrupamento da geometria para fins diferentes mais tarde. Split-lo em paredes, pranchas, tijolos, janelas e vidro. Houdini Alembic Import definirá um atributo de caminho na importação. Você pode então usar facilmente um nó Split ou Blast para selecionar as peças desejadas.
Com a ruína no lugar, é hora de começar a criar folhas individuais para usar mais tarde para instancing. Trabalhe sempre com imagens de referência da natureza, se você quiser resultados mais realistas. Precisamos das folhas para ser unilateral e de contagem de poli razoavelmente baixa. Comece fazendo uma curva para se assemelhar à forma da folha externa. Use um nó de secretagem para adicionar alguma tesselação de superfície. Com uma transformação suave, levante levemente o centro na caule. Também adicione um atributo de cor com diferentes tons de verde.
Também precisamos de fios individuais de grama para cobrir o chão. Mais uma vez, fios poligonais unilaterais simples com largura variável são suficientes. De um modo geral, mais variação é sempre melhor. Mas mesmo com apenas cinco formas diferentes, você alcançará resultados bastante realistas. Como a nossa configuração é processual, mais pode ser facilmente adicionado mais tarde. É importante ter certeza de que todas as malhas estão centradas na origem com o pivô no pé. Desta forma, podemos usá-los como instâncias imediatamente.
Há muitas maneiras de decidir onde a grama crescerá. Encontre uma regra que se assemelha a uma distribuição natural. Nós faremos grama crescer em todos os lugares no solo que não é coberto pelo edifício ou entulho. O crescimento precisa ser mais denso e mais longo ao longo de paredes e pedras. Isole o chão da nossa geometria e use um nó de secretagem para obter um nível bastante alto de subdivisões.
Adicione uma cor de ponto de branco às paredes e um cinza no chão. Use o attributeTransfer para mapear a cor da parede no chão. Tweak o raio de mistura no nó para caber em torno da base das paredes. Transforme as paredes em um VDB com vdbfompolygons. Em um atributowrangle, obtenha o valor do VDB em cada ponto com a função VolumeMample. Remova pontos com um valor negativo.
Antes de usar o carimbo de cópia, alguns atributos precisam de preparação. No VEX use um número aleatório para conduzir uma rampa de um número aleatório. Esta é uma maneira visual de controlar a distribuição da escala. Da mesma forma, defina a cor para um verde aleatório. Para fazer os fios apontam em direções ligeiramente diferentes, altere o normal adicionando um deslocamento aleatório na direção X e Z. Voila, você cresceu grama!
Para as plantas de escalada, precisamos escrever nosso próprio solucionador em VEX para imitar um mecanismo de crescimento. Pode parecer assustador, mas vamos passo a passo todo o caminho. Não se esqueça de também usar a referência Houdini no VEX. Para encontrar os pontos raiz, vamos com o mesmo mecanismo que usamos na grama. Comece com alguns pontos no chão, perto da parede.
Nós temos três forças no trabalho. O primeiro entraremos, apontando para longe do chão contra o puxão gravitacional. O segundo é um vetor chamado vagar, apontando em uma direção aleatória ao longo da parede. A terceira força é chamada de parede, apontando para o obstáculo mais próximo. Isso emula o desejo da planta de subir. Usaremos todas as três forças em cada iteração de crescimento.
Agora vem o tempo para nos mergulharmos em VEX usando um wangle point. Em um loop para crescer a plântula em segmentos curtos, adicionando a variável POS, que foi inicializada com a posição inicial. Por enquanto, apenas crescer ao longo do vetor.
É uma boa prática fazer uso das funções CH () e CHV (), para expor parâmetros à interface. Você então pode facilmente experimentar o resultado do algoritmo mudando interativamente esses valores.
Para um olhar mais natural, adicione a força de Wander. Em cada etapa, calcule uma direção aleatória com base em uma função de ruído. Este vetor aleatório adiciona à direção que a semente é movida. Para melhor equilíbrio, também introduza dois fatores de ponderação para a interface, dimensionando nossas forças para cima ou para baixo. O resultado é a videira crescendo com muito mais variação, mas agora penetram obstáculos que se encontram. Para evitar isso, o terceiro tipo de força é útil, a direção da parede.
Adicione a última força ao VEX Loop, amostrando o valor e o gradiente VDB da ruína. Isso lhe dá a distância entre o ponto e a parede, bem como a direção normal da parede. Calcule uma força que aponte para a parede e adicione-a à direção de crescimento. Experimente o VDB uma segunda vez na nova posição para verificar se o ponto está dentro da parede. Se sim, basta empurrá-lo ao longo do normal.
As vinhas ainda não parecem naturais. Isso é porque eles podem mudar a direção rapidamente em cada etapa. Mistura suave entre as instruções do passo anterior e atual para suavizar isso. Você também quer parar de crescer se a posição se move muito longe das paredes. Veja se a distância da parede que você obtém da amostra VDB excede um determinado limite. Basta sair do loop para se isso acontecer.
Outro aspecto das plantas de escalada ainda temos que adicionar - ramificação. Mas isso é muito simples para alcançar. Marque cada passo de crescimento com uma certa probabilidade de ser um ponto de ramificação. Em seguida, execute o algoritmo de crescimento novamente em cada um desses pontos marcados, usando o ponto em si como a raiz.
É uma boa ideia ajustar os parâmetros de crescimento no segundo passe para ser mais vaganoso e menos para cima, para encher as áreas ao longo das paredes.
Agora, criamos seqüências de pontos parecidos com o crescimento do ramo. Faça uso do atributo ID no ponto e crie um nó Adicionar para transformá-los em curvas individuais.
Uma textura UV definida para linhas e colunas irá fornecer UVs ao longo do comprimento da curva, que você então rampa ao longo de seu comprimento individual para um atributo chamado PSCALE. Um nó poliwire transforma curvas em tubos onde você usa $ PScale para espessura. Adicione uma montanha e uma faceta depois, para finalizar os galhos.
Instancando folhas funciona um pouco como os fios de grama mais cedo. Definimos um atributo de distribuição ao longo das curvas saindo do algoritmo de crescimento. Isso é zero no início de cada filial e depois 1 na ponta. Use uma dispersão para colocar pontos ao longo da curva com base nesse atributo. Parece melhor variar o PScale. Use um carimbo de cópia para instâncias as folhas preparadas para esses pontos.
Este artigo originalmente apareceu em Mundo 3D edição 225; compre aqui !
Artigos relacionados:
(Crédito da imagem: Sonny Flanaghan) Aprender a limpar os pincéis adequadamente é uma habilidade importante. Como ..
Neste tutorial, mostraremos como criar um efeito de texto de falha. Efeitos especiais e animações podem ajudar os sites a se destacar, criando um impacto imediato no usuário antes de terem..
Mais e mais frequentemente, os designers e desenvolvedores estão reconhecendo a importância do projeto de movimento no contexto..
Esboçar uma pose de cinco minutos é muito divertido porque oferece apenas tempo suficiente para capturar um forte sentido da pose, mas não há tempo suficiente para excesso de trabalho (ou..
Arte impressionista foi fresca e espontânea, e executada com pinceladas em negrito que não revelou muito detalhes. ..
Ao trabalhar com pano e tecidos em 3D, pode ser difícil conseguir uma boa resolução e uma ótima aparência. Seu trabalho pode..
Um dos meus tutores uma vez me disse que se ele estivesse trancado na prisão pelo resto de sua vida, com nada além de uma caneta e papel, ele não escreveria uma coisa, além de talvez 'ade..
O design da tela percorreu um longo caminho nos últimos anos. Heck, nós nem estávamos dizendo 'design de tela' há alguns anos..