Empellar

Aparells que implementen un sistema flexible per a aparellar l’empellat mitjançant múltiples cadenes d’ossos-D que interaccionen. Es desenvolupa com la base per a un nou sistema modular d’aparell de cara de Rigify. Aquestes són les idees principals en què es basa el sistema:

Cadena d’ossos-D genèrica

Una idea nuclear del sistema és que la major part de la deformació s’ha d’implementar mitjançant un potent aparell estàndard d’encadenat d’ossos-D. Les cadenes en qüestió admeten comportaments avançats tot interaccionant amb altres components de l’aparell. Això contrasta amb tenir múltiples aparells de dominis específics i que cada un generi les seves pròpies cadenes deformants.

La implementació ofereix dues versions de la cadena aparell: skin.basic_chain senzillament associa els Ossos-D als controls sense automatització afegida als propis controls. L’aparell skin.stretchy_chain, a més d’això, interpola el moviment de l’extrem (i un intermedi opcional) als altres controls de la cadena.

Fusió de control automàtic

Pel que fa a la deformació del sistema, consisteix en cadenes d’un o més Ossos-D que connecten punts de control (nodes). Sempre que els controls de dues cadenes se superposen completament, es fusionen automàticament.

Per a cada control fusionat, una de les cadenes se selecciona com a propietària, en base a factors heurístics com la profunditat de paternitat des de l’arrel, la presència de marcadors de simetria .T/.B .L/.R i fins i tot l’ordre alfabètic com a últim recurs. Això es pot sobreseure amb una configuració explícita de prioritat en els casos en què la deducció falli.

El propietari i els seus pares determinen l’automatització addicional que s’atribueix al control. Com a cas especial, si un control es fusiona amb la seva contrapart simètrica .T/.B .L/.R (que es detecta purament per nom), l’automatització de tots els germans de simetria del propietari es fa amb la mitjana.

Controladors pares

Com a alternativa al simple ús de l’os metaaparell pare (ORG) com a pare de controls i mecanismes de cadenes, el nou sistema inclou una interfície per als aparells pares. Proporciona explícitament ossos pares i genera mecanismes d’automatització del control dels pares per als seus controls de cadenes filles per la via d’heretar des de la base adequada i dels mètodes de sobreseïment.

Això fa possible implementar aparells que integren i gestionen les seves cadenes filles de manera intel·ligent per tal d’afegir una automatització extra que és específica a determinades àrees. El sistema d’empellat base inclou un exemple de simple aparell skin.transform.basic que trasllada els seus punts de control fills segons la transformació del seu os de control.

Aparellat personalitzat

Finalment, el nou sistema facilita maneres d’integrar-se amb l’automatització personalitzada directament inclosa en el metaaparell a través de dos components d’aparellat addicionals.

L’aparell skin.anchor genera un únic control amb restriccions heretades, etc., similar a basic.super_copy. No obstant això, també s’integra en el sistema d’empellat com una cadena de longitud zero amb màxima prioritat. Això permet de sobreseure el comportament normal proporcionant un punt de control sota el control total de la usuària, al qual altres cadenes s’associen automàticament.

L’aparell skin.glue, d’altra banda, s’associa al control que es genera en la seva pròpia posició (si no n’hi ha, és un error). Es pot utilitzar per llegir la posició del control des de l’aparellat personalitzat del metaaparell, o bé per injectar restriccions a l’os de control. També és possible detectar el control a la cua de l’os d’adhesió i agafar-lo com a referent de les restriccions, copiant així la transformació entre els controls.

skin.basic_chain

Aquest és l’aparell de cadena bàsic, que fa de pont entre controls amb ossos-D però sense afegir cap automatització als controls en si.

Quan els controls només es mouen, les cadenes es comporten com si empressin nanses automàtiques estàndard, però si es rota i opcionalment s’escala, els controls ajustaran el resultat.

Segments d’ossos-D

Especifica el nombre de segments a usar. Posant-ho a 1 es deshabilita tot el comportament avançat i simplement fa de pont entre els punts amb un os amb Estirament direccionat.

Fusionar rotació i escala de pare

Això es pot habilitar per permetre que la cadena respongui a la rotació i l’escala induïda pels pares dels controls propietat d’altres cadenes amb les quals està fusionat el control d’aquesta cadena.

Usar escalat de nansa

Habilita l’ús de l’escala de control per regir l’escala i/o el gradualitzat de l’Os-D.

Connectar amb emmirallar

Especifica si els extrems de la cadena s’han de connectar suaument quan fusionen controls amb la seva contrapart de simetria .T/.B .L/.R. S’ha d’habilitar l’opció a les dues cadenes perquè funcioni.

Connectar finals coincidents

Indica si l’extrem de la cadena s’ha de connectar a l’extrem oposat d’una cadena diferent quan es fusionen els controls. I així forma una cadena contínua suau en la mateixa direcció. Les opcions pertinents s’han d’habilitar en totes dues cadenes.

Tancar cairell

Especifica si l’aparell ha de generar un mecanisme per formar un cantell agut a l’extrem connectat pertinent, depenent de l’angle format per les ubicacions de control adjacents. Quan l’angle de control es torna més pronunciat que el valor especificat, el gradualitzat es comença a reduir d’1 a 0.

Orientació

Especifica que els controls han d’estar orientats de la mateixa manera que l’os seleccionat, preferiblement a què estiguin alineats amb la cadena.

Copiar a selecció

Copia als aparells seleccionats que tenen la mateixa opció. D’aquesta manera, es permet seleccionar indiscriminadament els ossos sense assignar valors innecessaris.

Prioritat de cadena

Permet sobreseure l’heurística emprada per a seleccionar el propietari principal quan es fusionen controls.

skin.stretchy_chain

Aquest aparell estén la cadena bàsica amb una automatització que propaga el moviment de l’inici i el final, i un control intermedi opcional, a altres controls. Això fa que s’estiri la cadena sencera quan es mou un dels extrems, en lloc de només els Ossos-D immediatament adjacents.

Posició de control intermèdia

Especifica la posició del control intermedi dins la cadena; amb el zero es deshabilita.

Decaïment

Especifica les corbes de decaïment d’influència dels controls inicial, intermedi i final. Zero comporta un decaïment lineal, l’augment amplia la influència i -10 inhabilita completament la propagació de la influència des d’aquest control.

Decaïment esfèric

Permuta els botons per a canviar la forma de la corba de decaïment des d’una corba de potència que amb decaïment 1 forma una paràbola \(1 - x^{2^f}\) a una corba que forma un cercle \((1 - x^{2^f})^{2^{-f}}\).

Decaïment seguint la corba cadena

Calcula la corba de decaïment seguint el llarg de la cadena, en lloc de projectar-se sobre la línia recta connectant els seus punts inicial i final.

Propagar roscat

Especifica si s’ha de propagar el roscat de la cadena als punts de control entre els controls principals.

Propagar escala

Especifica si l’escalat perpendicular de la cadena s’ha de propagar als punts de control entre els controls principals.

Propagar a controls

Permet a altres cadenes de veure el roscat i l’escalat propagat per la via de Fusionar rotació i escala de pare quan els controls es fusionen en aquesta cadena, en lloc de ser completament locals a ella.

Capes de controls primaris

Especifica opcionalment les col·leccions d’ossos per als controls d’extrems.

Capes de controls secundaris

Especifica opcionalment les col·leccions d’ossos per al control intermedi, tot recorrent a Capes de controls primaris si no està definida.

Els controls principals amb decaïment actiu tenen com a efecte que Fusionar rotació i escala de pare s’habiliti automàticament només per a ells.

skin.anchor

L’aparell actua eficaçment com una cadena de longitud zero amb la màxima prioritat, tot assegurant que es converteix en el propietari quan es fusionen els controls amb altres cadenes. I també tot permetent d’ingressar la influència d’automatització personalitzada en el sistema d’empellat.

Totes les restriccions sobre l’os del metaaparell es traslladen al control creat.

Generar os deformant

Crea un nou os deformant afillat al de control.

Neutralitzar control

Fa del control un mecanisme d’os ocult per amagar-lo de la usuària.

Tipus de giny

Selecciona quin giny generar per al control.

Revincular restriccions

Funciona igual com basic.raw_copy., excepte que totes les restriccions es traslladen des d’ORG a l’os de control.

Orientació

Especifica l’os emprat per orientar el control, com amb les altres cadenes.

skin.glue

En aquest aparell, el concepte és similar a skin.anchor, però en lloc de sobreseure controls, es fa servir per llegir o ajustar l’estat dels controls generats per altres aparells. El cap de l’os ha de sobreposar-se a un control d’un altre aparell empellat.

L’aparell configura el seu os ORG per llegir l’estat del control, mentre que trasllada al control totes les restriccions que originalment estaven a l’os.

Mode adherir

Especifica com es conecta l’os ORG amb el control d’empellat.

Fill de control

Fa l’os ORG fill de l’os de control.

Emmirallat del control

Fa de l’os ORG un germà del control amb una restricció de Copiar transformacions des del control. La transformació de l’espai local resultant és la mateixa que la de l’espai local del control.

Emmirallat amb pares

Afilla l’os ORG a una automatització pare que hauria tingut un control propietat de l’aparell adherent, mentre que li fa seguir el control en qüestió. Això inclou tant el moviment directe com l’induït per parternitat del control en la transformació d’espai local de l’os.

Pont deformant

A més d’afegir restriccions d’adherència al control, l’aparell actua com una cadena de deformació bàsica d’un segment. Això és pràctic quan us trobeu que s’ha de fer un pont entre un parell de controls tant amb l’adherent com amb un os deformant.

Revincular restriccions

Funciona igual com basic.raw_copy., excepte que totes les restriccions es traslladen des d’ORG a l’os de control.

Usar referent cua

Revincula el TARGET o qualsevol restricció amb un os referent fantasma i sense especificació de revinculació per referenciar el control localitzat a la cua de l’os adherent.

Apuntar a local amb pares

Intercanvia el referent la cua per funcionar de manera similar a Emmirallar amb pares.

Afegir restricció

Permet d’afegir restriccions típiques d’adhesió amb una Influència específica, com si estigués al començament de l’estiba de restriccions d’os ORG.

skin.transform.basic

Aquest aparell ofereix un controlador pare simplista,que fa servir la translació, la rotació o l’escala regular per a modificar ubicacions però no orientacions o escalats dels seus controls de cadena fills.

Generar control

Indica si s’ha de generar un control visible o emprar la transformació de l’os ORG com a part d’una configuració més complexa i específica de l’aparell.