Animace Humanoidního 3D Modelu Student: Oldřich Linhart Vedoucí: Ing

Animace Humanoidního 3D Modelu Student: Oldřich Linhart Vedoucí: Ing

ZADÁNÍ BAKALÁŘSKÉ PRÁCE Název: Animace humanoidního 3D modelu Student: Oldřich Linhart Vedoucí: Ing. Jiří Kubišta Studijní program: Informatika Studijní obor: Webové a softwarové inženýrství Katedra: Katedra softwarového inženýrství Platnost zadání: Do konce letního semestru 2020/21 Pokyny pro vypracování 1. Vypracujte přehled současných řešení animací humanoidních 3D modelů. 2. Navrhněte postup přípravy 3D modelu pro následnou animaci, včetně vytvoření kostry. 3. S využitím Vámi zvoleného řešení implementujte sadu alespoň pěti základních animací končetin a hlavy humanoidního 3D modelu sbírkového předmětu, vybraného po dohodě s vedoucím práce. 4. Vámi vytvořené animace demonstrujte v jednoduché aplikaci vytvořené ve Vámi zvoleném herním enginu. Seznam odborné literatury Dodá vedoucí práce. Ing. Michal Valenta, Ph.D. doc. RNDr. Ing. Marcel Jiřina, Ph.D. vedoucí katedry děkan V Praze dne 29. ledna 2020 Bakal´aˇrsk´apr´ace Animace humanoidn´ıho3D modelu OldˇrichLinhart Katedra softwarov´ehoinˇzen´yrstv´ı Vedouc´ıpr´ace:Ing. Jiˇr´ıKubiˇsta 4. ˇcervna2020 Podˇekov´an´ı R´adbych podˇekoval m´emu vedouc´ımu pr´aceIng. Jiˇr´ımu Kubiˇstovi za cenn´e rady a pˇripom´ınky. Takt´eˇzbych r´adpodˇekoval sv´erodinˇeza podporu pˇri studiu. Prohl´aˇsen´ı Prohlaˇsuji,ˇzejsem pˇredloˇzenou pr´acivypracoval samostatnˇea ˇzejsem uvedl veˇsker´epouˇzit´einformaˇcn´ızdroje v souladu s Metodick´ympokynem o dodr- ˇzov´an´ıetick´ych princip˚upˇripˇr´ıpravˇevysokoˇskolsk´ych z´avˇereˇcn´ych prac´ı. Beru na vˇedom´ı,ˇzese na moji pr´acivztahuj´ıpr´ava a povinnosti vypl´yvaj´ıc´ı ze z´akona ˇc.121/2000 Sb., autorsk´ehoz´akona, ve znˇen´ıpozdˇejˇs´ıch pˇredpis˚u, zejm´enaskuteˇcnost, ˇze Cesk´evysok´euˇcen´ıtechnick´evˇ Praze m´apr´avo na uzavˇren´ılicenˇcn´ısmlouvy o uˇzit´ıt´etopr´acejako ˇskoln´ıhod´ılapodle § 60 odst. 1 citovan´ehoz´akona. V Praze dne 4. ˇcervna2020 . .. .. .. .. .. .. Cesk´evysok´euˇcen´ıtechnick´evˇ Praze Fakulta informaˇcn´ıch technologi´ı © 2020 Oldˇrich Linhart. Vˇsechna pr´ava vyhrazena. Tato pr´ace vznikla jako ˇskoln´ı d´ılo na Cesk´emvysok´emuˇcen´ıˇ technick´em v Praze, Fakultˇeinformaˇcn´ıchtechnologi´ı.Pr´ace je chr´anˇenapr´avn´ımipˇredpisy a mezin´arodn´ımi´umluvamio pr´avuautorsk´ema pr´avech souvisej´ıc´ıchs pr´avem autorsk´ym.K jej´ımuuˇzit´ı,s v´yjimkoubez´uplatn´ychz´akonn´ychlicenc´ıa nad r´amec opr´avnˇen´ıuveden´ychv Prohl´aˇsen´ına pˇredchoz´ıstranˇe,je nezbytn´ysou- hlas autora. Odkaz na tuto pr´aci Linhart, Oldˇrich. Animace humanoidn´ıho3D modelu. Bakal´aˇrsk´apr´ace.Praha: Cesk´evysok´euˇcen´ıtechnick´evˇ Praze, Fakulta informaˇcn´ıch technologi´ı,2020. Abstrakt Tato pr´acese zab´yv´aproblematikou animace humanoidn´ıch postav. C´ılem pr´aceje sezn´amitˇcten´aˇrese z´akladn´ımi pojmy a principy, kter´ejsou spo- jen´es vytv´aˇren´ımhumanoidn´ıch 3D postav a jejich animac´ı.Je pops´anpro- ces pˇr´ıpravy model˚uk animaci, kter´yje prakticky pˇredveden na modelu, pˇridˇelen´ehood vedouc´ıhopr´ace.Pro model je vytvoˇren´aovl´adac´ıkostra a po- moc´ımetod dopˇredn´ea inverzn´ıkinematiky je demonstrov´anpostup vytv´aˇren´ı kostern´ıch animac´ı.V´ysledkem pr´aceje upraven´ypˇridˇelen´ymodel, pˇripraven´y k vytv´aˇren´ıanimac´ı,sada z´akladn´ıch animac´ıa jednoduch´aaplikace v hern´ım engine Unity, kde lze animace demonstrovat. Kl´ıˇcov´a slova humanoidn´ı animace, rigging, kloubov´asoustava, kostern´ı animace, procedur´aln´ıanimace, pˇr´ım´akinematika, inverzn´ıkinematika, de- monstraˇcn´ıaplikace, Blender, Unity vii Abstract This thesis is focused on humanoid character animation. The goal is to in- troduce the basic terminology and principles associated with creating and animating 3D characters to the reader. The whole process of preparing a character for animation is explained and demonstrated on model assigned by thesis supervisor. Skeleton of the model is created with rigging and skin- ning techniques. Creation of skeletal animation using forward and inverse kinematics is demonstrated. The result of this project is a model with an advanced rig, appropriate for animation. A set of basic animations is created and demonstrated in simple Unity application. Keywords humanoid animation, rigging, articulated structure, skeletal ani- mation, procedural animation, forward kinematics, inverse kinematics, demon- strational application, Blender, Unity viii Obsah Uvod´ 1 1 C´ıl pr´ace 3 2 Teoretick´a ˇc´ast 5 2.1 Reprezentace model˚uve 3D . 5 2.1.1 Polygonov´as´ıt’ ....................... 5 2.1.2 Topologie . 7 2.1.3 Level of Detail . 8 2.1.4 Sculpting . 10 2.1.5 Fotogrammetrie . 11 2.1.6 Zap´ek´an´ıtextur . 12 2.2 Poˇc´ıtaˇcov´aanimace . 12 2.2.1 Keyframing . 13 2.2.1.1 Vertex animation . 14 2.2.1.2 Morph target animation . 14 2.2.2 Procedur´aln´ıanimace . 15 2.3 Kostern´ıanimace . 16 2.3.1 Kostra . 16 2.3.2 Rigging . 17 2.3.3 Degree of Freedom . 18 2.3.4 Skinning . 19 2.3.5 Kinematika . 20 2.3.5.1 Dopˇredn´akinematika . 21 2.3.5.2 Inverzn´ıkinematika . 22 2.3.6 Motion capture . 24 2.3.7 M´ıch´an´ıanimac´ı . 25 2.4 Hern´ıengine . 26 3 Analyza´ a n´avrh 27 ix 3.1 Struktura projektu . 27 3.2 Volba softwaru . 27 3.2.1 V´ybˇermodelovac´ıhosoftwaru . 27 3.2.2 V´ybˇerhern´ıhoengine . 28 3.3 Uprava´ modelu . 30 3.3.1 Anal´yzamodelu . 30 3.3.2 Oddˇelen´ıˇc´ast´ımodelu . 30 3.3.3 Domodelov´an´ıchybˇej´ıc´ıch ˇc´ast´ı . 31 3.3.4 Uprava´ textur . 33 3.3.5 Level of Detail . 34 3.3.6 Kostra . 34 3.4 Animace a v´yvoj aplikace . 35 3.4.1 Import modelu . 35 3.4.2 Animace . 37 3.4.2.1 T-pose . 37 3.4.2.2 Neˇcinnost. 38 3.4.2.3 Ch˚uzea bˇeh . 38 3.4.2.4 Zam´av´an´ı. 38 3.4.2.5 Skok . 39 3.4.3 Design prostˇred´ı . 40 3.4.4 Pohyb a ovl´ad´an´ı. 40 3.4.5 Inverzn´ıkinematika . 41 3.4.6 Kamerov´ysyst´em . 42 4 Implementace 43 4.1 Model a textury . 43 4.2 Level of Detail . 45 4.3 Kostra . 45 4.4 Animace . 47 4.5 Aplikace . 47 Z´avˇer 53 Literatura 55 A Seznam pouˇzitych´ zkratek 61 B Obsah pˇriloˇzen´eho CD 63 x Seznam obr´azk˚u 2.1 Struktura polygonu, norm´alaurˇcujeorientaci plochy [3] . 6 2.2 Dvˇemoˇznosti triangulace nerovinn´ehoˇctyˇr´uheln´ıku[7] . 7 2.3 Deformace modelu v z´avislostina topologii [11] . 8 2.4 Smyˇckyhran a smyˇckyploch [3] . 9 2.5 Decimace a retopologizace modelu [16] . 11 2.6 a) krokov´a;b) line´arn´ı;c) kˇrivkov´ainterpolace kl´ıˇcov´ych sn´ımk˚u[30] 14 2.7 Morph targets [4] . 15 2.8 Typick´avizualizace kost´ıa kloub˚u[1] . 17 2.9 Pˇr´ıkladkostry pro humanoidn´ıpostavu [6] . 18 2.10 a) Collapsing elbow efekt, b) Candy-wrapper efekt [30] . 20 2.11 Retˇezeckloub˚ureprezentuj´ıc´ırukuˇ humanoida [23] . 22 2.12 V´ıceˇreˇsen´ıpˇriv´ypoˇctuinverzn´ıkinematiky [30] . 23 2.13 Iteraˇcn´ıpˇribliˇzov´an´ıkoncov´ehoefektoru ke sv´emu c´ıli[6] . 24 3.1 Porovn´an´ınˇekolika softwar˚upro 3D grafiku [36] . 28 3.2 Pˇridˇelen´ymodel robota . 30 3.3 Proporcion´aln´ıeditov´an´ıv programu Blender . 33 3.4 Zjednoduˇsen´evytv´aˇren´ımasky pro humanoidn´ıpostavy v Unity [38] 39 4.1 Robot s oddˇelen´ymiˇc´astmi . 44 4.2 Model s domodelovan´ymiklouby . 44 4.3 Zapeˇcen´atextura robota . 45 4.4 Origin´aln´ı model (vlevo) a model se sn´ıˇzen´ymstupnˇemdetailu (vpravo) . 46 4.5 Kostra robota . 47 4.6 Sc´enaaplikace . 48 4.7 M´ıch´an´ıanimac´ınohou s animacemi rukou . 49 4.8 Aplikace inverzn´ıkinematiky (pˇr´ıklad1) . 50 4.9 Aplikace inverzn´ıkinematiky (pˇr´ıklad2) . 51 4.10 Aplikace inverzn´ıkinematiky (pˇr´ıklad3) . 51 xi Seznam tabulek 4.1 Detaily vytvoˇren´ych animac´ı . 48 4.2 Ovl´ad´an´ıaplikace . 49 xiii Uvod´ Humanoid je bytost, kter´am´avzhled pˇripom´ınaj´ıc´ıˇclovˇeka.Chod´ıpo dvou noh´ach, m´advˇeruce, trup a hlavu. Bˇeˇznˇese s nimi lze setkat v seri´alech, filmech i poˇc´ıtaˇcov´ych hr´ach, at’ uˇzve formˇerobota, elfa, trola, zlobra, nebo jin´efiktivn´ıbytosti. Animace postav kombinuje umˇeleckou tvorbu s precizn´ımstudiem pohybu ˇzivoˇcich˚ua jejich anatomie. Vyˇzadujei znalost fyziky, zejm´enamechaniky. Vy- tvoˇren´ıpˇresvˇedˇciv´eanimace nen´ıjednoduch´e. Kaˇzd´asc´enamus´ıvypr´avˇetsv˚uj vlastn´ıpˇr´ıbˇeh,kaˇzd´apostava mus´ım´ıt vlastn´ıcharakter. Jedno zdviˇzen´eoboˇc´ı m˚uˇzekompletnˇezmˇenitdojem, kter´ym´apostava vyjadˇrovat. Div´acianimo- van´ych film˚uocen´ıplynul´edetailn´ıanimace u kter´ych lze odhadnout osobnost postavy ˇcistˇez toho, jak se pohybuje. Hr´aˇcizase chtˇej´ı,aby se postavy po- hybovaly responzivnˇe.Chtˇej´ım´ıtkontrolu nad t´ım,co a kdy jejich postava dˇel´a.Pokud bojuj´ıs pˇr´ıˇserou, chtˇej´ız pohybu poznat, kdy bude ´utoˇcit.Chtˇej´ı, aby jejich postava interaktivnˇemanipulovala s hern´ımsvˇetem.Anim´atoˇrimus´ı spolupracovat s program´atory, aby naˇslimezi ovl´ad´an´ıma animac´ıkompromis. Z d˚uvodu st´alevˇetˇs´ıhorozvoje hardwarov´etechnologie maj´ıanim´atoˇrist´ale vˇetˇs´ıvolnost ve vytv´aˇren´ıtechnologi´ı a algoritm˚u,kter´epom´ahaj´ıpostavy oˇzivitve virtu´aln´ımsvˇetˇe. Tato pr´acese zamˇeˇrujena cel´yproces, od pˇr´ıpravy postavy, k metod´am samotn´eanimace a vyuˇzit´ıtˇechto animac´ıv poˇc´ıtaˇcov´ych hr´ach. Pr´aceobsa- huje kapitolu o reprezentaci postav v poˇc´ıtaˇcov´egrafice, zp˚usoby jejich tvorby, ´upravy, manipulace a z´asadynutn´epro budouc´ıanimaci. V dalˇs´ıˇc´astijsou pops´any obecn´eprincipy poˇc´ıtaˇcov´eanimace. Co to je vlastnˇeanimace, jak´ymi zp˚usoby se vytv´aˇr´ı,jak se ovl´ad´a,jak se ukl´ad´a,atd. Dalˇs´ıˇc´astse jiˇzzamˇeˇruje na animaci humanoidn´ıch postav pomoc´ıkostern´ıanimace.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    79 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us