Úvod#

Inverzná kinematika (IK) zjednodušuje proces animácie a umožňuje vytvárať pokročilejšie animácie s menším úsilím.

Inverzná kinematika umožňuje umiestniť poslednú kosť v reťazci kostí a ostatné kosti sa umiestnia automaticky. Je to podobné, ako keď niekto pohne prstom a ruka ho bude nasledovať. Pri bežných technikách póz by ste museli začať od koreňovej kosti a postupne nastavovať kosti, kým nedosiahnete špičku kosti: Keď sa každá rodičovská kosť pohne, jej kosť potomka by zdedila jej polohu a rotáciu. Preto je vykonávanie drobných presných zmien v pózovaní ťažšie ďalej v reťazci, pretože možno budete musieť najprv nastaviť všetky rodičovské kosti.

Použitím inverznej kinematiky sa tomuto úsiliu účinne vyhnete.

Inverzná kinematiky sa väčšinou vykonáva vynútením kostí, hoci v režime pózy existuje aj jednoduchá funkcia Automatická inverzná kinematika. Pracujú rovnakou metódou, ale vynútenia ponúkajú viac možností a kontroly. Podrobnosti o týchto vynúteniach nájdete na nasledujúcich stránkach:

Panel Inverzná kinematika armatúry#

Referencia

Režim:

Režim pózy

Panel:

Vlastnosti ‣ Armatúra ‣ Inverzná kinematika

Tento panel sa používa na výber typu riešiteľa Inverzná kinematika pre armatúru: Vyberte možnosť Štandardná alebo iTaSC. Väčšinou sa používa Štandardná IK.

Štandardná#

Úloha na dopracovanie.

iTaSC#

iTaSC je skratka (instantaneous Task Specification using Constraints) pre okamžitú špecifikáciu úloh použitím vynútení.

iTaSC používa na výpočet Jakobiánu inú metódu, vďaka ktorej dokáže spracovať aj iné vynútenia ako len polohu a orientáciu koncových efektorov: iTaSC je všeobecný riešiteľ IK s viacerými vynúteniami. Táto schopnosť však v súčasnej implementácii ešte nie je plne využitá, spracovať možno len dva ďalšie typy vynútení: Vzdialenosť v karteziánskom priestore a rotáciu kĺbov v priestore kĺbov. Prvý z nich umožňuje udržiavať koncový efektor vnútri, na alebo mimo sféry so stredom v cieľovej polohe, druhým je možnosť priamo ovládať rotáciu kosti vzhľadom na jej rodiča. Záujemcovia o matematiku nájdu krátky opis metódy použitej na zostavenie Jakobiánu tu.

iTaSC akceptuje kombináciu vynútení a viacero vynútení na jednu kosť: riešiteľ vypočíta optimálnu pózu podľa príslušných váh jednotlivých vynútení. Ide o zásadné zlepšenie oproti súčasnému systému vynútení, v ktorom sa vynútenia riešia jedno po druhom v poradí ich definície, takže konfliktné vynútenia sa navzájom prepisujú.

Presnosť

Maximálna odchýlka koncového efektora medzi dvoma po sebe nasledujúcimi opakovaniami, pri ktorej sa získa dostatočne stabilná poloha a riešiteľ by mal zastaviť opakovanie. Nižšie hodnoty znamenajú vyššiu presnosť polohy koncového efektora.

Opakovania

Horná hranica počtu opakovaní.

Riešiteľ

Vyberie inverzný jakobiánsky riešiteľ, ktorý iTaSC použije.

SDLS

Automaticky vypočíta tlmenie odhadom úrovne „zrušenia“ v kinematike armatúry. Táto metóda funguje dobre s vynútením Kopírovať pózu, ale má nevýhodu v tom, že tlmí viac, ako je potrebné, v okolí singulárnej pózy, čo znamená pomalšie pohyby. Samozrejme, je to viditeľné len v režime simulácie.

DLS

Vypočíta tlmenie ručne, čo môže zabezpečiť väčšiu reaktivitu a presnosť.

Maximálne tlmenie

Maximálne tlmenie. Menšie hodnoty znamenajú menšie tlmenie, teda väčšiu rýchlosť a lepšiu presnosť, ale aj väčšie riziko oscilácie pri jednotlivej polohe. 0 znamená žiadne tlmenie.

Epsilon tlmenie

Rozsah tlmiacej zóny okolo singulárnej polohy. Menšie hodnoty znamenajú menšiu zónu riadenia a väčšie riziko prechodu cez singulárnu polohu, čo znamená osciláciu.

Poznámka

Tlmenie a Epsilon sa musia nastaviť pre každú armatúru. Mali by ste použiť najmenšie hodnoty, ktoré zachovávajú stabilitu.

Poznámka

  • Riešiteľ SDLS nefunguje spolu s vynútením Limit vzdialenosti. Ak chcete mať v animácii s vynútením Limit vzdialenosti jedinú pózu, musíte použiť riešiteľ DLS.

  • Obaja riešitelia fungujú dobre, ak nemáte jedinú pózu.

Animácia#

V režime animácie pracuje iTaSC ako riešiteľ IK: je bezstavový a ako počiatočnú pózu pred IK zbiehavosťou používa pózu z interpolácie F-kriviek. Cieľová rýchlosť sa ignoruje a riešiteľ vykonáva približovanie, kým sa nedosiahne daná presnosť. Napriek tomu je nový riešiteľ zvyčajne rýchlejší ako starý a poskytuje funkcie, ktoré sú vlastné iTaSC: viacero cieľov na kosť a viacero typov vynútení.

Simulácia#

Režim simulácie je stavový režim riešiteľa: odhaduje rýchlosť cieľa, pracuje v kontexte „skutočného času“, ignoruje rotáciu z kľúčových snímok (okrem limitácie rotácie kĺbov) a automaticky vytvára zásobník stavu.

Opakovania
Nikdy

Riešiteľ začína od pokojovej polohy a neopakuje sa (konverguje) ani pri prvej snímke. To znamená, že na začiatku animácie bude trvať niekoľko snímok, kým sa dostane do cieľa.

Počiatočná

Riešiteľ začína od pokojovej polohy a opakuje sa, kým sa nedosiahne daná presnosť, ale len na prvej snímke (t. j. snímke, ktorá nemá v zásobníku žiadnu predošlú snímku). Táto možnosť v podstate umožňuje zvoliť inú počiatočnú pózu ako je pokojová póza a je to predvolená hodnota. Pre nasledujúce snímky bude riešiteľ sledovať cieľ integráciou rýchlosti kĺbov vypočítanej riešiteľom Jakobiána v časovom intervale, ktorý snímka predstavuje. Presnosť snímania závisí od koeficientu spätnej väzby, počtu čiastkových krokov a rýchlosti cieľa.

Vždy

Riešiteľ opakuje každú snímku, kým sa nedosiahne daná presnosť. Táto možnosť vynecháva väčšinu dynamického správania iTaSC: maximálna rýchlosť kĺbov a spojitosť medzi snímkami už nie je zaručená ako kompenzácia lepšej presnosti polôh koncových efektorov. Je to prechodný režim medzi Animáciou a Simuláciou v reálnom čase.

Automatický krok

Túto možnosť použite, ak chcete, aby riešiteľ nastavil, koľko čiastkových krokov sa má vykonať pre každú snímku. Medzikrok je delenie času medzi dvoma snímkami, pre ktoré riešiteľ vyhodnocuje rovnicu IK a aktualizuje polohu kĺbu. Viac čiastkových krokov znamená viac spracovania, ale lepšiu presnosť snímania cieľov. Algoritmus automatického kroku odhaduje optimálny počet krokov na dosiahnutie najlepšieho kompromisu medzi spracovaním a presnosťou. Funguje na základe odhadu nelinearity polohy a limitu amplitúdy zmeny kĺbu počas čiastkového kroku. Možno ho nakonfigurovať ďalšími dvoma parametrami:

Minimum

Navrhované minimálne trvanie medzikroku (v sekundách). Algoritmus automatického kroku môže ďalej skrátiť medzikrok na základe rýchlosti kĺbov.

Maximum

Maximálne trvanie medzikroku (v sekundách). Algoritmus automatického kroku nepovolí dlhší medzikrok, ako je táto hodnota.

Kroky

Ak je funkcia Automatický krok vypnutá, môžete týmto parametrom zvoliť pevný počet medzikrokov. Medzikrok by nemal byť dlhší ako 10 ms, čo znamená, že počet krokov je 4 pre animáciu s 25 snímkami za sekundu. Ak sa zdá, že armatúra je medzi snímkami nestabilná (vibruje), môžete zvýšiť stabilitu zvýšením počtu krokov.

Spätná väzba

Koeficient chyby polohy koncového efektora na nastavenie korekčnej rýchlosti kĺbu. Časová konštanta korekcie chyby je inverznou hodnotou tejto hodnoty. Tento parameter má však malý vplyv na dynamiku armatúry, pretože algoritmus v každom prípade vyhodnocuje cieľovú rýchlosť. Nastavenie tohto parametra na hodnotu 0 znamená „otvorenie slučky“: riešiteľ sleduje rýchlosť, ale nie polohu; chyba sa bude rýchlo hromadiť. Príliš vysoké nastavenie tejto hodnoty znamená nadmerné množstvo korekcií a riziko nestability. Hodnota by sa mala pohybovať v rozmedzí 20 až 100. Predvolená hodnota je 20, čo znamená, že chyby snímania sa korigujú v typickom čase 100-200 ms. Koeficient spätnej väzby je dôvodom, prečo sa armatúra v režime simulácie naďalej mierne pohybuje, aj keď sa cieľ prestal pohybovať: zostatková chyba sa postupne potláča snímku za snímkou.

Maximálna rýchlosť

Indikatívna maximálna rýchlosť kĺbu v radiánoch za sekundu. Tento parameter má dôležitý vplyv na dynamiku armatúry. Menšia hodnota spôsobí, že sa armatúra bude pohybovať pomaly a zaostávať, ak sa ciele pohybujú rýchlo. Nastavením tohto parametra na nízku hodnotu môžete simulovať zotrvačnosť.

Panel Inverzná kinematika kostí#

Referencia

Režim:

Režim pózy

Panel:

Vlastnosti ‣ Kosť ‣ Inverzná kinematika

Tento panel sa používa na ovládanie spôsobu práce s kosťami pózy v reťazi IK.

Roztiahnuť IK

Roztiahne vplyv na cieľovú IK.

Zamknúť

Zakáže pohyb okolo osi.

Tuhosť

Tuhosť okolo osi. Vplyv vypnutý, ak sa používa Zámok.

Limit

Obmedzí pohyb okolo osi.

Riešiteľ iTaSC#

Ak sa použije Riešiteľ IK iTaSC, panel kostí IK sa zmení a pridá tieto dodatočné parametre.

Ovládanie rotácie

Aktivuje obmedzenie rotácie kĺbu na danej kosti. Rotácia pózy vypočítaná z interakcie Akcie alebo Užívateľského rozhrania sa konvertuje na hodnotu kĺbu a odovzdá sa riešiteľovi ako cieľ pre kĺb. Tým získate kontrolu nad kĺbom, zatiaľ čo riešiteľ stále sleduje ostatné ciele IK. Túto funkciu môžete použiť na zadanie preferovanej pózy pre kĺby (napr. pokojová póza) alebo na animáciu uhla kĺbu tým, že na ňom prehráte akciu.

Váha

Dôležitosť vynútenia rotácie kĺbov na základe vynútenia váhy v prípade, že nie je možné dosiahnuť všetky vynútenia súčasne. Napríklad ak chcete silne vynútiť rotáciu kĺbov, nastavte vysokú váhu na vynútenie rotácie kĺbov a nízku váhu na vynútenie IK.

Príklad výbavy ramena#

Táto ruka využíva dve kosti na prekonanie problému s krútením predlaktia. Na zastavenie ohýbania predlaktia sa používa IK uzamknutie, ale predlaktie sa dá stále krútiť manuálne stlačením R Y Y v režime pózy alebo použitím iných vynútení.

../../../../../_images/animation_armatures_posing_bone-constraints_inverse-kinematics_introduction_example.png

Príklad IK ramena.#

Upozorňujeme, že ak sa použije Pole Target, uzamknutie IK na koreňovej kosti nebude fungovať.