Automatiserad riggning och tidssparande
|
|
- Hans Sundström
- för 6 år sedan
- Visningar:
Transkript
1 Bachelor Thesis Digital Game Development Thesis no: TA-2013: Automatiserad riggning och tidssparande Dimitri Kajhanidis School of Computing Blekinge Institute of Technology SE Karlskrona Sweden
2 This thesis is submitted to the School of Computing at Blekinge Institute of Technology in partial fulfillment of the requirements for the degree of Bachelor of Science in Digital Game Development. The thesis is equivalent to 10 weeks of full time studies. CONTACT INFORMATION: Author: Dimitri Kajhanidis University advisors: Veronica Sundstedt Jonas Petersson Technical Artist in Games School of Computing Blekinge Institute of Technology SE Karlskrona Sweden Internet: Phone: Fax:
3 SAMMANFATTNING Denna uppsats handlar om programmering av autoriggningsverktyg för Maya 2013 som skulle effektivisera animeringsproduktionspipelinen genom att spara tid vid riggningsdelen av animeringspipelinen. Vidare handlar denna uppsats om utvärdering av tiden som man kan spara vid användningen av detta autoriggningsverktyg. Verktyget är flexibelt på det sätt att den stödjer humanoida karaktärer och är användbar för mer än mänskliga karaktärer. Tiden som spenderas att manuellt rigga samma typ av karaktärrigg varierar från person till person och det kan ta väldigt lång tid, därför gjordes en enkät som delades ut till deltagare som är erfarna inom riggningsområdet. Resultaten av denna enkät hjälper vid beräkningen av tiden som kan sparas med autoriggningsverktyg i en animeringspipeline. Resultatet av undersökningen visar att man kan spara tid genom att använda sig ut av ett autoriggningsverktyg istället för att rigga manuellt. Tiden som kan sparas med detta autoriggningsverktyg är nästan sju timmar för mänskliga karaktärer och nästan 8 timmar för kentaur. Keywords: Automatiserad riggning, Character rigging, Animation pipeline, Rigging pipeline.
4 Innehållsförteckning 1 INLEDNING Bakgrund Problemformulering Syfte Frågeställning och hypotes Avgränsning TIDIGARE KUNSKAP Automatiserad riggning Interface METOD Datainsamling Tidsestimering Urval av funktionalitet på verktyget RESULTAT Autoriggningsverktyg Namn och skelettbegränsningar Kontrollriggsfunktionalitet Armriggsfunktionalitet Fingerriggsfunktionalitet Benriggsfunktionalitet Huvudriggsfunktionalitet Mänsklig ryggradriggsfunktionalitet Djurryggradrigg- och svansriggsfunktionalitet Bindning av huvud och axlar Bindning av höft och resten av kroppen... 11
5 4.1.3 Interface Kodimplementering Egendesignade controllers Riggningsmetoder Metod för riggskapning Metod för förstörning av kopplingar Metod för återskapning av kopplingar Enkätens innehåll Enkätens resultat Tidsutvärdering för varje kroppsdel Beräkning av tid spenderad per karaktär ANALYS OCH DISKUSSION Analys av enkätens resultat Analys av verktyget Verktygets framtida funktionalitet REFFERENS BILAGA
6 Figur Förteckning Figur 1.1-a Pipeline för modelleringsschema som användes i ett tidigare skolprojekt där uppgiften var att tillverka ett spel som kallas Saints of the asylum Figur 1.1-b Pipelinen börjar vid skelettskapning och sluttar vid export... 2 Figur 4.1-a Animeringspipelinen som autoriggningsverktyget ska effektivisera Figur 4.1-b (a) (b) Namn och antal joints för olika kroppsdelar Figur 4.1-c Arm rigg Figur 4.1-d Finger rigg Figur 4.1-e Ben rigg Figur 4.1-f Huvud rigg Figur 4.1-g Mänsklig ryggradrigg rigg Figur 4.1-h Djur ryggradrigg och svansrigg rigg Figur 4.1-i Bindning av huvudet och axlarna Figur 4.1-j Bindning av Höften och resten av kroppen Figur 4.1-k Bild av studiens verktygsinterface Figur 4.1-l Metod för en egendesignad controller Figur 4.2-a Diagram för skapning och placering av controller Figur 4.2-b Diagram för skapning och placering av controllers Figur 4.2-c Diagram för den utvärderade tiden för att binda controllers Figur 4.2-d Diagram för den utvärderade tiden för att binda controllers Figur 4.2-e Diagram för den utvärderade tiden att binda ihop de lösa kroppsdelarna Figur 4.2-f Diagram som vissar hur ofta deltagarna riggar karaktärer Figur 4.2-g Diagram som vissar den maximala och minimala tiden per uppgift Figur 4.2-h Diagram för den beräknade tiden att skapa varje rigg för kroppsdel Figur 4.2-i Diagram för den beräknade tiden som skulle ta att rigga en mänsklig karaktär Figur 4.2-j Diagram för den beräknade tiden som skulle ta att rigga en kentaur karaktär
7 1 INLEDNING Inom Technical Artist utbildningen har vi lärt oss olika 3D-animeringsmetoder däribland morfanimering och skelettanimering. När det gäller skelettanimering har vi lärt oss hur viktigt det är att man har ett bra kontrollsystem när man animerar en karaktär. Dessa kontrollsystem kan variera från karaktär till karaktär och kan förenkla animeringsprocessen. Vid karaktärsriggning i programmet Maya används ofta kurvor som styr skelettet och dessa kallas handels eftersom de funkar som handtag på dörr; man tar i dem för att styra karaktären. Att manuellt skapa, placera, och binda dessa handels kan vara ett tidskrävande arbete. Detta har väckt mitt intresse om hur man kan utföra detta arbete på ett snabbare och effektivare sätt och därför valde jag att fördjupa min kunskap inom detta område. 1.1 BAKGRUND Om man tittar tillbaka på och 90-talet hade de flesta spelen 2D-grafik. Under den senare delen av 90-talet och framåt har spelbranschen satsat mycket på 3D grafik och idag kan man hitta allt fler spel som har 3D-grafik. Det som brukar avgöra mellan 2D eller 3D-animering är oftast typen av spel och den grafiska känslan som tillverkaren vill förmedla. Det som också kan skilja dessa spel åt är förutom grafiken metoden man använder för att animera karaktärerna i spelen. Det finns en enkel arbetsprocess som man kan följa när man ska animera en 3D-karaktär. Arbetet delas in i olika områden: modellering, riggning och animering. Varje område kan ha sin egen produktionspipeline. Pipeline är ett arbetsschema som följs under produktionsprocessen. Varje pipeline är oftast uppdelad i flera delar och anpassad för användarens behov. En anledning att dela arbetsprocessen i pipelines är att förbättra och snabba upp produktionen. Ett exempel på en pipeline är presenterad i Figur 1.1-a. Figur 1.1-a Pipeline för modelleringsschema som användes i ett tidigare skolprojekt där uppgiften var att tillverka ett spel som kallas Saints of the asylum. 1
8 När det gäller pipelines förklarar Siomacco et al. (2006) In order to allow the character pipeline to become more efficient, the linear pipeline must be broken into as many parallel workflows as possible. This allows the members of the production team to work simultaneously instead of sequentially and to specialize in specific tasks in which they excel. Breaking the character setup pipeline into multiple parallel workflows primarily requires separating the controls used for animation and the deformable geometry used for the final rendered shots. In order to accomplish the parallelization of these tasks, two tools need to be built using Maya s built-in MEL scripting language: A Character Setup Tool and an Animation Transfer Tool. (s. 780). Problemet som kan uppstå med pipelines är att vissa delar blir beroende av varandra. Ett exempel på detta beroende kan vara att animeringen inte kan påbörja innan 3D-modellen är klar. Ett exempel på en animeringspipeline illustreras i Figur 1.1-b. I detta exempel har riggning och animering samma pipeline. Detta för att kunna visa på beroendet som kan skapas bland de olika delarna i en produktionspipeline. De röda fälten hamnar i riggningsgruppen. Joints placeras på samma plats där lederna på 3D modellen finns. Oftast används controllers som påverkar joints och med hjälp av dem justeras karaktärens ställning. Att manuellt skapa och placera controllers kan vara repeterande och tidskrävande arbete. Tiden som det tar varierar beroende på hur avancerat kontrollsystem man har. Figur 1.1-b Pipelinen börjar vid skelettskapning och sluttar vid export. Som det har nämnts ovan har mitt intresse för att effektivisera arbetsprocessen när man animerar spelkaraktärer väckts och jag valde att fokusera bara på riggningsdelen av denna process. För att göra detta valde jag att skapa ett automatiserat verktyg som kan snabba upp riggningsprocessen i produktionen. Verktyget skapas för programvaran Maya 2013 och anledningen till det är att Maya 2013 är en av de mest använda 3D-programvaror i spelbranschen. 1.2 PROBLEMFORMULERING När man läser om automatiserade riggningsverktyg blir deras användningsområde tydligt. Tiden som man kan spara vid användning av dessa verktyg brukar dock vara svår att definiera vilket gör det svårt att fatta beslut gällande om man ska använda riggningsverktyg i sin produktionspipeline eller ej. Alla exempel på riggningsverktyg som kommer att presenteras har enbart stöd för mänskliga karaktärer. Vad händer om man behöver rigga en kentaur eller om karaktären har svans? Ska man själv manuellt rigga delen som dessa verktyg inte har stöd för eller är det bättre att använda ett verktyg som har stöd för det? 2
9 1.3 SYFTE Syftet med denna uppsats är att undersöka om man kan snabba upp den manuella riggningsdelen av animeringspipelinen för spelkaraktärer med ett autoriggningsverktyg samt att utvärdera hur mycket tid det kan sparas. 1.4 FRÅGESTÄLLNING OCH HYPOTES Kan riggningsdelen av animeringspipelinen för spelkaraktärer snabbas upp med användning av ett autoriggningsverktyg? Hur mycket tid sparas när man använder ett autoriggningsverktyg i jämförelse med manuell riggning? Min hypotes är att riggningsdelen av karaktärsanimeringspipeline kan snabbas upp med ett autoriggningsverktyg som kommer att automatiskt rigga karaktärsskelett. 1.5 AVGRÄNSNING En skillnad mellan karaktärsrigg för spel och film brukar vara antalet joints som ett skelett kan innehålla. Det beror på hur man renderar fram bilder. Renderingstiden per bild kan skilja sig mycket när det gäller scener för film och spel. Det kan ta flera timmar per bild för en filmscen medans för en spelscen brukar det ta millisekunder. Så för att kunna rendera såpass snabbt vissa begränsningar måste göras. Resten av produktionen skiljer sig inte mycket åt. Denna undersökning fokuserar på spelanpassade animationer och inte filmanpassade animationer. Därför har riggningsverktyget som skapades för undersökningen ett spelspecifik funktionalitet för spelkaraktärer. 3
10 2 TIDIGARE KUNSKAP 2.1 AUTOMATISERAD RIGGNING Kunskapen om hur man kan rigga manuellt är väldigt viktig att ha för att kunna skapa ett autoriggningssystem. Allen and Murdock (2008) går igenom i sin bok hur man manuellt kan skapa en avancerad mänsklig rigg. De förklarar skelettets och riggens funktionaliteter i detalj och man kan följa deras anvisningar för att återskapa riggen själv. Det skadar inte heller att ha några relevanta exempel på kod när man är osäker på programmeringsspråket som ska användas. Gould (2003) presenterar i sin bok skriptspråket MEL detaljerat samt dess användning. Kodexempel för user interface (UI) med MEL programmering finns presenterad i Maraffis (2008) bok där författaren förklarar bland annat de olika layouts som man kan använda, implementering av bilder i UI med mera. I boken presenterar han även koden bakom en autoriggnings verktyg. Han har delat in koden i flera mindre metoder. Varje metod har en begränsad funktionalitet som till exempel create controllers, rigg arm, create a strechy spine och liknanade. Riggen som genereras i Maraffi (2008) bok är ämnad för komplexa karaktärers animeringar och det är inte optimerad för användning i vissa spelmotorer, med tanke på antalet joints som karaktärsskeletten har. I detta autoriggningssystem ligger fokusen på mänskliga karaktärer. Många autoriggningsverktyg är baserade på att skapa både skelett och dess controllers. Bhatti and Shah (2012) presenterar ett riggningssystem baserad på widgets som ersätter joints. De förklarar verktygets funktionaliteten på följande sätt: The basic architecture of the proposed system is initially based on creating widgets for a bipedal character, then adjusting the widgets according to the character and finally creating the rig automatically based on the position of the widgets. The widgets are basically sphere shapes with curves connecting them to form a bipedal structure... (s.337). Maya har ett eget verktyg som heter human ik. Human ik fungerar på det sätt att man väljer varje joint och matchar den med en angiven kroppsdel i human ik interfacet. Efter alla joints är matchade kan man välja att rigga karaktären. 2.2 INTERFACE Bhatti och Shah (2012) samt Maraffi (2002) visar på fördelarna att ha ett interface som förenklar användningen av deras autoriggningsverktyg. Dessa verktyg fungerar dock lite annorlunda. Maraffi (2008) presenterar i sin bok olika och användbara förslag om funktionaliteten bakom UI. Han presenterar ett UI som är användbar främst för animerare där man kan styra karaktärens ställningar. Bhatti och Shah (2012) presenterar ett UI som är mer inriktat på att hjälpa till vid karaktärens riggningsuppsättning genom att man själv kan välja skelettets konstruktion. Båda UI är skapade efter funktionaliteten som deras verktyg har och samma princip följs i verktyget som skapades för uppsatsens syfte. 4
11 3 METOD Under detta kapitel kommer att presenteras metoden som används för att samla in data och jämföra tiden som det kan sparas vid användning av ett autoriggningsverktyg. En kortfattad förklarning kommer att presenteras över urvalen av funktionaliteten på riggen som genereras med riggningsverktyget. 3.1 DATAINSAMLING Man har oftast ett team av riggare som är involverade i animeringspipelinen. Data insamlades från tio deltagare varav nio läser programmet Technical Artist i spel på Blekinge Tekniska Högskola (BTH) och en är anställd som universitetsadjunkt på samma program och har erfarenhet av riggning. Data insamlades via enkäter. 3.2 TIDSESTIMERING För att komma fram till ett resultat gällande tiden behövdes inte särskilda komplicerade tidsberäkningar. Eftersom det är svaren från ett antal deltagare som undersöks så är det passande att räkna på medelvärdet av alla svaren i enkäten. Autoriggningsverktyget är mycket snabb och tiden som det tar att generera riggen hamnar i sekundramen medans den manuella riggningen hamnar i timramen. På grund av detta blir tiden för autogenerering av riggen ointressant medans tiden spenderad i verktygets interface blev mer intressant att närmare titta på. 3.3 URVAL AV FUNKTIONALITET PÅ VERKTYGET Riggningsverktyget skulle vara enkelt att använda och riggen som genereras skulle vara lätt att förstå och modifiera i efterhand. Visa inställningar av riggen kan variera från karaktär till karaktär och därför var det viktigt att riggen skulle vara modifierbar i efterhand. Det var tänkt att verktyget skulle göra allt nödvändigt jobb åt användaren för att maximalt effektivisera tiden för produktionen. Därför var det också viktigt att interfacet på verktyget blev snabbt och inte för komplicerat att använda vilket innebär att fokus ligger på att få riggen så snabbt som möjligt. För att kunna göra det användes specifika namn på joints så att verktyget skulle kunna identifiera de olika joints. Riggen som skapas skulle vara anpassad för spel och därför gjordes valet att begränsa antalet joints på skeletten som skulle riggas. Oftast märks siluettförändringar mer än små detaljer. Därför blev urvalen av stöd för kroppsdelar baserad på det som är mest synligt på siluetten. 5
12 4 RESULTAT Denna undersökning delas in i två delar. Första delen presenterar utvecklingen av ett riggningssystem som har stöd för ett antal olika kroppsbyggnader som mänskliga kroppar, mänskliga kroppar med svans och kentaurer. I andra delen presenteras utvärderingen av tiden som kan sparas med användning av detta autoriggningsverktyg. 4.1 AUTORIGGNINGSVERKTYG Ett autoriggningsverktyg för ett antal olika humanoida karaktärer utvecklades. Verktyget använder sig av ett skelett som har genererats klart och är anpassat för verktygets användning. Det innebär att verktyget kräver att skeletten som ska riggas har specifika namn och ett visst antal joints på specifika kroppsdelar. Dessa specifika namn möjliggör att verktyget identifierar varje kroppsdel själv istället för att användaren gör det manuellt. Verktyget har stöd för att generera armar, ben, två olika ryggrader, svans och huvud med och utan stöd för animerad käke. Dessa delar har inte extra attribut för speciella rörelser. Riggen som genereras är lätt att förstå och modifiera så att extra attribut för speciella rörelser kan skapas i efterhand. Uppsättningen på riggen som autogenereras har använts i ett tidigare skolprojekt och är den uppsättningen som har visats sig att fungera effektivt och nästan felfritt. I Figur 3.1-a beskrivs pipelinen som verktyget skulle snabba upp. Den beskriver arbetsflödet som ska följas för korrekt implementation av verktyget. Pipelinen börjar vid skelettskapningen och slutar vid export. Röda fältet är delen som verktyget ska hjälpa att snabba upp. Figur 4.1-a Animeringspipelinen som autoriggningsverktyget ska effektivisera. 6
13 4.1.1 Namn och skelettbegränsningar De specifika namn och antal joints per kroppsdel som ska följas för att verktygen ska fungera korrekt presenteras i figur 4.1-b. Figur 4.1-b (a) (b) Namn och antal joints för olika kroppsdelar. Exempel: Figur 4.1-b (a) Jointen UB_L_O_Hand identifieras på följande sätt: UB_ = UpperBody, LB_ = LowerBody identifierar var på kroppen jointen ligger. L_Left och R_ Right identifierar sidan på kroppen där jointen ligger. O_= only identifierar kroppsdelen som jointen är kopplad med. Hand identifierar leder som motsvarar jointen. Dessa förkortningar varierar på olika kroppsdelar. Ett exempel är förkortningen som identifierar vilken kroppsdel jointen tillhör till och detta är någonting som användaren själv kan bestämma. För ryggraden förkastas förkortningen för sidan av kroppen eftersom det borde finnas bara en. Dessa skelett är tänkta för spelkaraktärer och har det minsta antal joints som möjligt för att vara prestandasnål. Vid användning av de professionella spelmotorerna som Unity, CryENGEN och liknande behöver man inte vara lika prestandasnål som detta verktyg är. Däremot om karaktären ska implementeras i en spelmotor som är inte lika avancerad som dessa kan det vara lönsamt att tänka på prestanda Kontrollriggsfunktionalitet Detta verktyg är dynamiskt på det sätt att det känner igen vissa kroppsbyggnader men det är mycket begränsad när det gäller riggens funktionalitet. För att förstå hur kontrollriggen fungerar så förklaras varje kroppsdel separat. 7
14 Armriggsfunktionalitet På figur 4.1-c finns tre olika beteckningar och färger. De grönfärgade beteckningar står för joint, de blåa står för controller och de röda och rosa står för inverse kinematiks handle. Verktyget skapar alla controllers åt användaren och de placeras på platsen som respektive joint har. Det innebär att om en controller skulle påverka axeln så placeras det på samma position som axeln. På figur 4.1-c visas hur en armrigg kan se ut. Det fungerar så här: Controllern 2C kontrollerar hela armen så att om man roterar den kommer hela armen hänga med. Controllern 4C vid handen styr handen och armbågen med hjälp av 1IK. Om man flyttar den uppåt kommer armen vikas och om man roterar den så kommer handen och fingrarna roteras med. Controllern 1C som ligger vid axeln hjälper till så att controllern 3C som ligger vid armbågen inte hamnar i meshen. Controllerns 3C position påverkar armbågens riktning. Figur 4.1-c Arm rigg Fingerriggsfunktionalitet Fingrarna har enklare rigg än vad handen har. På figur 4.1-d kan man se att det finns en controller per finger. Det fungerar på det sätt att fingrarna vikas inåt eller utåt beroende på åt vilket håll deras controllers roteras. Fingrarnas controllers hänger ihop med handcontrollern 6C så att de får en gemensam rörelse. Figur 4.1-d Finger rigg. 8
15 Benriggsfunktionalitet På figur 4.1-e kan man se att det finns flera controllers för benet. Controllern 5C som är placerad under foten kontrollerar hela benet och om man flyttar den uppåt så kommer benen vikas. Foten kommer dock att behålla sin position. Foten kontrolleras med rotationen av controllern 5C. Controllern 4C kontrollerar hälen och controllern 3C kontrollerar tårna. Controllern 2C som är nära knäet och har samma funktion som armbågens controller på figur 3.1-c och controllern 1C ser till att controllern 2C inte hamnar i meshen. Figur 4.1-e Ben rigg Huvudriggsfunktionalitet Huvudet har också en enkel kontrollrigg jämfört med benets och armens kontrollrigg. På figur 4.1-f kan man se att det finns två controllers, en för hakan och en för huvudet. Controllern 1C kontrollerar huvudets förflyttning och rotation samt käket medans controllern 2C kontrollerar bara käken. Figur 4.1-f Huvud rigg. 9
16 Mänsklig ryggradriggsfunktionalitet Ryggraden har en enkel kontrollrigg och det kan man se på figur 4.1-g. Controllern 1C kontrollerar ryggens böjning åt alla håll och är ihopkopplad med controllern 2C som kontrollerar höfternas position och rotation. Figur 4.1-g Mänsklig ryggradrigg rigg Djurryggradrigg- och svansriggsfunktionalitet Djurs ryggrad har extra funktionalitet för att det finns en svans som är medkopplat. På figur 4.1-h kan man se att controllerns 1C rotation och position påverkar controllerns 2C position samtidigt som controllern 2C påverkar controllern 3C som kontrollerar svansen. Figur 4.1-h Djur ryggradrigg och svansrigg rigg. 10
17 Bindning av huvud och axlar På figur 4.1-i kan man se hur kontrollriggen för axlarna, ryggen och nacken se ut. Controllern 1C som ligger vid ryggraden påverkar positionen på de andra controllers. Figur 4.1-i Bindning av huvudet och axlarna Bindning av höft och resten av kroppen På Figur 4.1-j kan man se hur riggen för underkroppen ser ut. Controllern 1C kontrollerar hela kroppens förflyttning och rotation. Detta genom att 1C har kontroll över controllers 2C, 3C, 4C och 5C som kontrollerar benen. 1C är också ihopkopplat med controllern 6C som kontrollerar höfterna och ryggen genom att vara ihopkopplad med controllers 7C, 8C och 9C. Figur 4.1-j Bindning av Höften och resten av kroppen. När det gäller autoriggning kan det uppstå ett fel där det skapas ett beroende i koden som kan orsakas av felaktigt metodanrop. Det som händer är att skripten försöker binda två controllers där en av dem inte har blivit skapad än. Lösningen är att försöka rigga alla kroppsdelar separat och sedan binda ihop de. 11
18 4.1.3 Interface Autoriggningsverktyg skulle vara tillräckligt smart för att kunna känna igen de bekanta kroppsbyggnaderna. Det innebär att användaren inte behöver ha många val för funktionaliteten av riggen i interfacet. På figur 4.1-k kan man se den enkla och lätthanterbara interfacet som styr verktyget. Rigg Character knappen anropar funktionen som skapar riggen. Go to bind pose ställer karaktären i positionen som den hade innan riggen skapades. Detach Rigg och Attach Rigg knapparna finns i fall redigering av controllers behöver göras. Detach rigg avslutar alla kopplingar mellan controllers och rigg medan Attach Rigg knapen skapar om dessa. Restore skelett knappen ställer alla jointsrotationer till noll. Figur 4.1-k Bild av studiens verktygsinterface Kodimplementering Programmet Autodesk Maya har stöd för programmeringsspråket C++, Pyton och MEL. MEL är Mayas eget språk som kan användas för att anropa de flesta inbyggda funktionaliteter. Fördelen med MELprogrammering är att allting som utförs manuellt visas upp i Mayas skryptfönster vilket underlättar i programmeringen när man är osäker på vad vissa kommandon gör. Man söka efter kommandon man är osäker om i MEL- dokumentationen där man kan hitta vilka inställningar och ändringar man kan göra i syfte att få den önskade funktionaliteten Egendesignade controllers Exempelbilderna som användes för att beskriva riggens funktionalitet har controllers som har blivit specialdesignade för just detta verktyg. Deras utseende förklarar till viss del riktningen som kroppsdelen kan röras åt men prioriteten ligger på att de ska se intressanta ut. De skapas i egna metoder för en mer återanvändbar kod. Figur 4.1-l Metod för en egendesignad controller. 12
19 Metoden som vissas på figur 4.1-l skapar controllern som används för styrningen av knän och armbågarna. Den tar emot en stringparameter som används för att namnge controllern. De flesta egenskapade controllers har samma metoder Riggningsmetoder Metod i MEL deklareras som proc (procedure). Det som är annorlunda i MEL- språket är att det krävs $ tecknet framför ett variabelnamn både vid deklarering samt vid användning av de dessa namn. Funktionaliteterna på autoriggningsverktyget är indelade i flera riggningsmetoder. Metoderna tar emot en stringparameter som skickas via ett intervall som letar efter namn i skeletthierarkin. Stringen som skickas via intervallen motsvarar namnet på jointen. I detta fall riggningsmetodernas komplexitet är direkt kopplad till komplexiteten som kroppsdelen som riggas har. Metoden som används för riggning av armen har de flesta funktionaliteter som resten av metoderna använder. Först beräknas en offset som ska användas för skalning vid skapandet av controllers. Den använder jointskalningen som man har ställt i Maya för att justera diametern på alla joints. Alla controllers har ett fast värde som passar bäst med jointsskalning av Om skalan är större eller mindre än 0.05 ändras offseten. Efteråt skapas tillfälliga namn som ska användas för identifiering av joints. De specifika namnen är av stor betydelse under detta steg för att man kan veta det exakta namnet på joints som tillhör i hierarkin. Då hämtas första delen av jointens namn som förklarar var jointen befinner sig. Exempel: Joint namn UB_R_O_Shoulder blir UB_R_O_ och sparas i en string. Denna string används för att hitta joints som är kopplade till namnet på jointen som skickades vid funktionens anrop och sparar undan deras position i världen. Vid namngivning av controllers behövs det inte förklarningen om var jointen befinner sig på kroppen (UB_ eller LB_). Det som är mest intressant är sidan och positionen i förhållande till de andra armar som ligger på samma sida. Man hämtar ut de sista fyra platserna i första delen av namnet på jointen till exempel R_O_ och sparar i en string. Denna string användas när man skapar tillfälliga controllersnamn. Dessa controllersnamn vid skapning och positionering av controllers. Namnet av en controller anges vid dess skapning. Efter att alla controllers har skapats används jointpositionen som sparades innan för att placera om dem. I samma kommando används den skallningsoffseten som beräknades innan. Efter placeringen har hänt anropas makeidentity kommandon. Det som händer då är att världsmatrisen för objektet ändras och den blir noll istället för positionen som jointen hade innan. Det innebär att om positionen efter förflyttningen var 1,1,0, så ändras matrisen på så sätt att denna position på controllern behålls men siffrorna blir 0,0,0 istället. På så sätt blir jointens position controllerns ursprungliga position. Sist skapas IK handels som binds ihop med controllers och skelett för att få den önskade funktionaliteten som förklarades ovan. Denna metod har tre olika funktionaliteter. Första två funktionaliteterna är konstruktion och positionering av controllers och den tredje är bindning av controllers med skelett. Alla metoder som skapar riggen är uppbyggda med samma funktionaliteter. Namnge, skapa och sist binda controllers med skeletten. De största variationer är antalet controllers som skapas, deras utseende och bindningen med skeletten. 13
20 Metod för riggskapning Nedan förklaras funktionaliteten på intervallen som anropar metoderna som konstruerar riggen och skapar controllers. Denna metod anropas om man trycker på Rigg Character knappen i verktygets egen interface och i detta steg identifieras varje kroppsdel för sig. För att kunna loopa bland alla jointnamn behövs först att namnet sorteras i en string array. Arrayen börjar vid jointen som heter LB_Hipp och hämtar allting som är kopplat med dess hierarki. Det innebär att alla joints på fingret kommer att vara med i arrayen för att de är kopplade till armen, armen är kopplad med ryggraden och ryggraden är kopplad med höften(lb_spine). Efter sorteringen av jointnamn på skeletten loopas genom alla joints. Alla joints identifieras och riggas i visst ordning för att undvika specialfallen som kan uppstå vid bindning av visa controllers. Därför görs två loopar där alla kroppsdelar riggas först och sedan binds de befintliga kroppsdelriggarna med varandra. Första loopen identifierar och riggar kroppsdelar. För att identifiera kroppsdelarna som jointen tillhör användas if satser. Dessa användas för att jämföra jointen med kroppsdelen som verktyget har stöd för. I fall jointnamnet i arrayen är UB_O_Jaw så anropas metoden som skapar riggen för käket. Detta händer för varje kroppsdel som verktyget har stöd för. Andra loopen hanterar de befintliga controllers och binder de olika kroppsdelarna med varandra. Här sorteras alla jointnamn på samma sätt som innan. Via loopen identifieras varje kroppsdel på samma sätt som i första loopen. Det som skiljer sig här är funktionaliteten som händer vid identifieringen av kroppsdelen. Ett exempel är att när man har identifierad handen hämtas då namnet på jointen och ett nytt array skapas. Denna array har alla barn på handjointen. Då skapas en loop som bläddrar bland dessa barn och via deras namn identifieras controllern som binds men handen. Det innebär att antalet fingrar kan variera från noll till fem. Liknande funktionalitet användas för resten av kroppsdelarna. De identifieras, en array med deras barn i hierarkin skapas och controllers matchas och bindas på det önskade sättet Metod för förstörning av kopplingar Metoden för förstöring av kopplingar anropas om Detach Rigg knappen aktiveras. Metoden förstör alla kopplingar mellan joint och controllers. Denna metod har tre olika funktionaliteter: att återställa karaktären i ställningen som den bands med, att plocka bort alla ik handels och till sist att förstöra kopplingen mellan varje controller. För att kunna göra detta behövs det att alla controllers namn är sorterade i ett array. Kommandon är samma som innan. Det enda som ändras är typen av objekt som ska läggas i arrayen för att här vill man jobba med controllers och de är kurvor. Efteråt skapas en loop för varje funktionalitet. Första loopen ställer om positionen på alla controllers till noll. Andra loopen förstör kopplingarna mellan alla controllers, constrains och sist ik handels plockas bort Metod för återskapning av kopplingar Metoden som användas för Attach Rigg knappen är i stort sett samma som metoden för riggskapning som förklarades ovan. Den enda skillnaden är återskapandet av ik handels och controllers. I denna metod tilläggs funktionalitet som åter binder hela riggen med skeletten. Denna metod börjar också med att sortera ett array med alla jointsnamn. Jointidentifiering utförs på samma sätt som innan, med en if sats. Det som händer inom dessa if satser är att alla IK handels och constrains som plockades bort innan återskapas och alla controllers binds om. 14
21 Tid i minuter 4.2 ENKÄTENS INNEHÅLL En enkätundersökning genomfördes för att få svar på frågan gällande utvärderingen av tiden som det skulle ta att manuellt återskapa riggen som skapas med autoriggningsverktyget. I enkäten används samma figurer (4.1-c till 4.1-j) som används i denna uppsats när funktionaliteten på riggen förklaras. För varje bild fanns detaljerade beskrivningar och anvisningar på vad deltagaren skulle göra. Uppgifterna delades in i tre kategorier: a) Utvärdering av tiden som deltagaren spenderade på att skapa och placera controllers. b) Utvärdering av tiden som deltagaren spenderade på att binda controllers med joints. c) Utvärdering av tiden som deltagaren spenderade på att binda de befintliga controllers. Eftersom det kan vara svårt att ge en exakt tid så fick deltagaren välja från fem olika alternativ. Dessa alternativ varierar beroende på vilken kategori av fråga de tillhörde. För a) fick de välja mindre än 5 minuter och tiden ökades med 5 minuter för varje alternativ förutom den sista som blev mer än 20 minuter. För b) fick de välja mindre än 5 minuter och tiden ökades med 10 minuter för varje alternativ förutom den sista som blev mer än 35 minuter. Tiden ökades med 10 minuter för att det fanns mer uppgifter i b) än vad det fanns i a)(se bilaga 1 för mer info) Enkätens resultat Tio personer deltog i enkäten. Diagrammen på figur 4.2-a och figur 4.2-b presenterar hur de tio deltagarna har utvärderat tiden som de skulle spendera för att skapa och placera controllers per kroppsdel. På dessa diagram vissas både den kortaste och den längsta tiden för varje kroppsdel. Tiden som det skulle ta att skappa och binda controllers på: Arm minimum tid Arm maximum tid Finger minimum tid Finger maximum tid Huvud minimum tid Huvud maximum tid Figur 4.2-a Diagram för skapning och placering av controller. 15
22 Tid i minuter Tid i minuter 30 Tiden som det skulle ta att skappa och binda controllers på: Ben minimum tid Ben maximum tid Övrekropp minimum tid Övrekropp maximum tid Nedrekropp minimum tid Nedrekropp maximum tid Figur 4.2-b Diagram för skapning och placering av controllers. Diagrammen på figur 4.2-c och figur 4.2-d presenterar hur de tio deltagarna har utvärderat tiden som de skulle spendera för att binda controllers på det i enkäten angivna sättet. På dessa diagram vissas både den kortaste och den längsta tiden för varje kroppsdel Tiden som det skulle ta att binda controllers och joints: Arm minimum tid Arm maximum tid Finger minimum tid Finger maximum tid Huvud minimum tid Huvud maximum tid Figur 4.2-c Diagram för den utvärderade tiden för att binda controllers. 16
23 Tid i minuter Tid i minuter Tiden som det skulle ta att binda controllers och joints: Ben minimum tid Ben maximum tid Övrekropp minimum tid Övrekropp maximum tid Nedrekropp minimum tid Nedrekropp maximum tid Figur 4.2-d Diagram för den utvärderade tiden för att binda controllers. Diagrammet på figur 4.2-e presenterar hur de tio deltagarna har utvärderat tiden som de skulle spendera för att binda de befintliga och redan placerade controllers. Tiden för dessa svar är angivna av deltagarna själva Tiden som det skulle ta att bindaihop de lösa kroppsdelarna Fingrar Torso Hövten Base Figur 4.2-e Diagram för den utvärderade tiden att binda ihop de lösa kroppsdelarna. 17
24 Tid i minuter Deltagarna blev tillfrågade att ange hur ofta de riggar skelett för spelkaraktärer. Diagrammen på figur 4.2-f visar hur många deltagare har haft samma svar. SÅ OFTA OM ÅRET RIGGAR DELTAGARNA M E R Ä N 6 G Å N G E R G Å N G E R O M Å R E T G Å N G E R O M Å R E T G Å N G E R O M Å R E T 3 A L D R I G 0 Figur 4.2-f Diagram som vissar hur ofta deltagarna riggar karaktärer Tidsutvärdering för varje kroppsdel Resultaten för den personliga tiden för varje kroppsdel adderades för att få fram minimum och maximum tid från alla svaren. Diagrammen på figur 4.2- g visar att mest tid spenderades på bindning av controllers och minst tid spenderades på att binda ihop de lösa kroppsdelarna. Summa av varje uppgift per kroppsdel Kortaste tid för att skapa och placera varje controller. Längsta tid för att skapa och placera varje controller Kortaste tid för att binda controllers på den specifikt angivna sättet. Längsta tid för att binda controllers på den specifikt angivna sättet. Kortaste tid för att parent de befintliga controllers Figur 4.2-g Diagram som vissar den maximala och minimala tiden per uppgift Beräkning av tid spenderad per karaktär Eftersom tidsutvärderingen i enkäten är för varje kroppsdel blir det möjligt att räkna ut tiden som skulle spenderas för riggning av olika typer av karaktärer. Diagrammen på figur 4.2-h visar den personliga samt gruppens medelvärde för varje uppgift per kroppsdel. Det innebär att medelvärdet av resultaten för uppgifterna som var delade för skapning av controllers och bindning har adderats 18
25 Tid i minuter Tid i miunter ihop för respektive kroppsdel. På diagrammen kan man se att kroppsdelarna som gruppen utvärderade som mest tidskrävande att rigga är armen och benet. Medelvärde för varje uppgift för kroppsdel medelvärde för koppla lösa delar medelvärde för nedrekropp medelvärde för övrekropp medelvärde för ben Figur 4.2-h Diagram för den beräknade tiden att skapa varje rigg för kroppsdel. medelvärde för huvud Efter beräkningarna som presenterades i figur 4.2-h tidsomfattningen som skulle spenderas för att rigga en kroppsdel blir mer realistisk. Man kan då använda sig av en enkel formel för att räkna ut den genomsnittliga tiden som det skulle ta att rigga en karaktär. Formeln som används för tidsestimering är: Tid = A1*B1+A2*B2+. An + Bn. Där: A = tid för kroppsdel, B = antal gånger kroppsdelen upprepas. Formeln har används för att beräkna tiden som skulle spenderas på att rigga en mänsklig och en fantasi karaktär. Tiden som används för uträkningen motsvarar gruppvården för varje kroppsdel som presenterades i figur 3.2-h. Resultaten av beräkningen presenteras i figur 4.2-i och 4.2-j Mänsklig karaktär Antal Arm Antal Finger Antal Huvud Antal Ben Antal Övrek ropp Antal Nedre kropp koppl a lösa delar Grup total Figur 4.2-i Diagram för den beräknade tiden som skulle ta att rigga en mänsklig karaktär. 19
26 Tid i minuter Antal Arm Antal Finge r Kentaur karaktär Antal Huvu d Antal Ben Antal Övrek ropp Antal Nedr ekrop p koppl a lösa delar Grup total Figur 4.2-j Diagram för den beräknade tiden som skulle ta att rigga en kentaur karaktär. Resultatet som presenteras i figur 4.2-i och figur 4.2-j visar att tiden som sparas är direkt kopplad med komplexiteten på riggen. Därmed, tiden som sparas ökar om riggen har stöd för flera typer av skelett och karaktärsvarianter. 20
27 5 ANALYS OCH DISKUSSION I detta kapitel analyseras och diskuteras resultatet som denna studie har kommit fram till. Samt en diskussion om eventuella relevanta framtida forskningsfrågor kommer att presenteras. 5.1 ANALYS AV ENKÄTENS RESULTAT En av studiens syfte är att ta reda om det går att snabba upp riggningsdelen av animeringspipelinen. Enligt svaren från enkäten kan det ta upp till sju timmar att manuellt rigga en mänsklig karaktär och upp till åtta timmar att rigga en fantasikaraktär. Detta kan bero på att fantasikaraktären har flera kroppsdelar som ska riggas. Om man använder autoriggningsverktyget tar det nästan en minut att producera fram rigg oberoende av karaktärstypen. Man kan då dra slutsatsen att det går och snabba upp riggningsdelen av animeringspipelinen, så länge riggning är en del av animeringspipelinen. Resultatet av enkäten visar också på att det borde vara snabbare att använda sig av autoriggningsverktyget än att rigga manuellt. Eftersom verktyget är såpas snabbt kan man säga att riggningsdelen av animeringspipelinen försvinner nästan. Det som händer i detta fall är att skelettskapningen och riggningsdelen av den angivna pipelinen kan slås ihop till en och samma del. I teorin är det mycket snabbare att använda detta verktyg för att rigga karaktärer. Tiden som sparas dock stämmer bara i detta fall. Anledningen till detta är att om man har ett verktyg som skapar annorlunda rigg än den som testas i denna uppsats, blir resultaten från enkäten inte för samma rigg. Det visade sig att tiden som spenderas för att manuellt rigga en karaktär varierar beroende på antalet kroppsdelar som ska riggas. Detta leder till svaret på frågan om man kan ta reda på ett enkelt sätt hur mycket snabbare blir det. Då kan man dra slutsatsen att tiden som sparas varierar beroende på karaktärens kroppsbyggnad. För en mänsklig karaktär sparas ungefär sju timmar medan för kentaurliknande karaktärer sparas ungefär åtta timmar. Tiden som uppskattades kan betraktas som realistisk eftersom riggen som skapas inte har en särskild avancerad nivå. Dessutom är tiden som det skulle ta att manuellt rigga båda karaktärerna nära det förväntade resultatet som jag hade innan undersökningen började. I efterhand kan jag konstatera att metoden som användes för att samla in data kan betraktas som en svaghet för denna uppsats. Tiden som deltagarna har uppskattat är inte mätt och detta kan lida till en felaktig tidsestimering på den sparade tiden. En annan metod för att få mer korrekt tidsestimering kunde varit att deltagarna försökte återskapa riggen i samma programvara samtidigt som den spenderade tiden mättes. Efteråt man kan behandla tiden på samma sätt och eventuellt komma fram till ett annat resultat på tiden som kan sparas. 5.2 ANALYS AV VERKTYGET Viktigaste funktionen med verktyget fungerar korrekt och är testat på två karaktärer, där en av dem är mänsklig och den andra är kentaurliknande varelse. Riggen som verktyget genererar har exakt samma uppsättning som riggen i enkäten och därmed blir tidsutvärderingen från enkäten av hög relevans. En nackdel som detta verktyg har är att det är beroende av korrekt skelett. Det innebär att den som skapar skeletten måste anpassa sig för de angivna begränsningarna som verktyget har vilket kan leda till att skelettskapningen kommer att ta mer tid. Detta är inte av hög relevans för denna studie då syftet var att ta reda på om man kan snabba upp riggningsdelen av animeringspipelinen. 21
28 I visa tillfälle kan en bugg uppstå. Detta kan hända om skeletten tittar i negativt z där knä och armbågecontrollers placeras på fel sida. Det är dock enkelt att fixa det med den befintliga funktionaliteten. Antingen roterar man skelettet och meshen så att den tittar åt positivt z eller man använder funktionen detach rigg för att placera om dem. Efteråt kan man använda Attach Rigg och problemet blir löst. Denna funktionalitet är tänkt att användas mest av den som jobbar med riggning. Tanken med funktionaliteten av verktyget är att ge möjlighet till den snabbaste lösningen. Det är viktigt att verktyget är anpassat för flera arbetsprocesser för att få ut den maximala dynamiska användningen. 5.3 VERKTYGETS FRAMTIDA FUNKTIONALITET Det visade sig att i teorin är det bättre att använda sig av ett riggningsverktyg än att rigga manuellt så länge tiden är av hög relevans för arbetet som ska utföras. En av de största fördelarna enligt min mening med att använda sig av ett autoriggningsverktyg, förutom tiden som sparas, är att fallen där ett omedvetet fel kan uppstå blir minimal. Dessa fel kan uppstå ifall man har bindat någonting i fel ordning. Det som kan hända då är att dessa små fel upptäckas i en annan del av produktionen och man får gå tillbaka till arbetet som har ansetts vara klart. En svaghet av att bara använda sig av ett riggningsverktyg är att friheten att testa nya riggningstekniker och uppsättningar blir begränsad. Många begränsningar med autoriggningsverktyget har gjorts på grund av brist på tid. Kvalitén på autoriggningsverktyget har blivit lidande på grund av det. Det finns vissa funktionaliteter som skulle kunna öka kvalitén på detta verktyg i fall man skulle använda det i framtida forskning. Ett exempel är att användaren ska kunna välja olika sätt att kontrollera riggen under animeringsprocessen. Det innebär att man skulle kunna välja mellan invers kinematic och forward kinematic. Denna funktionalitet finns förklarad i Allen och Murdock (2008) och kan leda till en mer användarvänlig rigg med tanke på att användaren kan då själv bestämma vilket sätt är lämplig att använda under ett specifikt tillfälle. Riggen som skapas för uppsatsens syfte är mindre komplex och är annorlunda än den som presenteras i Maraffi (2008). Några av skillnaderna är identifiering av joints, komplexitet på metoderna och själva metodanropet. Jointen identifieras via namn i detta verktyg medan i Marraffis (2008) exempel identifieras de genom sökning i hierarkin. Ett relevant forskningsämne i framtiden kan då vara att jämföra uppsittningen på den nya och den gamla riggen och se om animeringsprocessen påverkas på något sätt och i så fall på vilket. Detta kommer att utöka förståelsen om de olika riggningstekniker som finns. De specifika jointnamn kan vara förvirrande och utgör ett riskområde för att orsaka skriptkrasch. Man blir bunden till att använda de förbestämda namn och det gör att skripten blir mycket begränsad. Namn conventions användas i branschen men de kan variera. Därför kan man ha en namn convection interface där användaren kan specificera egna namn för en mer dynamiskt användning av skripten. Detta innebär att man inte behöver ändra namn som användaren är van vid. För samma syfte skulle funktionaliteten på verktyget kunna förändras lite på det sätt att man kan välja en joint och rigga bara vissa kroppsdelar. Detta kan öka tiden spenderad med verktygets interface men det kommer att ge mer dynamiskt riggskapning. I början av uppsatsen presenterades två olika arbetsflöden: widget based och Mayas human ik (Bhatti and Shah, 2012). Verktyget som skapades för uppsatsen har ett arbetsschema som är ganska likt Mayas human ik; där största skillnaden är tiden spenderad i verktygets interface. Eftersom tiden spenderad i interfacet är mindre i verktyget skapat för uppsatsen, blir arbetsflödet snabbare när det gäller själva riggningsdelen, men samtidigt blir komplexiteten på riggen mycket mer begränsad. Om riggen är för mänsklig karaktär och skeletten skapas med Mayas eget verktyg kan man hoppa över att matcha joints manuellt och snabba upp riggningsdelen. Detta fungerar bara med mänskliga karaktärer 22
29 och då blir det mer användbart att ha stöd för olika kroppsbyggnader. Widgetbased riggningsarbetsschema blir svårt att jämföra eftersom det är ett system som jag inte har erfarenhet utav. Utifrån förklarningen i Bhatti och Shashs (2012) rapport verkar det vara ett snabbt arbetsflöde. Det ända som blir lite otydlig för mig är varför man skulle inte använda sig av joints från själva början? En annan del som jag blir fundersam över är controllern man har över jointorientering innan riggen skapas. En tanke till framtida forskning skulle kunna vara att testa och jämföra autoriggningsverktygen som redan finns där syftet kan vara att utvärdera vilken av dem erbjuder den snabbaste arbetsflöde. Ett annat syfte kan vara att undersöka hur animeringsarbetsflödet påverkas av komplexiteten som riggen har? Denna fråga är mer inriktad till animeringsprocessen och därför kan man testa att ha olika sätt att styra karaktären. Exempelvis man kan testa att styra karaktären via UI eller manuellt. För att sammanfatta denna studie kan man säga att slutsatsen av den genomförda undersökningen är att man kan spara tid genom att använda sig ut av ett autoriggningsverktyg istället för att rigga manuellt. Tiden som kan sparas för mänskliga karaktärer är nästan sju timmar och för kentaur är nästan 8 timmar. 23
30 6 REFFERENS Allen, E., Murdock, K.L., Body Language: Advanced 3D Character Rigging, PAP/CDR. ed. Sybex. Bhatti, Z., Shah, A., Widget based automated rigging of bipedal character with custom manipulators, in: Proceedings of the 11th ACM SIGGRAPH International Conference on Virtual-Reality Continuum and Its Applications in Industry, VRCAI 12. ACM, New York, NY, USA, pp Gould, D., Complete Maya Programming: An Extensive Guide to MEL and C++ API, 1st ed. Morgan Kaufmann. Maraffi, C., MEL Scripting a Character Rig in Maya, 1st ed. New Riders. Siomacco, E., Kundert-Gibbs, J.L., Davis, T.A., Developing efficient pipeline tools for animation production, in: Proceedings of the 44th Annual Southeast Regional Conference, ACM-SE 44. ACM, New York, NY, USA, pp Saints of the asylum, Stort spelutvecklingsprojekt UD1415 LP2/ , grupp
31 7 BILAGA 1 Ålder: Kön: 1 Hur ofta riggar du skelett för karaktärer? a) Aldrig b) 1-2 gånger om året c) 3-4 gånger om året d) 5-6 gånger om året e) Mer än 6 gånger om året svar: 2 Hur stor procentandel av karaktärer som du riggar är inte humanoida? svar: 3 Vilken del av riggningsprocessen tar längst tid för dig (ange hur lång tid)? svar: 4 Använder du något riggverktyg (om ja, vilka)? svar: 5 Kan du ge exempel på hur man kan effektivisera det du svarade på fråga 3 med något slags av digitalverktyg? svar: 25
32 Blå C efter siffran betyder Controller, grön J efter Siffran betyder Joint och IK efter siffran betyder ik handel. 6 Titta på bilderna och svara på frågorna : Hur lång tid tar det dig att bli färdig med allting inom punkterna: a) Skapa och placera varje controller motsvarande positionen som respektive joint har. 1. mindre än 5 min min min min 5. mer än 20 min Svar: b) Välj och bind 2J och 4J med 1IK. Välj och parent 2C till 4C och 1C. Välj och parent 1C till 3C.Välj och parent 4C till 1IK. Välj och aim constrain 4C till 1C. Välj och aim constrain 2C till 1J. Välj och orient constrain 1C till 1IK. Välj och pole vector constrain 3C till 1IK. 1. mindre än 5 min min min min 5. mer än 35 min Svar: 26
33 Hur lång tid tar det dig att bli färdig med allting inom punkterna: a) Skapa och placera varje controller motsvarande positionen som respektive joint har. 1. Mindre än 5 min min min min 5. mer än 20 min Svar: b) Ansluta 1J och 2J rotation z men 1C rotation z. 6. mindre än 5 min min min min 10. mer än 35 min Svar: c) Parent 6C till 1C, 2C, 3C, 4C och 5C. Svara i minuter: 27
34 Hur lång tid tar det dig att bli färdig med allting inom punkterna: a) Skapa och placera varje controller motsvarande positionen som respektive joint har. 1. mindre än 5 min min min min 5. mer än 20 min Svar: b) Välj och bind 1J och joint 2J med 2IK. Välj och bind 2J och joint 3J med 1IK. Välj och parent 1C till 2C. Välj och parent 1C till 2IK. Välj och parent 2C till 1IK. 1. mindre än 5 min min min min 5. mer än 35 min Svar: 28
35 Hur lång tid tar det dig att bli färdig med allting inom punkterna: a) Skapa och placera varje controller motsvarande positionen som respektive joint har. 1. mindre än 5 min min min min 5. mer än 20 min Svar: b) Välj och bind 1J och 3J med 1IK. Välj och bind 3J och 4J med 2IK. Välj och parent controller 1C till controller 2C. Välj och parent controller 5C till controller 3C och controller 4C.Välj och parent controller 3C till ikrpsolver 1IK. Välj och parent controller 4C till ikscsolver 2IK.Välj och aim constrain 3C till 1C. Välj och pole vectorconstrain 2C till 1IK. 1. mindre än 5 min min min min 5. mer än 35 min Svar: 29
36 Hur lång tid tar det dig att bli färdig med allting inom punkterna: a) Skapa och placera varje controller motsvarande positionen som respektive joint har. 1. mindre än 5 min min min min 5. mer än 20 min Svar: b) Välj och bind 2J och 1J med 1IK. Välj och parent 2C till 1C. Välj och parent 1C till 1IK. 1. mindre än 5 min min min min 5. mer än 35 min Svar: 30
37 Hur lång tid tar det dig att bli färdig med allting inom punkterna: a) Skapa och placera varje controller motsvarande positionen som respektive joint har. 1. mindre än 5 min min min min 5. mer än 20 min Svar: b) Välj och bind 1J och 3J med 1IK. Välj och bind 4J och 5J med 2IK. Välj och parent 2C till 3C, 4C och 5C. Välj och parent 1C till 2C. 1. mindre än 5 min min min min 5. mer än 35 min Svar: 31
38 Hur lång tid tar det dig att välja och parent controller 1C till controller 2C, controller 3C och controller4c? Svara i minuter: Hur lång tid tar det dig att välja och parent 6C till 7C, 8C och 9C? Svara i minuter: Hur lång tid tar det dig att välja och parent 1C till 2C, 3C, 4C, 5C och 6C? Svara i minuter: 32
Bemästra verktyget TriBall
Bemästra verktyget TriBall I IRONCAD finns ett patenterat verktyg för 3D-positionering av objekt, kallat TriBall. Hyllad av en del som "Det mest användbara verktyget i CAD-historien". TriBall är otroligt
Mayas UI. Grundläggande UI. Dag Stensson 2009
Mayas UI Mayas UI (User Interface eller användargränssnitt) är tämligen komplicerat jämfört med Adobe Photoshop eller andra liknande verktyg. Oroa dig inte, det blir lite bättre med tiden. Ni kommer att
Bemästra verktyget TriBall
Bemästra verktyget TriBall I IRONCAD finns ett patenterat verktyg för 3D-positionering av objekt, kallat TriBall. Hyllad av en del som "Det mest användbara verktyget i CAD-historien" TriBall är otroligt
Stretcha nacke. Stretcha armar. Stretcha kroppen för Innebandy
Stretcha nacke Stretcha nacke Övning 1 Stå upprätt som på bilden och rulla med huvudet från den ena sidan till den andra och känn hur du stretchar ut nacken. Stretcha armar Stretcha underarmarna Sätt dig
PROGRAMMERINGSTEKNIK TIN212
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Robin Adams Göteborg 8 June 2018 PROGRAMMERINGSTEKNIK TIN212 Dag: Fredag Datum:
Stretchprogram varje övning ca 30sekunder Stretcha nacke
Stretchprogram varje övning ca 30sekunder Stretcha nacke Stretcha nacke Övning 1 Stå upprätt som på bilden och rulla med huvudet från den ena sidan till den andra och känn hur du stretchar ut nacken. Stretcha
Arv. Fundamental objekt-orienterad teknik. arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier
Arv Fundamental objekt-orienterad teknik arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier Programmeringsmetodik -Java 165 Grafisk respresentation: Arv
Spelutveckling 3d-grafik och modellering. Grunder för 3d-grafik Blender Animering
Spelutveckling 3d-grafik och modellering Grunder för 3d-grafik Blender Animering Grunderna för 3d-grafik Positionering, transformationer Projektion, kameran Objekt i en 3d-värld Ljusmodeller för 3d-grafik
PHOCA GALLERY (v 3.2.3)
Joomla Guide 2.5.11 PHOCA GALLERY Sida 1 av 37 PHOCA GALLERY (v 3.2.3) I denna guide får du veta mer om: Inledningen till PHOCA GALLERY: Vad är ett Phoca Gallery Phoca Gallery Kontrollpanelen Stegen i
Temakväll - pausgympa
Temakväll - pausgympa Pausgympa Ökad cirkulation/skakningar Spänn och andas in samtidigt som du spänner hela armen, andas ut och slappna av/skaka lätt på armen. Upprepa med andra armen och benen. Studsa
Här följer fyra övningar som värmer upp axlarna, skuldrorna och ryggen.
Uppvärmning Innan träning påbörjas bör någon form av uppvärmning ske. Det finns många sätt att värma upp. Att gå en snabb promenad eller att småjogga är två vanliga sätt. Det bästa är att göra ett genomtänkt
TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng
TENTAMEN I PROGRAMMERING Ansvarig: Jan Skansholm, tel 7721012 Betygsgränser: Hjälpmedel: Sammanlagt maximalt 60 poäng. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng Skansholm,
Syfte Syftet med den här laborationen är att du ska lära dig använda några grundfunktioner i Microsoft Excel.
Excel-guide Introduktion I denna laboration kommer ni få använda några grundfunktioner i Microsoft Excel. Laborationen utgår ifrån Excel 2010 och Excel 2013, men om ni vill använda ett annat program för
Mattekungen åk 6-9 vers. 1.0
Presentation av programvara våren 2008 Bodil Holmström Anna Holmström Bearbetat av Karolina Höglund Mattekungen åk 6-9 vers. 1.0 Allmänt om programmet Mattekungen är ett undervisningsprogram som produceras
Copyright 2014 Pausit AB medföljer programvaran Pausit. Pausit version 1.9 Användarmanual
Copyright 2014 Pausit AB medföljer programvaran Pausit Pausit version 1.9 Användarmanual Välkommen! Med en liten insats kan du nå en stor effekt! Dagens samhälle och arbetsliv kännetecknas av krav på ett
Tentamen TNM061, 3D-grafik och animering för MT2. Onsdag 20/ kl SP71. Inga hjälpmedel
Tentamen TNM061, 3D-grafik och animering för MT2 Onsdag 20/8 2014 kl 14-18 SP71 Inga hjälpmedel Tentamen innehåller 7 uppgifter, vilka tillsammans kan ge maximalt 50 poäng. För betyg G (registreras som
Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1
Inlämningsuppgift : Finn 2D1418 Språkteknologi Christoffer Sabel E-post: csabel@kth.se 1 1. Inledning...3 2. Teori...3 2.1 Termdokumentmatrisen...3 2.2 Finn...4 3. Implementation...4 3.1 Databasen...4
Uppvärmning och rörlighetsövningar SKF Anna Åberg, Anette Johansson och Anna Bjerkefors
Uppvärmning och rörlighetsövningar SKF 2017 Anna Åberg, Anette Johansson och Anna Bjerkefors Starta med 5 7 min allmän uppvärmning Specifik uppvärmning för bröst- och ländrygg samt baksida lår Sitt på
Tentamen TNM061, 3D-grafik och animering för MT2. Tisdag 3/ kl 8-12 TP51, TP52, TP54, TP56, TP41, TP43. Inga hjälpmedel
Tentamen TNM061, 3D-grafik och animering för MT2 Tisdag 3/6 2014 kl 8-12 TP51, TP52, TP54, TP56, TP41, TP43 Inga hjälpmedel Tentamen innehåller 8 uppgifter, vilka tillsammans kan ge maximalt 50 poäng.
Excel-guide. Introduktion
Excel-guide Introduktion I denna laboration kommer ni få använda några grundfunktioner i Microsoft Excel. Laborationen utgår ifrån Excel 2010, men om ni vill använda ett annat program för att lösa uppgifterna
Styrteknik 7.5 hp distans: E-1000 och E-Designer
PLC8A:1 E1000 operatörsterminaler En operatörsterminal ger ett gränssnitt mellan männinska-maskin, (MMI människa-maskininteraktion, HMI Human Machine Interface) Alla terminalerna i E1000-serien är utvecklade
Innehåll Introduktion... 3 InteractiveScene.config... 3 Scener <scenes>... 3 Typsnitt <fonts>... 3 Övergångar <transitions>...
Innehåll Introduktion... 3 InteractiveScene.config... 3 Scener ... 3 Typsnitt ... 3 Övergångar ... 4 Mall för slide ... 5 , ...
C-UPPSATS. Rigga en karaktär för agent FX
C-UPPSATS 2006:171 Rigga en karaktär för agent FX Mattias Lundström Luleå tekniska universitet C-uppsats Datorgrafik LTU Skellefteå 2006:171 - ISSN: 1402-1773 - ISRN: LTU-CUPP--06/171--SE I Rigga en karaktär
Pausit version MAC 1.2 Användarmanual
! Pausit version MAC 1.2 Användarmanual Copyright 2016 Pausit AB medföljer programvaran Pausit Välkommen! Med en liten insats kan du nå en stor effekt! Dagens samhälle och arbetsliv kännetecknas av krav
Universe Engine Rapport
1 Universe Engine Rapport Alexander Mennborg 2017-05-08 2 Inledning I denna rapport diskuteras utvecklingsprocessen till projektet Universe Engine. Denna diskussion omfattar hela utveckling från starten
C-UPPSATS. Animation för spel
C-UPPSATS 2009:010 Animation för spel Tim Sundin Luleå tekniska universitet C-uppsats Datorgrafik Institutionen för LTU Skellefteå Avdelningen för Fritid och Underhållning 2009:010 - ISSN: 1402-1773 -
Yoga. Här är ett yogaprogram du kan göra var som helst och som bjuder på skön rörlighetsträning och återhämtning för trötta muskler.
Yoga Här är ett yogaprogram du kan göra var som helst och som bjuder på skön rörlighetsträning och återhämtning för trötta muskler. Yoga 1 Höft- och ljumsksträck I utgångsläget drar du upp båda knäna mot
L04.1 Marodören. Inledning. Mål. Genomförande. Uppgift 1 Hello World. Moment I
L04.1 Marodören Inledning Genom att öva sig på de grundläggande koncepten i JavaScript öppnas vägen allteftersom till de mer avancerade funktionerna. Man måste lära sig krypa innan man kan gå, även i JavaScript!
Sphero SPRK+ Appen som används är Sphero Edu. När appen öppnas kommer man till denna bild.
Sphero SPRK+ Appen som används är Sphero Edu När appen öppnas kommer man till denna bild. Klicka på 3D-modeller för att se delarna på Sphero Klicka här för att ansluta Sphero till ipad Programmet för att
Skinning. Ännu fler koordinatsystem att hålla reda på. SUPPLEMENT 2 till "So How Can We Make Them Scream?" 1. Olika metoder för kroppsanimation
Skinning Ännu fler koordinatsystem att hålla reda på SUPPLEMENT 2 till "So How Can We Make Them Scream?" Såhär under kursens gång har jag hittat en lucka till i materialet, nämligen att skinning inte är
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt
Introduktion till Matlab
Introduktion till Matlab Inledande matematik, I1, ht10 1 Inledning Detta är en koncis beskrivning av de viktigaste delarna av Matlab. Till en början är det enkla beräkningar och grafik som intresserar
11 övningar som gör dig mindre stel. Här får du ett program som mjukar upp dina höfter. Och som ger dig större rörelsefrihet.
11 övningar som gör dig mindre stel Här får du ett program som mjukar upp dina höfter. Och som ger dig större rörelsefrihet. 1 1. Steg framåt och korsa» Sätt ner vänster fot snett framför den högra.» Håll
UPPVÄRMNINGSSTRETCH I DET HÄR KAPITLET FINNS DET 14 UPPVÄRMNINGSÖVNINGAR: Stående sidoböj (se sidan 22) Armsväng (se sidan 23)
UPPVÄRMNINGSSTRETCH Stretchövningarna i det här kapitlet värmer upp dina leder och muskler på minsta möjliga tid. Om du arbetar dig igenom programmet tillför du energi till kroppen och kommer igång på
Gränssnitt för FakeGranska. Lars Mattsson
Gränssnitt för FakeGranska av Lars Mattsson (larsmatt@kth.se) Innehållsförteckning 1 Introduktion...3 2 Genomförande:...3 3 Användning...5 4 Kända buggar:...6 5 Källförteckning...6 2 1 Introduktion Taken
Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document
Programutvecklingsprojekt 2003-04-24 Projektgrupp Elvin Detailed Design Document Björn Engdahl Fredrik Dahlström Mats Eriksson Staffan Friberg Thomas Glod Tom Eriksson engdahl@kth.se fd@kth.se d94-mae@nada.kth.se
Plugboard Guide till Magento. Ecommmerce. Stöder - Magento 1.9.x
Plugboard Guide till Magento Ecommmerce Stöder - Magento 1.9.x Vad är Plugboard? En introduktion till verktyget Plugboard är ett verktyg som hjälper dig hantera digitala flöden och sedan mellanlagra information
Grunder. Grafiktyper. Vektorgrafik
2 Grunder All vår början bliver svår eller hur det nu brukar heta, och detta är något som gäller även Flash. För den som är ovan vid Flash gäller det säkert extra mycket, då det kan vara knepigt att förstå
Komma igång med Qlikview
Denna instruktion är till dig som är ny i Qlikview och snabbt vill komma igång med grundläggande funktioner. Innehåll 1 Introduktion... 2 1.1 Behörighet... 2 1.2 Webbläsare... 2 2 Installation av Qlikview
i LabVIEW. Några programmeringstekniska grundbegrepp
Institutionen för elektroteknik Några programmeringstekniska grundbegrepp 1999-02-16 Inledning Inom datorprogrammering förekommer ett antal grundbegrepp som är i stort sett likadana oberoende om vi talar
SolidWork Composer competence
SolidWork Composer competence Kiwanotech AB är företaget som erbjuder en helhetslösning från idé till färdig produkt. Vi på Kiwanotech AB arbetar ständigt för att bredda vår kunskap och effektivisera oss
Slutrapport Get it going contracts
Slutrapport Get it going contracts Författare: Anthony Dry Datum: 2011-06-02 Program: Utvecklare av digitala tjänster Kurs: Individuellt mjukvaruutvecklingsprojekt 7.5p Linnéuniversitetet (Kalmar) Abstrakt
RÖRLIGHETSPROGRAM IS HALMIA
1. Baksida lår Ligg på rygg, med ena benet utsträckt. Det andra benet kramar spelaren sedan om och med foten vinklad mot sig, sträcker spelaren sedan ut benet. 10x/Ben Dynamisk övning. 2. Framsida lår,
Programmering. Scratch - grundövningar
Programmering Scratch - grundövningar Lär känna programmet: Menyer för att växla mellan att arbeta med script, utseende/bakgrund och ljud. Scenen där allting utspelar sig. Här klickar du på bakgrunden
KNÄKONTROLL FÖREBYGG SKADOR - PRESTERA BÄTTRE HANDBOLL
KNÄKONTROLL FÖREBYGG SKADOR - PRESTERA BÄTTRE Denna cd-romskiva vänder sig främst till er som är tränare inom barn- och ungdomsidrotten. Vår förhoppning är att ni använder er av materialet i er träning
Paneler - VCPXX.2. Programmeringsmanual för VCP-paneler. Revision 2
Paneler - VCPXX.2 Programmeringsmanual för VCP-paneler Revision 2 Innehållsförteckning Innehållsförteckning... 2 1 Symbolfiler för kommunikation via IndraLogic... 3 2 Uppsättning i IndraWorks... 6 3 Programmering
Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering
Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk
Anvisningar till rapporter i psykologi på B-nivå
Anvisningar till rapporter i psykologi på B-nivå En rapport i psykologi är det enklaste formatet för att rapportera en vetenskaplig undersökning inom psykologins forskningsfält. Något som kännetecknar
BACHELOR THESIS. Realistic Character Animation For Games. Rickard Paulsson. Luleå University of Technology
BACHELOR THESIS 2008:004 Realistic Character Animation For Games Rickard Paulsson Luleå University of Technology Bachelor thesis Computer graphics Skellefteå Campus Division of Leisure and Entertainment
Interactive Sound Design
Interactive Sound Design Vad är Interactive Sound Design? Ljud inom traditionell media som t.ex. musik eller film är anpassat efter det format som det levereras via. Ljudet är då linjärt, d.v.s. att oavsett
Styrketräning för hemmabruk inklusive stretch
Styrketräning för hemmabruk inklusive stretch Introduktion Detta pass innehåller ett antal styrkeövningar som du kan göra hemma utan någon särskild utrustning. De flesta övningarna är för ben och bålstabilitet,
Handledning för konstruktion av tabeller och diagram med Excel
Handledning för konstruktion av tabeller och diagram med Excel 26 APRIL 2013 Inledning Excel är inte konstruerat för att i första hand utföra statistiska beräkningar, men en hel del sådant kan ändå göras.
Människans möte med den mänskliga kroppen. Ett pedagogiskt studiematerial
Människans möte med den mänskliga kroppen Ett pedagogiskt studiematerial Inledning I dag så påverkas vi medvetet och omedvetet av yttre ideal. Ofta så glömmer vi bort att ställa frågan till oss själva
Samtidig utvärdering av form- & lägekrav
Samtidig utvärdering av form- & lägekrav Allmän information Samtidig utvärdering (ISO) eller samtidiga krav (ASME) är väletablerade principer som gäller för form- & lägetoleranser. Samtidig utvärdering
Dokumentation. Avancerade Wordfunktioner
Dokumentation Avancerade Wordfunktioner VISA MENYFLIKEN UTVECKLARE När Word startas första gången finns sju menyflikar med verktyg. I den här kursen behöver dock den åttonde menyfliken aktiveras, menyfliken
Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering...
Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering... 4 Bussen (projektförslag)... 5 Bakgrund... 5 Klassen Buss
Lyft och Belastningsskador - förekomst, orsaker och hjälpmedel
Lyft och Belastningsskador - förekomst, orsaker och hjälpmedel Instrument och steriltekniker utbildningen Sollefteå Lärcenter, 300 YH p, 2011 Författare: Emmelie Bjurhede Handledare: Maria Hansby Sammanfattning
Statistik över heltal
Övningsuppgift Statistik över heltal Steg 2 Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402 Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande
Talföljer och cirklar: Algoritmer, geometri och mönster 2 av 4
Talföljer och cirklar: Algoritmer, geometri och mönster 2 av 4 Lektionen handlar om hur algoritmer kan användas för att skapa geometriska mönster. Lektionsförfattare: Måns Jonasson Till läraren En digital
Dokumentation - Fälthanteraren
BITNET Skapad av: Ramtin Aslani Dokumentation - Fälthanteraren Fälthanteraren och den sidopanel som aktiveras i samband med den kan användas för allt från att föra anteckningar och se ärendets faktura
Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1
Algoritmer Lars Larsson VT 2007 Lars Larsson Algoritmer 1 1 2 3 4 5 Lars Larsson Algoritmer 2 Ni som går denna kurs är framtidens projektledare inom mjukvaruutveckling. Som ledare måste ni göra svåra beslut
Programmeringsappar. Av Alex
Programmeringsappar Av Alex Omdöme 4/5 40 Kr 10+ År Robot School Robot School kommer från företaget Next is Great I appen Robot School hjälper man roboten R-obbie att nå sitt batteri genom att placera
Kom-Igång-Guide för Plugboard. Fyndiq
Kom-Igång-Guide för Plugboard Fyndiq Vad är Plugboard? En introduktion till verktyget Plugboard är ett verktyg som hjälper dig hantera digitala flöden och sedan mellanlagra information för att sedan importera
Användarhandledning Version 1.2
Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...
BANVERKTYGET. Verktygen
BANVERKTYGET Genom banverktyget kan man skapa banor eller kurvor genom att peka och klicka eller peka och dra med verktyget för att skapa mjukare linjer. Detta är funktionellt när man antingen ska skapa
SPELKLAR. Del 1 Löpning (8 min)
SPELKLAR Del 1 Löpning (8 min) Löpning - rakt fram Löpövningarna går mellan 6-8 parallella konor. Avstånd mellan käglorna ca 6-7 meter. Alla löpövningar utförs 2 ggr. Två spelare startar samtidigt vid
BESKRIVNING AV DISPLAY
Inledning 1 DREAM styrsystem TALGIL erbjuder högeffektiva och anmärkningsvärt ekonomiska lösningar för hantering av medelstora till stora bevattningssystem. Systemet utnyttjar modern teknik för hårdvara
C-UPPSATS. Cinematic Animation in a Production Pipeline
C-UPPSATS 2009:181 Cinematic Animation in a Production Pipeline Tomas Tjernberg Luleå tekniska universitet C-uppsats Datorgrafik Institutionen för LTU Skellefteå Avdelningen för Fritid och Underhållning
UPPVÄRMNINGSPROGRAM 1 - Del 1
UPPVÄRMNINGSPROGRAM 1 - Del 1 ENBENSKNÄBÖJ - DRAKEN Stå på ett ben och håll en boll framför kroppen på raka armar. Starta rörelsen genom att sänka bollen långsamt mot golvet och fäll samtidigt i höften
DATALOGISK TÄNKANDE OCH PROGRAMMERING CETIS OKTOBER 2017
DATALOGISK TÄNKANDE OCH PROGRAMMERING CETIS OKTOBER 2017 VAD ÄR DET FÖRSTA NI TÄNKER PÅ? Datalogiskt tänkande Programmering FRÅGOR I FOKUS IDAG Varför är digitala kompetenser och programmering viktigt
Föreläsning 1, vecka 6: Abstraktion genom objektorientering
TDA 548: Grundläggande Programvaruutveckling Föreläsning 1, vecka 6: Abstraktion genom objektorientering Magnus Myréen Chalmers, läsperiod 1, 2016-2017 Hur skulle ni implementera detta? (3D demo) Vi återkommer
Plugboard Guide till WooCommerce. Stöder - WooCommerce 3.x
Plugboard Guide till WooCommerce Stöder - WooCommerce 3.x Vad är Plugboard? En introduktion till verktyget Plugboard är ett verktyg som hjälper dig hantera digitala flöden och sedan mellanlagra information
Datorlaboration 1 Deskriptiv statistik med hjälp av MS Excel vers. 2010
v. 2015-01-07 ANVISNINGAR Datorlaboration 1 Deskriptiv statistik med hjälp av MS Excel vers. 2010 Detta häfte innehåller kortfattade anvisningar om hur ni använder Excel under denna laboration. Be om hjälp
Hi-O. Intelligent teknologi för dörrmiljöer. ASSA ABLOY, the global leader in door opening solutions.
Hi-O Intelligent teknologi för dörrmiljöer ASSA ABLOY, the global leader in door opening solutions. 1 Vad är Hi-O? Innehåll Hi-O, Highly intelligent opening, är en standardiserad teknologi som gör att
PROGRAM STÅENDE YOGA. Hitta balansen
PROGRAM STÅENDE YOGA fokus på hållning, balans, rörlighet, kroppsmedvetenhet och styrka. Programmet avslutas med några sittande övningar. Inom parentes har vi lagt till de namn på sanskrit som ofta används
KNÄKONTROLL FÖREBYGG SKADOR - PRESTERA BÄTTRE INNEBANDY
KNÄKONTROLL FÖREBYGG SKADOR - PRESTERA BÄTTRE Denna cd-romskiva vänder sig främst till er som är tränare inom barn- och ungdomsidrotten. Vår förhoppning är att ni använder er av materialet i er träning
Passet är framtaget av Lotta Rahm och granskat av sjukgymnast Roy Sandström.
Gymmix Balansboll Att träna med en balansboll är roligt och utmanande. Bollen är ett instabilt underlag som gör att tankarna kan bara vara på ett ställe när du tränar, på bollen och den övningen du gör
Datorlaboration 1 Deskriptiv statistik med hjälp av MS Excel
ANVISNINGAR Datorlaboration 1 Deskriptiv statistik med hjälp av MS Excel Detta häfte innehåller kortfattade anvisningar om hur ni använder Excel under denna laboration. Be om hjälp när/om ni tycker att
Datorövning 1 Calc i OpenOffice 1
Datorövning 1 Calc i OpenOffice 1 1 OpenOffice Calc Till förmån för de som följer kursen Fysikexperiment för lärare skall vi här gå igenom några få exempel på hur OO Calc (motsvarar MS Excel) kan användas
Bollträning. Vill du få bättre kroppskontroll och hållning? Rulla in en balansboll i din träning och bli mer stabil.
Bollträning Vill du få bättre kroppskontroll och hållning? Rulla in en balansboll i din träning och bli mer stabil. Bollträning Så kör du övningarna:» Sträva efter att dra in naveln mot ryggraden för att
TDDC74 Programmering: Abstraktion och modellering Datordugga 2 - exempel
TDDC74 Programmering: Abstraktion och modellering Datordugga 2 - exempel Läs alla frågorna först och bestäm dig för i vilken ordning du vill lösa uppgifterna. Uppgifterna är inte nödvändigtvis i svårighetsordning.
Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design Alex Gerdes, 2016
Static vs Dynamic binding Polymorfism Objekt-orienterad programmering och design Alex Gerdes, 2016 Diagnostiskt prov Shape + overlaps(shape): int return 1; Shape shape = new Shape(); Polygon tripoly =
Träning Yoga. Övningar i yoga som räddar ryggen. Det här passet mjukar upp ryggen. Varsågod - 9 övningar i yoga.
Träning Yoga Övningar i yoga som räddar ryggen. Det här passet mjukar upp ryggen. Varsågod - 9 övningar i yoga. Träning Yoga Du blir mjuk i kroppen när du kör yoga. Men det kan ändå vara skönt att värma
STOCKHOLMS UNIVERSITET. Handbok 2. Funktionaliteter moveon 4
STOCKHOLMS UNIVERSITET Handbok 2 Funktionaliteter moveon 4 Göteborgs Universitet 2013-11-04: Denna manual visar hur man söker i tabeller och sorterar i kolumner och andra bra tips för att förenkla användandet
TimeEdit Nyheter i TimeEdit Detta dokument beskriver nyheterna i TimeEdit 3.5.3
TimeEdit 3.5.3 Nyheter i TimeEdit 3.5.3 Detta dokument beskriver nyheterna i TimeEdit 3.5.3 Innehåll Sida 1.0 Relationer 2 1.1 Relationer 2 1.2 Att använda dynamiska relationer 3 1.3 Delrubrik 4 2.0 Senaste
Guide för färgkvalitet
Sida 1 av 6 Guide för färgkvalitet I den här guiden för färgkvalitet får du hjälp att använda funktionerna på skrivaren till att anpassa färgen på utskrifterna. Menyn Kvalitet Menyalternativ Utskriftsläge
Pausa dig. Ett rörelsepausprogram från Friskvården KI
Pausa dig Ett rörelsepausprogram från Friskvården KI Detta material är ett komplement till det webbaserade rörelsepausprogrammet och kan med fördel användas vid rörelsepaus i grupp eller som underlag för
Här är en komplett PDF om alla våra stretchövningar
Här är en komplett PDF om alla våra stretchövningar Läs gärna foldrarna Varför du ska stretcha och Smärta av Mikael Dahlström Levator Scapulae Mål: Lätta på trycket i nacken förhindra nackspärr Nacksmärta:
Jobbet, kroppen, livet i motorbranschen
Jobbet, kroppen, livet i motorbranschen PDF-version Kapitel Förebyggande träning Ergonomi / Förebyggande träning Viktigt att veta innan du startar Förebyggande träning För att du ska få maximal effekt
Träna din rörlighet. Här är 10 övningar som mjukar upp din kropp, gör dig smidigare och ger en injektion till din övriga träning.
Träna din rörlighet Här är 10 övningar som mjukar upp din kropp, gör dig smidigare och ger en injektion till din övriga träning. Rörlighet Så här gör du övningarna» Gör alla övningarna i tur och ordning.
Lab5 för prgmedcl04 Grafik
Lab5 för prgmedcl04 Grafik Viktigt läs detta först:den här labblydelsen är ganska lång, detta betyder inte att labben tar lång tid.en hel del av lydelsen är anvisning om hur man går tillväga för att kunna
BRUKSANVISNING Maskinöversatt
Svensk (SV) BRUKSANVISNING Maskinöversatt IN-7758 Balance Dome Advance, insportline IN-10973 Balance Trainer Dome Big, insportline Bilder endast i illustrations syfte. Innehållet SÄKERHET INSTRUCTIONER...
Histogram, pivottabeller och tabell med beskrivande statistik i Excel
Histogram, pivottabeller och tabell med beskrivande statistik i Excel 1 Histogram är bra för att dem på ett visuellt sätt ger oss mycket information. Att göra ett histogram i Excel är dock rätt så bökigt.
Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer.
Informationsinfrastruktur 7.5 hp Mattias Nordlindh Inledning Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer. Dokumentet består av
TRX TRIATHLON träningsprogram
TRX TRIATHLON träningsprogram Övningarna är funktionella på så sätt att de är grenspecifika för triathlon och eller aktiverar flera muskelgrupper. Programmet fungerar i alla träningsperioder men i synnerhet
Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016
Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 Abstract class En abstract class är en class som inte kan skapa några objekt. Syfte:
Introduktion till frågespråket SQL (v0.91)
DD1370: Databaser och Informationssystem Hösten 2014 Petter Ögren Introduktion till frågespråket SQL (v0.91) 13:e November Disclaimer: Dessa anteckningar har producerats under viss tidspress, och kan därför
MMA132: Laboration 2 Matriser i MATLAB
MMA132: Laboration 2 Matriser i MATLAB Introduktion I den här labben skall vi lära oss hur man använder matriser och vektorer i MATLAB. Det är rekommerad att du ser till att ha laborationshandledningen
PROJEKTRAPPORT EDA095 NÄTVERKSPROGRAMMERI
PROJEKTRAPPORT EDA095 NÄTVERKSPROGRAMMERI NG STRESS LUNDS TEKNISKA HÖGSKOLA - 2013-05-22 Projektmedlemmar: Emil Apelgren adi10eap@student.lu.se Fredrik Helander gda10fhe@student.lu.se Jonathan Klingberg
Sommarträning Enkla, roliga och effektiva övningar med eller utan gummiband.
Sommarträning Enkla, roliga och effektiva övningar med eller utan gummiband. Enkelt att ta med på semestern! Övningarna framtagna av: Karin Jönsson, leg. Kiropraktor och Emilie Svedberg, lic Personlig