ebooksgratis.com

See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Filledukkefysikk - Wikipedia

Filledukkefysikk

Fra Wikipedia, den frie encyklopedi

Språk: Denne artikkelen trenger språkvask og korrektur for å oppnå en høyere språklig standard.
Uoversatt: Denne artikkelen er ikke fullstendig oversatt til norsk.
Bilde fra tidlig animasjon fra 1997, laget vha. filledukkefysikk
Bilde fra tidlig animasjon fra 1997, laget vha. filledukkefysikk

I en fysikkmotor i en datamaskin, er filledukkefysikk (engelsk Ragdoll Physics) en prosedyrisk animasjon som ofte blir brukt i stedet for statiske dødsanimasjoner.

Innhold

[rediger] Introduksjon

I tidlige videospill ble det brukt animasjoner laget manuelt for karakterenes dødssekvenser. Fordelen var at dette brukte lite CPU-kraft, siden alt som måtte gjøres var å animere en «døende» karakter ble valgt fra et satt nummer av tidligere tegnede animasjoner.

Stadig kraftigere datamaskiner gjorde begrensete sanntids fysikksimuleringer mulige. En filledukke er derfor en samling av flere stive legemer. Disse er igjen vanligvis knyttet til et bein i grafikkmotorens skjelettanimasjonssystem. Legemene er forbundet til restriksjoner som begrenser hvordan beina kan bevege seg i forhold til hverandre. Disse begrensningene blir brukt når karakteren dør, og bestemmer bevegelsen til leddene for karakteren, noe som oftest ser mer realistisk ut.

På grunn av begrensninger i programvaren vil leddene til figurene ha liten eller ingen ledd/skjelettmuskulatursstivhet, noe som fører til en karakter med en hofte som faller på samme måte som en lekedukke eller filledukke, og ender ofte i usannsynlige posisjoner. Herfra kommer begrepet.

Det første spillet som gjorde seg bruk av filledukkefysikk var det Jurassic Park lisensierte spillet Jurassic Park: Trespasser, som fikk sprikende kritiker; de fleste negative. Spillet et stort antall bugs, men ble husket som en pioneer i fysikkmotorer for videospill.

Bruk av filledukkefysikk i dag strekker seg utover dødssekvenser — det finnes slåssespill der spilleren kontrollerer en del av kroppen av karakteren og resten følger etter, som Rag Doll Kung Fu, og til og med racingspill som FlatOut serien.

[rediger] Metoder

Filledukker har blitt implementert ved hjelp av Featherstones algoritme og fjærdemper kontakter.[1] En alternativ metode benytter seg av restriksjonsløser og idealiserte kontakter.[2] Selv om begrenset-stiv-kropp metoden for filledukker er mest vanlig, finnes det andre «pseudo-filledukke» teknikker i bruk.

  • Verlet integration: brukt av Hitman: Codename 47 og gjort populær av Thomas Jakobsen [1], modellerer denne teknikken hvert av beina til karakteren som et punkt koblet til et vilkårlig antall andre punkter via enkle begrensninger. Verletbegrensninger er mye enklere og raskere å beregne enn de fleste av de andre fullt modellerte rigide kroppssystemene, noe som fører til mye mindre bruk av CPU for karakterene.
  • Inverse kinematics etterbehandling: brukt i Halo. Denne teknikkene er avhengig av å spille av en forhåndssinnstillt dødsanimasjon og siden bruke omvendt kinematikk for å tvinge karakteren inn i en mulig posisjon etter at animasjonen er avspilt. Dette betyr at en karakter kan ende opp med å klippe gjennom verdenen under en animasjon, men etter at animasjonen er avsluttet vil alle bein være på et gyldig sted.
  • Blended ragdoll: Denne teknikken (brukt i Halo 2) fungerer ved å spille av en forhåndslaget animasjon, men begrenser animasjonen til det et fysisk system vil tillate. Dette letter på den slarkete filledukke-følelsen, men tilbyr korrekt interaksjon med omgivelsene. Dette krever både animasjonsprosessering og fysikkprosessering, noe som gjør den enda tregere enn kun tradisjonell filledukketeknikk, men dette blir overskygget av fordelen med den ekstra realismen dette tilbyr.

[rediger] Fordeler / ulemper

Siden å utføre simuleringer er dyrt CPU-messig, benytter de fleste spill seg av tilnærmelsesvise filledukker for sine karakterer.

  • Bein i ekstremitetene, som fingre, blir som oftest ikke simulert.
  • Enkle ledd blir brukt i sted for ekte begrensninger som blir gitt av et ekte skjelett. For eksempel, blir et menneskelig kneledd ofte modellert som et stivt hengsel, selv om et ekte kne vil tillate noe rotasjon.
  • Forenklede kollisjonshylster er brukt for å oppdage kontakt med andre rigide kropper, i stedet for å oppdage kollisjoner med rutenettet.

Hovedfordelen med filledokker over tradisjonell animasjon er at de åpner for mye mer korrekt samhandling med omgivelsene. Der det ville ha vært uoverkommelig tidskrevende å prøve å håndlage egendefinerte animasjoner for alle mulige omstendiger, overtar filledukker og genererer en akseptabel tolkning av hendelser på direkten.


[rediger] See also

  • Spillfysikk
  • Fysikkmotor
  • Prosedyrisk animasjon
  • Featherstones algoritme


[rediger] References

  1. ^ Mal:Cite patent "Method and system for generating realistic collisions in graphical simulations"
  2. ^ Mal:Cite conference

[rediger] Eksterne lenker

[rediger] Eksempler


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -