Differences

This shows you the differences between two versions of the page.

Link to this comparison view

vdvac:lab7 [2026/05/14 11:15]
anca.morar
vdvac:lab7 [2026/05/14 11:35] (current)
anca.morar [Inverse kinematics cu algoritmul Fabrik]
Line 1: Line 1:
 ====== Laboratorul 7 ====== ====== Laboratorul 7 ======
  
-===== Animația prin plasă poligonală ​=====+===== Inverse kinematics cu algoritmul Fabrik ​=====
  
-  ​Plasa poligonala ​(mesha fost prima metoda de reprezentare a personajelor , direct inspirata din tehnicile de animatie folosite in plan +**Forward And Backward Reaching Inverse Kinematics ​(FABRIK)** 
-  * Personajul este reprezentat printr o plasa poligonala 3D +  * abordare iterativa care rezolvă problema IK 
-  * Animatia personajului consta in deformarea plasei, fiecarui cadru imagine corespunzandu-“poza” ​(ipostazaa personajului +  * determină parametrii articulatiilor astfel incat un end effector al structurii articulate sa ajunga intr-o pozitie dorita ​(target)
-  * Numarul de varfuri ale plasei si conectivitatea lor nu se modifica de la o poza la alta , ci doar pozitiile varfurilor +
-  * De regula , animatorul defineste doar un numar de «poze cheie», restul pozelor fiind obtinute prin interpolarea intre pozele cheie+
  
-**Avantajul metodei** +**Structura articulata** 
-  * Animatorul poate decide cat de apropiat de realitate sa fie modelul personajului. Teoreticcu suficiente poligoane ​se poate obtine orice+  * Legăturile reprezintă obiectele rigide din care este alcătuită structuraex. oasele. 
 +  * Punctele de joncțiune reprezintă articulațiile prin care sunt conectate obiectele rigide 
 +  * Structura ierarhică ​se reprezintă printr-un arbore, în care: 
 +    * nodurile reprezintă legăturile 
 +    * arcele reprezintă joncțiunile  
 +  * Lanț = secvență de legături și joncțiuni 
 +  * End effector = joncțiune fără copii (capătul unui nod frunză) ​
  
-**Dezavantajele metodei** +**Algoritm** 
-  * Trebuie creat cate un model 3D (pozapentru fiecare cadru cheie +  * Date de intrare:  
-  Consumul de memorie creste odata cu numarul de poligoane ale modelului +    * pozițiile joncțiunilor $p_i$ cu $i = 0 .. n-1$ 
-  Pozele din cadrele cheie trebuie sa fie foarte apropiate pentru ​a se obtine rezultate bune +    * poziția dorită ​(target$t$ 
-  Animatiile produse sunt greu de refolosit , ceea ce duce la costuri mari +    distanțele dintre fiecare două joncțiuni (lungimea fiecărei legături): $d_i = |p_{i+1}-p_i|$ ​cu $i = 0 .. n-2$ 
-  Calitatea animatiei depinde de inspiratia si talentul animatorului. Spre deosebire de o animatie 2D, o animatie 3D este mult mai greu de conceput: trebuie sa arate cat mai natural din orice pozitie 3D ar fi privita+    dacă $|p_0 - t | > d_0 + d_1 + ... + d_{n-2}$ (target-ul nu poate fi atins) atunci 
 +      * se găsește vectorul $(t - p_0)$ și se determină poziția relativă ​fiecărei joncțiuni de-a lungul vectorului (se întinde întreg lanțul în direcția punctului țintă) 
 +      altfel (target-ul poate fi atins) 
 +        * se calculează distanța dintre end effector și target $diff = |p_{n-1} - t |$  
 +        ​* cat timp ($diff > prag) 
 +          * executa iteratia forward 
 +          * executa iteratia backward
vdvac/lab7.1778746502.txt.gz · Last modified: 2026/05/14 11:15 by anca.morar
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0