Utilizator:
Parola:
Am uitat parola... | Cont nou!


Articole Resurse Echipe Competiții Proiecte Forum DevBlogs Locuri de muncă GDROMag Issue#1 GDROCon 2007

 
Forum » Programare » Grafică » facial animation :)




Pagina 1 din 1 [ 1 ]

Mesaj Info autor
    Postat la 28 May 2008 17:56:34    Subiect: facial animation :)
boboS info:

boboS:

Am o animatie unde modific vertecsii pe GPU in functie de matricile de la oase si cate de mult influenteaza osu vertexu. In fine. Ideea e ca nu stiu cum as putea sa fac si o animatia faciala cat mai simpla.

Eu ma gandeam sa tin minte vertecsii de la buze sa zicem intr-un component in plus care sa memoreze cat de mult si in ce parte se transforma (pentru a da din buze).

Pe de o parte e naspa ca daca optimizez meshu si ordinea vertecsilor se schimba trebuie sa iau manual fiecare vertex in parte sa vad care e si cat se schimba. E cam multa munca zic eu.

Plus ca daca vreau sa se animeze buzele trebuie sa fie mai multe faze de pozitie a vertexului deci ar cadea faza cu componentul in plus de la vertex avand in vedere ca trebuie sa il modific mereu, deci modific buferul pentru fiecare frame Sad

Ma gandeam sa trimit mai multe variabile (pozitii) in componentul ala la shader (oricum pentru animatie la buze nu trebuie mai mult de sa zicem 3,4 pozitiipt vertex) si sa fie accesate pe rand in functie de timerul din aplicatie. Adica primul frame sa fie accesat primu component, in al doilea frame cu ajutorul unui calcul matematic cu timpul scurs aproximativ sa fie accesat al doilea etc.. DAR CRED ca sunt prea multe informatii trimise catre shader.
/LE: SAU sa fie pozitia initiala si cea finala si in functie de timp sa se modifice putin cate putin spre cea finala.

Vreo idee care sa ma ajute sa nu modific bufferele de aiurea sa pun placa video sa astepte? Sa incerc oare cu oase mai mici ? Ma gandeam ca animatia cu vertecsi e mai reala si mai usor de animat de mine decat cea cu oase.

Ultima editare efectuată de boboS pe 28 May 2008 18:44:44; 3 editări în total

"Noi ne facem ca muncim , ei se fac ca ne platesc"


Status:
Înregistrat pe:
03 Oct 2006 15:53:21
Vârsta: 26 ani
Mesaje: 961
Locatie: Galați
Programator

 
    Postat la 28 May 2008 19:12:16    Subiect: < fara subiect >
Dark info:

Dark:

Vezi aici.

Pentru high-fidelity stuff se folosesc blend shapes (aka morph targets), dar halesc memorie. Pentru low-fidelity (game) stuff poti folosi cu incredere skinning. Ca sa nu ai probleme cu limita de oase (impusa de numarul de constante pe care le poti trimite unui vertex shader), randeaza capul separat. 80 de oase iti ajung pentru aproximativ orice animatie faciala pe care o vrei in gameplay.

Pentru a compensa calitatea mai scazuta obtinuta prin skinning poti folosi diverse trick-uri, cum ar fi sa animezi normal map-ul in functie de "tensiunea" din fiecare os, pentru a face riduri si alte chestii. Sint articole pe net despre asta, dar nu-i mare lucru de inteles cum se implementeaza odata ce ai ideea. Practic ai un normal map "relaxat" si unul "incordat" si blend-uiesti intre ele pe baza unui criteriu dedus din animatie.

"Am crezut ca esti ceva mai avansat" - Nekitu, 2008 A.D.
Autobaza


Status:
Înregistrat pe:
12 May 2007 20:12:30
Vârsta: ? ani
Mesaje: 740
Locatie:
Programator

 
    Postat la 28 May 2008 20:07:13    Subiect: < fara subiect >
boboS info:

boboS:

Adevarul este ca am incercat in 3dsmax sa animez o sfera cu o crapatura care cica e gura. Am setat niste oase dar iese urat tare.

Avand in vedere ca nu vreau sa-mi pierd timpul pe meleagurile intunecate ale modelingului si animatiei (ca oricum is in urma cu programarea) ma gandeam daca este vreun plugin pentru 3dsmax sau tool ceva care sa aiba setate oase in locu lor la un mesh de referinta ceva pentru animatie. Nu vreau ceva extrem de complicat dar nici nu vreau sa sochez lumea cu creatiile mele de sfere sparte.


"Noi ne facem ca muncim , ei se fac ca ne platesc"


Status:
Înregistrat pe:
03 Oct 2006 15:53:21
Vârsta: 26 ani
Mesaje: 961
Locatie: Galați
Programator

 

Pagina 1 din 1 [ 1 ]


Server time: 02:30:10 24.05.2012



[ Termeni si conditii | Contact | F.A.Q. | Funny Pictures ]

© 2006 - 2012 Copyright 7thFACTOR Entertainment - All rights reserved