Yeti Tutorial 07 - Guide Curves

Guide Curves

Guide Curves sao curvas normais do Maya usadas para guiar fios ou instâncias no Yeti. Sua principal utilidade é poder ligá-las a um Rig e animar os fios ou instâncias de maneira fácil e eficiente.

Para utilizá-las em uma tree do Yeti, primeiro é necessário criar Guide Sets, que são grupos de Guides que serão trazidos para o grafo através do node Import.

Para criar um Guide Set, selecione todas as guides que deseja colocar no grupo e ir em Create->Set->Set. Depois, vá na aba Graph->Input Guide Set do node superior do Yeti e adicione todos os sets criados.

Para adicionar ou remover curvas à um Guide Set, pode-se usar o Relationship Editor em Windows->Relationship Editors->Sets.

Importante: O pivot de cada curva deve estar sempre no [0,0,0], sendo que só possível movê-la no Edit Mode (F8). Caso o pivot esteja fora, haverá um acúmulo desta translação e o posicionamento incorreto dos fios e instâncias do Yeti (Double Transformation). Para colocar um pivot no [0,0,0], podemos usar o comando Freeze Transformations seguido de Reset Transformations, na aba Modify. Também é importante que o primeiro ponto de controle de cada curva esteja rente à malha, nem infiltrando-a nem muito distante da sua superfície. Podemos usar a função de Snap para posicionar o primeiro ponto da curva rente a malha. Caso esta distância não esteja adequada, instâncias ou penas poderão perder a referência e se comportar de maneira incorreta. Por fim, caso as penas estejam sendo instanciadas invertidas, deve-se inverter o sentido da curva em Curves->Reverse Direction ou mesmo reconstruí-las em Curves->Rebuild.

Os Guides Sets são importados no grafo e podem ser usados no node de Scatter para controlar a densidade, no node de Grow para controlar o tamanho dos fios e com o node de Guide que funcionará como um Comb e Clumping.

Quando adicionamos um Guide Set no node superior do Yeti, são liberados atributos extras em cada curva para controlar os parâmetros dos fios. Estes parâmetros são como os atributos de um Groom, mas já conectados automaticamente com suas funções.

Definimos sua área de influência com o Inner e Outer Radius. O Inner Radius será a área que os parâmetros da curva atuarão com 100% de efeito. Já o Outer Radius estipula até onde será a área de decaimento do efeito desses parâmetros, sendo que fora dele terá 0% de efeito.

Arquivo de Exemplo: GuideSet_Attributes.ma

Guide Sets deformando Grooms

Os parâmetros que o Guide Set cria nas curvas são bem limitados comparados a tudo que o Groom tem a oferecer. Porém, não é possível colocar controladores de Rig em um Groom, o que impossibilita a animação direta de suas guias.

Uma maneira de se obter as vantagens de cada método é criar um sistema na qual o Guide Set controla a deformação das guias do Groom, mas todos os atributos são criados e controlados pelo Groom. Assim podemos animar um Groom.

Colocamos uma guia de Groom na mesma posição que cada curva, acertando o seu tamanho para ficar igual ao da curva. Também é possível selecionar todas as curvas (nunca o grupo) e usar o comando abaixo no Script Editor para convertê-la em um Groom automaticamente.

pgYetiConvertGuideSetToGroom(string guide_set, string mesh_object, float stepSize)

  • O primeiro parâmetro string guide_set será o nome do Guide Set criado.
  • O segundo parâmetro string mesh_object será o nome da malha.
  • O terceiro parâmetro stepSize é a resolução da conversão, sendo 0.1 o valor comum a ser usado.

Exemplo: pgYetiConvertGuideSetToGroom(“meu_guideSet”, “bunnyShape”, 0.1)

Arquivo de Exemplo: Guides_Deforming_Grooms.ma

Anterior: 06. Convert Node Próximo: 08. Instance Node