Institutionen för datavetenskap Department of Computer and Information Science
|
|
- Ann-Marie Månsson
- för 7 år sedan
- Visningar:
Transkript
1 Institutionen för datavetenskap Department of Computer and Information Science Examensarbete NatureBouncer med XNA and Farseer Physics av Michael Morawiec LIU-IDA/LITH-EX-G--13/028--SE Linköpings universitet SE Linköping, Sweden Linköpings universitet Linköping
2 Linköpings universitet Institutionen för datavetenskap Examensarbete NatureBouncer med XNA och Farseer Physics av Michael Morawiec LIU-IDA/LITH-EX-G--13/028--SE Handledare: Erik Berglund Examinator: Erik Berglund 2
3 Nature Bouncer med XNA och Farseer Physics Michael Morawiec Linköpings Universitet Tröskaregatan 65, Linköping SAMMANFATTNING Rapportens huvudfokus handlar om ifall det är möjligt att skapa mjuka kroppar med hjälp av många små fasta kroppar. Det kollas även ifall det går att ge ett realistiskt beteende vid kollision med dessa. Biblioteken som har används för att testa detta är Microsoft XNA och fysikmotorn Farseer Physics. Spelet som byggdes är ett 2D plattform spel där spelaren spelar en boll som kan hoppa på vattendroppar och löv som båda är mjuka kroppar. Vattendroppen är uppbyggd av små hårda kroppar medan lövet är en större hård kropp som med hjälp av en Distance Joint kan vrida på sig vid kollision. Det går att göra en mjuk kropp med realistiska kollisioner men fysik motorn som används i detta fallet ger vissa restriktioner. INLEDNING I dagens läge finns det få fysikmotorer som har möjligheten att skapa så kallade mjuka kroppar. Anledningar till detta kan vara att det är svårt att simulera mjuka kroppar och få ut en bra prestanda på de, eftersom de kräver en hel del mer beräkningar än vad fasta kroppar gör. Anledningen till att de mjuka kropparna kräver mer prestanda än vad de hårda gör är att de hela tiden förändras. Därför måste fysikmotorn arbeta mer för att hålla dom uppdaterade och korrekta. En hård kropp förändrar inget förutom deras position i världen, medan de mjuka kan ändra på hela sitt utseende också. Ett tillvägagångssätt till att simulera detta är genom att sätta ihop flera mindre fasta kroppar så de bildar en stor. På det sättet kan man minska beräkningsarbetet som krävs för att simulera en mjuk kropp, samtidigt som man får samma beteende. Det är det som detta rapport är fokuserat på. Frågeställningarna Frågeställningarna som har använts i exjobbet är följande: 1: Går det att bygga en mjuk kropp av många hårda och få ett realistiskt beteende på den? 2: Hur kan man göra för att ge en fysisk kropp ett realistiskt beteende vid kollision av olika mjuka objekt? I detta arbete valdes det att arbeta med Microsoft XNA plattformen för att det var något som exjobbaren redan var insatt i. Vi valde även att arbeta med fysikmotorn Farseer Physics av samma anledning. De fysiska kropparna som skulle användas var till att börja med löv och vattendroppar, och fler skulle implementeras ifall tid för det fanns. All kodning skall vara skriven i C# (C Sharp) och vertyget som skulle användas var Microsoft Visual Studio Syfte Syftet med rapporten är att se om det går att simulera mjuka kroppar genom att bygga upp de med små fasta kroppar och få samma beteende men till en bättre prestanda. Syftet är även ifall det sedan går att ge de mjuka kropparna ett realistiskt beteende när de kolliderar med andra kroppar av olika typer. Metod och källor För att samla information om hur arbetet skulle utföras så användes mest internet, eftersom där finns mest informationen att hämta om liknande projekt. Man kan även se många bra exempel och se arbeten gjorda av andra personer som försökt göra liknande saker och få inspiration av dessa. Handledare och andra studenter har också varit med i diskussioner för att få fram andra ideer eller lösningar på problem. Det är alltid bra att bolla ideer med någon annan för att få ett annat perspektiv på saker och ting och därmed komma fram till nya lösningar man inte sett innan. Mycket av informationen och hjälpen har hämtats från Farseer Physics officiella sida [2].
4 Farseer physics hemsidan har även en diskussionssida där många pratar om olika problem de har och andra kan hjälpa till om hur de skulle kunna lösa dessa [8]. En liknande diskussionssida där många diskuterar problem och lösningar är Stackoverflow, det är ett mer generellt forum för alla programmerare som används väldigt mycket. Därför finns det ofta andra som haft liknande problem, så där kan man då hämta hjälp ifrån om det behövs [4]. BEGREPP Microsoft XNA en plattform och en samling vertyg som har utvecklats för att underlätta spel och multimediautveckling för Windows och Xbox 360 [1]. Farseer Physics Engine en fysikmotor skriven i C#, baserad på Box2D [2]. C# (C sharp) ett objektorienterat progamspråk utvecklat av Microsoft, baserat på C++. Microsoft Visual Studio en avancerad programutvecklingsmiljö utvecklat av Microsoft, främst avsedd för användning av C# och.net programmering [3]. Mjuk fysisk kropp en kropp i den fysiska världen vars utseende kan förändras. Detta kan ske genom att punkterna som kroppen är uppbyggd av inte är fasta utan kan förändras. Hård fysisk kropp en kropp i den fysiska världen vars utseende inte kan förändras. Alla punkter är fasta. Stackoverflow ett diskussionsforum på internet, främst avsedd för programmeringsproblem [4]. Öppen källkod ett program eller bibliotek där källkoden är tillgänglig för allmäheten att göra vad de vill med för de som vill det. Gamepad en handkontroll som man kan koppla in i sin dator. SpriteBatch en klass som ingår i XNA, specialiserar på att rita ut sprites [1]. Sprite en samling av pixlar som oftast representerar en bild av något slag. PrimitiveBatch en klass skapad av Microsoft för utritning av olika primitiver, som trianglar [6]. Basic Effect en klass som ger möjligheten att använda sig av olika effekter och tekniker i sina spel. Matris ett rektangulärt schema av tal. Distance Joint en icke fast sammankoppling mellan två kroppar [10]. Frekvens i samband med Distance Joints handlar det om hur snabb sammandragningen ska vara. Dämpning i samband med Distance Joints handlar det om hur stark sammandragningen ska vara. Revolute Joint en sammankoppling mellan två kroppar där kropparna kan rotera runt fästningspunken [10]. Bullet en 3D fysik motor [7]. BAKGRUND För att underlätta arbetet så valdes det att använda sig av en fysikmotor i detta projekt, eftersom att de är specialiserade i att hantera fysik och ofta har varit under utveckling under många år. De är därmed väldigt optimerade för fysik och gör så att man inte behöver lägga ner all tid på att skapa en egen sådan motor och få den optimerad. En fysikmotor är i allmänhet ett bibliotek som simulerar egenskaper som massa, hastighet, friktion och luftmotstånd hos olika fysiska modeller. De är även specialiserade på kollisioner mellan alla dessa kroppar och gör så att kropparna ska reagera realistiskt när de kolliderar med andra kroppar i den fysiska världen. Den fysikmotor som används i arbetet är kallad Farseer Physics Engine. Farseer Physics är en fysik motor som har baserats på Box2D och är skriven för att underlätta kollisions detektering mellan olika fysiska föremål och för att ge ett realistiskt fysikt beteende mellan kropparna då det inträffar [2]. Skillnaden mellan Box2D och Farseer Physics är att Farseer Physics är omskrivet till C# så det kan användas i Microsoft XNA och.net utveckling. Box2D är den fysikmotor som Farseer Physics är baserad på. Det är en öppen källkods motor som är 4
5 skriven i C++. Den fokuserar på simuleringar av fasta kroppar [5]. Microsoft XNA är en utvecklingsplattform utvecklat av Microsoft för att underlätta spelutveckling för utvecklare. Den ger en grund för spelet så att man snabbare kan komma in i spelutvecklingen och slipper lägga ner tid på annat. Studenter, hobbyutvecklare och hemmautvecklare är de som Microsoft XNA är mest inriktad för [1]. Under arbetet med fysikmotorerna så upptäcktes det att de i vissa fall kan ha väldigt få alternativ att ändra vissa beteenden av fysik kropparna. Detta blir frustrerande ibland ifall man önskar ett specifikt beteende men inte kan åstadkomma det. De flesta fysik motorerna är uppbyggda så att de ska reflektera verkligheten så mycket som möjligt. Därför kan det vara svårt att få visa funktioner som skulle vara användbara, eftersom de skulle strida mot hur det ska fungera i verkligheten och då även strida mot alla matematiska regler. De flesta motorerna är uppbyggda på detta viset och därför är det svårt att lösa det genom att byta motor, därför får man göra så bra man kan och försöka hitta lösningar runt dessa problem. SYSTEMET Nature Bouncer är ett 2D plattforms spel med fokus på fysik. Man spelar en liten mossgrön boll och målet med spelet är att hitta sina vänner som är små rosa bollar. Kontroller När spelet startar kommer man fram till startskärmen (se Figur 1). För ett sedan starta spelet trycker man på enter. När spelet startar så laddas direkt den första nivån i spelet och spelaren kan börja kontrollera bollen. Det finns en del olika kommandon spelaren kan använda sig av. På tangentbord styr man spelaren genom piltangenterna, med W, S, A och D kan man röra runt kameran i spelvärlden. Sedan kan man återställa spelar bollen till dess startposition med R. För att växla mellan att vara i tungt läge så håller man in mellanslag för att vara tung, som visas genom att spelaren blir röd (Se Figur 2) och släppa för att bli normal igen. Om man har rört runt med kameran för att kolla på nivån och vill återgå till att följa bollen igen så kan spelaren trycka på T. Figur 2. När bollen är i tungt läge. Motsvarande kontroller finns även på gamepad. För att starta spelet trycker man på start. Bollen styrs med den vänstra kontrollstickan och kameran med den högra. Man kan hoppa med A knappen, bli tung med B och göra så kameran följer spelaren igen genom att trycka på X. Gameplay För att navigera sig genom banorna finns det två huvudsakliga objekt som spelaren kan använda sig av. Det finns vattendroppar (se Figur 3) och löv (se Figur 4). Figur 1. Nature Bouncer s start skärm. Figur 3. En Vattendroppe. 5
6 Figur 4. Ett Löv. Båda objekten ger olika beteenden när man hoppar på de med spelarbollen. Vattendroppen är en mjuk kropp, alltså reagerar den och ändrar form när man studsar på den. Den ger även spelaren en kraftigare studs uppåt vid kollision så man kan ta sig till högre nivåer med hjälp av den. Den används oftast för att nå upp till löven som brukar befinna sig på lite högre höjder. Lövet är en mer fast kropp än vattendroppen men kan istället bli nedsänkt när spelaren landar på den. Löven är designade på ett sådant sätt att spelaren behöver vara uppmärksam med att gå in i tungt läge innan han träffar löven (se Figur 5) och sedan släppa när lövet har blivit nedtryckt så långt som möjligt (se Figur 6). Genom att göra detta får spelaren den bästa studsen och måste lära sig bemästra den funktionaliteten för att kunna klara sig igenom banorna. Figur 6. Löv nedtryckt så långt som möjligt. Det finns även andra objekt i spelvärlden som spelaren kan stöta på. Det finns träd (se Figur 7), berg (ser Figur 8) och även andra variationer av löv som är större (se Figur 9). De större löven fungerar likadant som de mindre men de kan sjunka ner längre och ge en högre studs. Figure 7. Ett träd. Figur 8. Ett berg. Figur 5. Tungt läge innan kollision med löv. 6
7 Figur 12. Information om vilka kontrollerna är. Figur 9. Ett större löv. För att klara hela spelet behöver man hitta och samla på sig att alla vänner (se Figur 10) som finns utspridda på banan. Man plockar in de genom att åka in i de. Då försvinner de från världen och man kan leta upp resterande. När alla är upplockade så laddas nästa bana. Figur 13. Information om hur många vänner som finns kvar i världen. När spelaren har hittat alla vänner i alla olika banorna så startas spelet om från början igen genom att visa start skärmen och spelaren kan trycka på enter eller start för att börja om. RESULTAT Utvecklingen har för det mesta gått bra. Ett par saker tog lite längre tid att få att fungera korrekt och de problemen diskuteras här. Figur 10. En vän I spelet finns även faror. Det finns vatten på varje nivå som spelaren drunknar i ifall han faller ner i det. Detta visas genom att spelaren får en blå uppsyn (se Figur 11) och sjunker ner i vattnet för att sedan börja om från början av banan. Figur 11. När spelar hamnat i vatten För att spelaren ska kunna hålla reda på kontrollerna och annan viktig information är detta utskrivet på skärmen (se Figur 12 och 13). Utritningen Microsoft XNA använder sig som standard av en klass kallad SpriteBatch för att rita ut objekt. Som namnet antyder så används den mest för att rita ut sprites. Nackdelen med SpriteBatch är att den måste ha sprites för sin utritning ska fungera och även att det måste ske från en punkt eller över en rektangel. För att utritningen av den mjuka kroppen skulle fungera så behövde man på något sätt komma på hur man kan rita ut något mellan kropparna som hela den mjuka kroppen består av. Om man använder sig av sprites så kan inte den ändra på storleken när kroppen ändrar sitt utseende, och därför fungerar det inte att använda SpriteBatch för detta. Lösningen som användes då var att använda en annan klass för utritningen vid namn PrimitiveBatch. Det är en klass designad för att rita ut olika geometriska former och fylla de med en färg. Hur detta användes kommer pratas mer om i sektionen om den mjuka kroppen. 7
8 Spelet använder sig av en 2D kamera. 2D kameran använder sig av en transform matris för att flytta runt på utritningen från SpriteBatch. Problemet som då uppkom med att använda sig av PrimitiveBatch i utritningen var att den behövde använda sig av samma transform matris som SpriteBatch gjorde. PrimitiveBatch saknar stöd för detta och därför behövdes detta lösas genom att självmant skriva om PrimitiveBatch för att det skulle fungera. Lösningen blev att man fick lägga till en funktion i SpriteBatch som returnerar den senaste använda transform matrisen och skicka in den till PrimitiveBatch. PrimitiveBatch använder sig av en effekt klass som är inbyggd i XNA och kallas BasicEffect. BasicEffect kan använda sig av en projektion för utritning. När man sätter den projektionen till transform matrisen man hämtar från SpriteBatch klassen så blir utritningen för PrimitiveBatch projekterad på samma sätt som SpriteBatch. Distance Joint I arbetet så används Distance Joints mycket, med vad är det egentligen? En Distance Joint är en sammankoppling mellan två punkter som kan variera i längd. Den håller fast två punkter men går fortfarande ändra sin storlek. Så kropparna kan hamna närmare varandra men även längre ifrån varandra, samtidigt som dom sitter fast med varandra. Ungefär som en fjäder. Figur 14. Första mjuka kroppen. Problemet som märktes när man provade dessa sammankopplingar var att när de vrids mer än 90 grader från deras start vinkel så åker de tillbaka men åt andra hållet. Detta är ett beteende som finns i fysikmotorn och går inte att ändra på, och som orsakade att kroppen blev helt deformerad vid kollisioner i lite högre hastigheter (se Figur 15). Eftersom det var ett beteende hos fysikmotorn så var det inte möjligt att finna någon lösning och därför blev det nödvändigt att finna en ny metod att skapa kroppen på. Det är osäkert ifall det är en bugg att lederna reagerar på detta viset eller om det är designad för det. Man kan ge de olika beteenden genom att justera frekvensen och dämpningen. Frekvensen justerar hur mycket sammankopplingen kan svänga och dämpningen säger hur fort. Revolute Joint En Revolute Joint är en annan typ av sammankoppling mellan kroppar. Det är en fast punkt som kroppen kan rotera omkring. Ungefär som om man skulle spika fast ett papper, då kan pappret rotera kring spiken men sitter annars fast där. Figur 15. Deformerad kropp. Nästa metod som användes var en metod som fanns med i Farseer Physics dokumentationen under titeln Paths [2]. Den går ut på att man kopplar ihop flera mindre kroppar i en cirkel (se figur 15). Den mjuka kroppen Fokus i arbetet har varit att skapa en bra mjuk kropp, och det har inte varit helt problematiskt. Den första metoden sin användes för att skapa en bra kropp var att ha ett par kroppar sammankopplade med Distance Joints (se Figur 14). 8
9 figur 16. Då blir utritningen korrekt även om halva kroppen är ihoppressad under en kollision. Sedan ritar man ut trianglar mellan alla de yttre kropparna och till mitt punkten man räknade ut. På det sätt fyller man ut hela den mjuka kroppen och att den får möjligheten att ändra på sin form när man uppdaterar alla punkterna vid varje utritning. Figur 16. Den andra mjuka kroppen [2]. Varje del av cirkeln är en mindre cirkel och en rektangel som ligger på varandra. Sedan är alla dessa delar ihopkopplade med Revolute Joints för att de ska sitta ihop med varandra. Denna metod fungerade mycket bättre än den föregående och därför var det bättre att fortsätta arbeta med den. Det enda problemet som behövdes lösas då var utritningen. Eftersom att SpriteBatch endast kan rita ut sprites, här behövdes något annat eftersom den är uppbyggd av så många olika kroppar. Lösningen var PrimitiveBatch. Det man gör är att räkna ut två mittpunkter mellan de horisontella och vertikala punkterna (se Figur 16). Skapa löv När spelets utritning och den första mjuka kroppen hade blivit skapad så behövdes en lösning på hur löv skulle skapas. Dessa löv skulle gå att hoppa på och de skulle reagera på kollision som en mjuk kropp. Första möjligheten var att skapa en kropp på samma sätt som den andra mjuka kroppen. Men det visade sig inte fungera. För att göra detta så skulle några av kropparna i den mjuka kroppen behöva vara fastsatta i världen, men det orsakde så att kroppen blev deformerad när man försökte göra vissa kroppar till fasta eftersom processen som skapar kroppen görs på ett sådant sätt att alla kropparna är en bit ifrån varandra först för att sedan åka ihop och bli ihopsatta. Det går inte heller att forma kroppen på ett annat sätt än i en circel. Därför valdes ett annat sätt att skapa dessa kropparna på. Lövet skulle ha ett sådant beteende så att när spelaren hoppade på det så skulle spelaren hoppa vidare plus att lövet skulle reagera vid kollisionen. Det första som gjordes för att lösa detta var att skapa en löv konstruktion som gav den möjligheten att svänga och reagera på kollisioner. Lösningen på detta blev att skapa en kropp som bestod av lövet och två andra små kroppar som inte ritades ut. Den ena kroppen kopplades fast vid början av lövet så den endast kunde vrida sig runt den punkten. Den andra kroppen sattes en bit ovanför den andra och till den kopplades en Distance Joint som var fastsatt vid mitten av lövet (se Figur 17). Detta gör att när spelaren kolliderar med lövet så åker den nedåt men återgår även till sin gamla position efter tack vare Distance Jointen. Figur 17. De beräknade mittpunkterna Eftersom kroppen kan ändra sitt utseende så blev utritningen lite konstig ibland, därför räknar man ut en till punkt som representeras av det röda krysset i 9
10 Figur 18. Löv konstruktionen Den första lösningen på hur studsen på löv skulle fungera var att vid kollision mellan spelare och lövet så skulle spelaren få en bestämd kraft uppåt medan lövet fick en kraft nedåt för att få det att se ut som de kolliderar. Detta fungerade men såg inget vidare snyggt eller realistiskt ut. Så en snyggare lösning var önskad. Lösningen blev att låta spelaren trycka ner lövet så långt som möjligt genom att använda sig av det tunga läget i spelet. När spelaren blir tyngre så kan man trycka ner lövet så långt man önskar och Distance Jointen tillåter och sedan släppa för att väga mindre och därmed bli upplyft av lövet. Sedan så används en beräkning av hur långt lövet blev nedtryckt med i den kraften som spelaren får efter den separerar med lövet. Detta ger en realistiskt och snygg studseffekt när man kolliderar med lövet. Det kräver även träning för att spelaren ska bemästra hur man ska göra för att hoppa så långt som möjligt på löven och använda sig av det för att klara av alla banorna som finns i spelet effektivt. Vatten För att skapa vattnet så användes en klass som Michael Hoffman skapat [9]. För att skapa vattnet i spelet så ritar man ut en rad med Distance Joints. Mellan dessa joints ritar man sedan ut trianglar som målas blå, detta blir sedan vattnets färg (se Figur 18). Figur 19. Vatten konstruktionen När spelaren sedan hamnar i samma höjd som vattnet så drar man ner den jointen som är närmast där han kolliderar. För att skapa våg beteendet så räcker det inte bara med det, utan det behöver finnas en en loop som går till alla joints som ligger till sidan om den jointen som drar ner dessa med. Sedan minskas det hur mycket som dras ner beroende på hur långt ifrån kollisionen vi är, längre ifrån så blir det en mindre neddragning. För att ge en effekt med vattendroppar som uppstår vid nedslaget så skapar man ett antal små droppar som får en hastighet uppåt och åt någon slumpmässig riktning åt sidan. Hastigheten den får beror på hur snabbt spelaren faller i vattnet, vid en snabbare hastighet så får vattendropparna en högre hastighet. Spelets nivåer Bland de nivåer som finns i spelet så är några av de färdiga från start, medan de sista är slumpmässigt genererade. För att göra bra slumpmässiga nivåer så kan man inte bara slumpa ut alla objekt hur som helst, utan de måste skapas på ett sådant sätt att de blir spelbara. För att de slumpmässiga nivåerna ska bli spelbara så skapades ett antal färdiga delar i världen. Dessa kan bestå av alla olika saker som finns i spelet, som ett träd, några löv och en vattendroppe. Dessa sätter man sedan ihop på ett sådant sätt att det alltid ska gå att hoppa mellan varje del. Så man slumpar fram vilken del som ska bli nästa, sedan beroende på vilken det är så vet man hur långt det måste vara till nästa och vilka som passar med den delen. Sedan gör man så ett valbart många gånger. Så skapas den slumpmässiga nivån. 10
11 Det finns även en nivå där marken är färdig från start, men ett antal träd är slumpmässigt genererade. För att göra detta så har man skapat en färdig botten och en top del för träden. Sedan så har man ett slumpmässigt antal mellan delar som även får ett löv på antingen vänster eller höger sida. Sedan sätts allting ihop så får man ett färdigt träd som placeras ut på olika ställen på den nivån. DISKUSSION Resultatet visar att det är möjligt att skapa vissa kroppar som ger ett realistiskt beteende vid kollision, medan andra är svårare att göra detta med. Det visar sig att det går att göra en bra lösning för lövet för medan för den mjuka kroppen så är det svårare eftersom den mjuka kroppen inte är en hel kropp. Den består av många små kroppar, därför är det väldigt svårt att ge ett realistiskt beteende för hela kroppen. Den mjuka kroppen som blev lösning här har också sina nackdelar. Den största är att det är svårt att ändra på kroppens storlek. Om man vill ändra på storleken så måste man minska eller förstora de små kropparna som hela kroppen består av. Man måste även använda sig av färre eller fler av de små kropparna. Problemet då blir att den hela kroppen kan antingen bli för tung eller för lätt för att hålla sin cirkulära form. Om de små kropparna är för stora så blir de för tunga, och då ligger kroppen platt. Medan om man har för få kroppar så ligger de inte tillräckligt tätt emot varandra för att hålla ihop den cirkulära formen. På grund av detta finns det inte så många olika sätt man kan skapa formen på och man blir rätt så låst vid att göra den på ett visst sätt. Så som fysik motorn är uppbyggd så kan man bara få ut information om när det blir en kollision eller en separation mellan två kroppar och det är allt. Det är bara i de instanserna som man kan ge kropparna olika krafter eller egenskaper som ändrar lite extra på deras studs beteendet. Det gör det svårt att ändra på vad som händer vid kollisionen, Det mesta man kan göra är att ge båda kropparna någon kollision åt något håll, om man inte gör något så blir det ingen studs alls. Hade det varit en hel kropp från början så hade kanske det blivit en bättre kollision där man själv inte behövde ändra så mycket, utan det bara sker naturligt. Därför tror jag att ett bra nästa steg skulle vara att testa en ny fysikmotor som kan hantera riktigt mjuka kroppar och inte så som det är nu. En fysik motor som Bullet [7] skulle kanske fungera bättre, med nackdelen att man då måste skriva spelet i 3D men de flesta motorerna som använder soft body fysiks är 3D motorer så det kan vara svårt att undvika ifall man vill gå vidare. Löven fick en bra lösning men den har också sina nackdelar, ifall man skulle vilja göra något mer med det så måste man tänka ut ett nytt sätt att skapa löven på. Eftersom det enda man egentligen kan ändra på när det kommer till inställningar är Distance Jointen. Och den har bara två olika saker man kan ändra på, frekvensen och dämpningen. Man skulle vilja ha mer alternativ att byta på men där sätter fysikmotorn stopp igen. Det verkar vanligt för om man kollar på bland annat Box2D [5] så har de samma inställningar och inga mer. Det finns många 3D motorer som man kan använda ifall man vill gå vidare men det finns inga som bara fokuserar på mjuka kroppar. Det är synd för en motor dedikerat för mjuka kroppar hade varit väldigt intressant och man skulle nog kunna göra en hel del intressanta spel med det. SLUTSATS Spelet blev bra och visar att det går att skapa realistiska beteenden med metoden där fler små hårda kroppar används för att bilda en stor mjuk kropp. Beroende på vilket sätt man använder för att skapa de mjukare kropparna så får man anpassa vad som händer vid kollisionen beroende på det. Då kan man ge ett realistiskt beteende vid kollision med de. 11
12 REFERENSER 1. Microsoft XNA s officiella hemsida. (besökt ) 2. Farseer Physics officiella hemsida. (besökt ) 3. Microsoft Visual Studio officiella hemsida. (besökt ) 4. Stackoverflow s officiella hemsida. (besökt ) 5. Box2D s officiella hemsida. (besökt ) 6. Ett bibliotek där PrimitiveBatch ingår. US/education/catalog/sample/primitives (besökt ) 7. Bullet s officiella hemsida. (besökt ) 8. Farseer Physics officiella dokumentation. ion (besökt ) 9. Hemsida för 2D vatten bibliotek som användes. ntation/make-a-splash-with-2d-water-effects/ (besökt ) 10. Box2D s manual (besökt ) 12
13 På svenska Detta dokument hålls tillgängligt på Internet eller dess framtida ersättare under en längre tid från publiceringsdatum under förutsättning att inga extraordinära omständigheter uppstår. Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner, skriva ut enstaka kopior för enskilt bruk och att använda det oförändrat för ickekommersiell forskning och för undervisning. Överföring av upphovsrätten vid en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning av dokumentet kräver upphovsmannens medgivande. För att garantera äktheten, säkerheten och tillgängligheten finns det lösningar av teknisk och administrativ art. Upphovsmannens ideella rätt innefattar rätt att bli nämnd som upphovsman i den omfattning som god sed kräver vid användning av dokumentet på ovan beskrivna sätt samt skydd mot att dokumentet ändras eller presenteras i sådan form eller i sådant sammanhang som är kränkande för upphovsmannens litterära eller konstnärliga anseende eller egenart. För ytterligare information om Linköping University Electronic Press se förlagets hemsida In English The publishers will keep this document online on the Internet - or its possible replacement - for a considerable time from the date of publication barring exceptional circumstances. The online availability of the document implies a permanent permission for anyone to read, to download, to print out single copies for your own use and to use it unchanged for any non-commercial research and educational purpose. Subsequent transfers of copyright cannot revoke this permission. All other uses of the document are conditional on the consent of the copyright owner. The publisher has taken technical and administrative measures to assure authenticity, security and accessibility. According to intellectual property law the author has the right to be mentioned when his/her work is accessed as described above and to be protected against infringement. For additional information about the Linköping University Electronic Press and its procedures for publication and for assurance of document integrity, please refer to its WWW home page: [Michael Morawiec]
Automatiserad panoramasekvensdetektering på Narratives platform
LiU-ITN-TEK-A--14/018--SE Automatiserad panoramasekvensdetektering på Narratives platform Alexander Johansson 2014-06-11 Department of Science and Technology Linköping University SE-601 74 Norrköping,
Automatization of test rig for microwave ovens
LiU-ITN-TEK-A--13/026--SE Automatization of test rig for microwave ovens Jesper Cronborn 2013-06-10 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen
ChiliChallenge. Utveckling av en användbar webbapplika on. ChiliChallenge Development of a web applica on with good usability
ChiliChallenge Utveckling av en användbar webbapplika on ChiliChallenge Development of a web applica on with good usability Grupp 4: Carolina Broberg, Oscar Ek, Linus Gålén, Anders Kratz, Andreas Niki
Institutionen för datavetenskap Department of Computer and Information Science
Institutionen för datavetenskap Department of Computer and Information Science Examensarbete Utveckling av en webbaserad donationstjänst för företag som involverar medarbetarna i processen. av Martina
Master Thesis. Study on a second-order bandpass Σ -modulator for flexible AD-conversion Hanna Svensson. LiTH - ISY - EX -- 08/4064 -- SE
Master Thesis Study on a second-order bandpass Σ -modulator for flexible AD-conversion Hanna Svensson LiTH - ISY - EX -- 08/4064 -- SE Study on a second-order bandpass Σ -modulator for flexible AD-conversion
Ritning av industribyggnad med dokumentation av elcentraler
LiU-ITN-TEK-G--12/038--SE Ritning av industribyggnad med dokumentation av elcentraler Sebastian Johansson Daniel Nyberg 2012-06-12 Department of Science and Technology Linköping University SE-601 74 Norrköping,
Dokumentation av elritningar i en byggnad
LiU-ITN-TEK-G--12/068--SE Dokumentation av elritningar i en byggnad Precious Kam'boma Ceasar Ramzi 2012-12-17 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen
Utveckling av webbsida för lokala prisjämförelser med användbarhetsmetoder
C-uppsats LITH-ITN-EX--05/032--SE Utveckling av webbsida för lokala prisjämförelser med användbarhetsmetoder Jon Hällholm 2005-10-27 Department of Science and Technology Linköpings Universitet SE-601 74
Laddningsomkopplare för två batterier
LiU-ITN-TEK-G--10/054--SE Laddningsomkopplare för två batterier Findus Lagerbäck 2010-06-04 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen för teknik
Dokumentation av elinstallationer i en byggnad
LiU-ITN-TEK-G--11/066--SE Dokumentation av elinstallationer i en byggnad Albert Binakaj Armin Smajic 2011-08-25 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen
Inkoppling av manöverdon för servicekörning av kran 481
LiU-ITN-TEK-G--11/073--SE Inkoppling av manöverdon för servicekörning av kran 481 Simon Johansson Christian Winberg 2011-08-25 Department of Science and Technology Linköping University SE-601 74 Norrköping,
Strategiska överväganden vid tillbyggnation - Ekonomiska och hållfasthetsmässiga konsekvenser utifrån snölastreglering
LIU-ITN-TEK-G-13/021-SE Strategiska överväganden vid tillbyggnation - Ekonomiska och hållfasthetsmässiga konsekvenser utifrån snölastreglering Max Jigander 2013-06-05 Department of Science and Technology
Det här är inte en porslinssvan - Ett grafiskt kampanjkoncept för second hand-butiker med välgörenhetssyfte
LiU-ITN-TEK-G--16/055--SE Det här är inte en porslinssvan - Ett grafiskt kampanjkoncept för second hand-butiker med välgörenhetssyfte Veronica S Eksmo Karin Götestrand 2016-06-10 Department of Science
Arbetsprov för nyanställda inom el- och automationsteknik
LiU-ITN-TEK-G--13/003-SE Arbetsprov för nyanställda inom el- och automationsteknik Danial Qamar Patrik Rosenkrantz 2013-03-11 Department of Science and Technology Linköping University SE-601 74 Norrköping,
Analys av anslutningsresor till Arlanda
LiU-ITN-TEK-A--11/058--SE Analys av anslutningsresor till Arlanda Sara Johansson 2011-09-16 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen för teknik
Självkalibrering av varvtalsregulator
LiU-ITN-TEK-A--13/057--SE Självkalibrering av varvtalsregulator Rickard Dahm 2013-10-28 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen för teknik och
!"# " $"% & ' ( )* + 2' ( 3 -+ -.4
!"# " $"% !"# " $"% & ' ( )* +-+./0+12 + 2' ( 3 -+ -.4 Avdelning Institution Division Department Datum Date 2005-03-21 Institutionen för datavetenskap 581 83 LINKÖPING Språk Language Svenska/Swedish
3D visualisering av Silverdal
LiU-ITN-TEK-G--09/034--SE 3D visualisering av Silverdal Jenny Stål 2009-06-10 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen för teknik och naturvetenskap
Riktlinjer för kontrollutrustning
LiU-ITN-TEK-G--13/004-SE Riktlinjer för kontrollutrustning Menhel Aghel Dawood Dragan Obradovic 2013-03-11 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen
Uppdatera produktkalkyler och verifiera elektriska komponenter i styrskåp till luftavfuktare
LiU-ITN-TEK-G--11/047--SE Uppdatera produktkalkyler och verifiera elektriska komponenter i styrskåp till luftavfuktare Johan Brorson Jessica Gatenberg 2011-06-09 Department of Science and Technology Linköping
Arbete med behörighetsadministration och åtkomstkontroll i större företag
Arbete med behörighetsadministration och åtkomstkontroll i större företag Kandidatuppsats, 10 poäng, skriven av Mikael Hansson och Oscar Lindberg 2005-07-04 ISRN LIU-IDA-C--05/11--SE Arbete med behörighetsadministration
Nätverksutbildning för bibliotekarier samt museioch arkivpersonal
Linköping Electronic Articles in Computer and Information Science Vol. 2(1997): Nr 10 Nätverksutbildning för bibliotekarier samt museioch arkivpersonal Katri Wikström Tampere universitet Tampere, Finland
Elsäkerhetsanalys samt dokumentation av elinstallationer
LiU-ITN-TEK-G--13/059--SE Elsäkerhetsanalys samt dokumentation av elinstallationer Emanuel Kopkin 2013-06-20 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen
Hur försäkrar vi oss om att vår IT-användning utvecklar kvaliteten i våra utbildningar?
Linköping Electronic Articles in Computer and Information Science Vol. 2(1997): Nr 10 Hur försäkrar vi oss om att vår IT-användning utvecklar kvaliteten i våra utbildningar? Edgar Almén Linköpings universitet
Institutionen för datavetenskap
Department of Computer and Information Science Examensarbete Utvärdering av Gideros Mobile av LIU-IDA/LITH-EX-G--14/080--SE 2014-09-30 Linköpings universitet SE-581 83 Linköping, Sweden Linköpings universitet
Kliniskt datainsamlingssystem med beslutsstöd - Användarutredning och gränssnitt för Sahlgrenskas akutintag
Examensarbete LITH-ITN-MT-EX--05/043--SE Kliniskt datainsamlingssystem med beslutsstöd - Användarutredning och gränssnitt för Sahlgrenskas akutintag Lina Larsson 2005-05-27 Department of Science and Technology
EDUCATE - ett europeiskt hypertextbaserat utbildningspaket
Linköping Electronic Articles in Computer and Information Science Vol. 2(1997): Nr 10 EDUCATE - ett europeiskt hypertextbaserat utbildningspaket Nancy Fjällbrant Gunilla Thomasson Chalmers tekniska högskolans
Visualisering av nytt fritidshus på Kvegerö fritidsområde
LiU-ITN-TEK-G--09/037--SE Visualisering av nytt fritidshus på Kvegerö fritidsområde Angelica Åslund 2009-06-10 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen
Kravspecifikation. TDP005 Projekt: objektorienterade system. Version 4.0 Datum Anna Ahlberg Johan Almberg
Kravspecifikation TDP005 Projekt: objektorienterade system Version 4.0 Datum 2008 12 05 Anna Ahlberg Johan Almberg 1 Innehållsförteckning 1. Spelidé...3 1.1 Svårighetsgrad...3 2. Målgrupp...3 3. Spelupplevelse...3
3. Välj den sprajt (bild) ni vill ha som fallande objekt, t ex en tårta, Cake. Klicka därefter på OK.
Moment 2: Klonspel Instruktioner för deltagare Idag ska du få lära dig om: Kloner - kopior av samma figur (sprajt) Variabler - ett värde, exempelvis antal poäng Slumptal - slå en tärning för att välja
Finns nationell policy för informationskompetens - i Sverige?
Linköping Electronic Articles in Computer and Information Science Vol. 2(1997): Nr 10 Finns nationell policy för informationskompetens - i Sverige? Jan Hagerlid BIBSAM Stockholm, Sverige Inledning till
Utveckling av ett beslutstödsverktyg för utvärdering av VägAssistansfordonsplaceringar
LIU-ITN-TEK-A--15/043--SE Utveckling av ett beslutstödsverktyg för utvärdering av VägAssistansfordonsplaceringar Erica Andersson Emelie Håkansson 2015-06-12 Department of Science and Technology Linköping
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
Implementation och design av en hybrid mobilapplikation med native känsla, åt rekryteringsföretaget Skill
LiU-ITN-TEK-A--13/063--SE Implementation och design av en hybrid mobilapplikation med native känsla, åt rekryteringsföretaget Skill Jens Lund Per Velander 2013-11-06 Department of Science and Technology
Informationskompetens och Användarutbildning
Informationskompetens och Användarutbildning NVBF 1996 Proceedings från Nordiska Vetenskapliga Biblioteksföreningars Förbunds konferens: Linköping, Sverige, 19-20 november 1996 Edited by Liselotte Thornell,
SPRINT-HANDBOK (version 0.4)
1. FÄRG OCH FORM Detta är programmets startmeny. Texten överst på bilden (Avsluta, Ny användare, Om... och Välj användare) blir synlig då markören förs upp den blåa ramen. en ny användare. 6. 4. 5. får
Kravspecifikation TDP005 Projekt: Objektorienterat system
Kravspecifikation TDP005 Projekt: Objektorienterat system Innehållsförteckning 1. Spelidé 3 2. Målgrupp 3 3. Spelupplevelse 3 4. Spelmekanik 3 5. Regler 3 5.1 Spelplan 3 5.2 Spelaren 3 5.3 Token 3 5.4
Skapandet av en databas, produktkatalog och hemsida
LiU-ITN-TEK-G--08/053--SE Skapandet av en databas, produktkatalog och hemsida Robert Nyström 2008-12-12 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen
Scratch Junior. makeandshape.com. by MIT. Gränssnitt Scratch Junior
Scratch Junior by MIT Gränssnitt Scratch Junior 1. Spara 2. Scen 3. Presentationsläge (fullskärm) 4. Rutnät 5. Byt bakgrund 6. Lägg till text 7. Återställ figur (till sin ursprungliga position) 8. Grön
Ett spel skapat av Albin Wahlstrand
Viking vs. Demons Ett spel skapat av Albin Wahlstrand 2012-06-03 1 Abstrakt Denna rapport kommer att handla om mina positiva och negativa erfarenheter inom projektet jag jobbat på de senaste 10 veckorna.
For more information please visit www.rollermouse.com
For more information please visit www.rollermouse.com Contour Design, Inc. 10 Industrial Drive Windham New Hampshire, 03087, USA Phone: 800-462-6678 E-mail: ergoinfo@contourdesign.com Contour Design Europe
TDP005 Projekt: Objektorienterat system
. TDP005 Projekt: Objektorienterat system Kravspecifikation Författare, dylma900@student.liu.se, albve061@student.liu.se Höstterminen 2016 Version 1.1 2016-11-16 1 Revisionshistorik Ver. Revisionsbeskrivning
Vidareutveckling av arbetsprov för pumpstyrning
LiU-ITN-TEK-G--13/005-SE Vidareutveckling av arbetsprov för pumpstyrning Johan Franzen Simon Schweidenbach 2013-03-11 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden
Betalningsvilja för Göta kanal. Av Jan Lindvall
Betalningsvilja för Göta kanal Av Jan Lindvall The publishers will keep this document on-line on the Internet (or its possible replacement network in the future) for a period of 25 years from the date
Rekomendationer vid utformning av cykelparkering i två plan - Underlag till projektet Framtidens US i Linköping
LiU-ITN-TEK-G--11/077--SE Rekomendationer vid utformning av cykelparkering i två plan - Underlag till projektet Framtidens US i Linköping Jack Jomaa 2011-12-06 Department of Science and Technology Linköping
Handbok Utbrytning. Fela Winkelmolen Stephanie Whiting Översättare: Stefan Asserhäll
Fela Winkelmolen Stephanie Whiting Översättare: Stefan Asserhäll 2 Innehåll 1 Inledning 6 2 Hur man spelar 7 3 Spelregler, strategi och tips 8 3.1 Regler............................................. 8
6. Nu skall vi ställa in vad som skall hända när man klickar på knappen samt att markören skall ändra sig till en hand när markören är på knappen.
Fiskar Arbetsbeskrivning knappmeny (Mediator 8) I detta exempel kommer du att lära dig Att göra en mastersida med knappar Att använda en mastersida på andra sidor Att använd funktionen Alignment Arbetsgång
Robotarm och algebra
Tekniska Högskolan i Linköping Institutionen för Datavetenskap (IDA) Torbjörn Jonsson 2010-12-07 Robotarm och algebra I denna laboration skall du lära dig lite mer om möjlighetera att rita ut mer avancerade
Flaxande Fågel. Introduktion. Level
Level 2 Flaxande Fågel All Code Clubs must be registered. Registered clubs appear on the map at codeclub.org.uk - if your club is not on the map then visit jumpto.cc/18cplpy to find out what to do. Introduktion
Alternativ syllkonstruktion - med avseende på fukt
LiU-ITN-TEK-G--10/082--SE Alternativ syllkonstruktion - med avseende på fukt Daniel Erlingby 2010-11-05 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen
De historiska Göta kanalkartorna - design, tekniskt utförande och nyttjande av kartwebben www.ep.liu.se/ea/gotakanal/2001/011/
De historiska Göta kanalkartorna - design, tekniskt utförande och nyttjande av kartwebben www.ep.liu.se/ea/gotakanal/2001/011/ Av Reinhold Castensson och Urban Windahl De Historiska Göta kanal kartorna
Department of Information Technology Digitala projekt. SuperKull. Daniel Öhman Alexander Persson
Department of Information Technology Digitala projekt SuperKull Daniel Öhman Alexander Persson Abstract The purpose of this course was to design and construct an electronic
Lathund Autogiro NovaSecur
Lathund Autogiro NovaSecur Rev. 2011-05-06 Version 2.85-2011 Neither the whole nor any part of the information contained in, or the product described in this manual, may be adapted or reproduced in any
- en expertanalys. av Anna Olvenmyr
IT-universitetet i Göteborg MDI. Interaktionsdesign - en expertanalys av Anna Olvenmyr Grafiska Gränssnitt, 5 poäng 2003-10-27 Inledning och kategorisering...3 Utvärdering indelad i kategorier...4 Impression/
Tor Sterner-Johansson Thomas Johansson Daniel Henriksson
Lab 4: Anti Tower Defence Oskar Mothander Alan Mendez Larsson dit06omr dit06mln Lärare: Handledare: Johan Eliasson Johan Granberg Tor Sterner-Johansson Thomas Johansson Daniel Henriksson Innehåll 1. Problemspecifikation...
Rådgivningsstöd för ökad effektivitet och kundupplevelse
LiU-ITN-TEK-A--18/008--SE Rådgivningsstöd för ökad effektivitet och kundupplevelse Cecilia Lagerwall 2018-05-03 Department of Science and Technology Linköping University SE-601 74 Norrköping, Sweden Institutionen
Inställningstips. Visuella anpassningar Windows 10 2015-08-06
Inställningstips Visuella anpassningar Windows 10 2015-08-06 Innehåll Inledning... 3 Anpassa bildskärmen... 4 Ändra storlek för text, appar och andra objekt... 4 Ändra muspekare och markör... 6 Egenskaper
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
formulera och lösa problem med hjälp av matematik samt värdera valda strategier och metoder,
Arbetsområde: Huvudsakligt ämne: Matematik, åk 4-6 Läsår: Tidsomfattning: Ämnets syfte Undervisning i ämnet matematik syftar till: länk Följande syftesförmågor för ämnet ska utvecklas: formulera och lösa
Barnhack! kom igång med Scratch del 2
Måns Jonasson Barnhack! kom igång med Scratch del 2 välkommen till kom igång med scratch del 2! 2 bläckfiskspelet 3 Att använda piltangenterna för att styra en sprite 3 Koordinater 6 Flytta på en sprite
Gran Canaria - Arbetsbeskrivning knapplänkar (Mediator 8)
Gran Canaria - Arbetsbeskrivning knapplänkar (Mediator 8) I detta exempel kommer du att lära dig Att skapa en ny presentation från början Att skapa en enkel knapp Att använda händelseinställningar, events
ISO general purpose metric screw threads Selected sizes for screws, bolts and nuts
SVENSK STANDARD SS-ISO 262 Fastställd 2003-08-01 Utgåva 1 Metriska ISO-gängor för allmän användning Utvalda storlekar för skruvar och muttrar ISO general purpose metric screw threads Selected sizes for
After Effects Lathund
After Effects After Effects Lathund After Effects En komposition är det samma som ett filmklipp i After Effects. En komposition kan vara hela filmen/ animationen eller så använder man sig av flera kompositioner
Tentamen: Baskurs B i Fysik, del1, 4p 2007-03-23 kl. 08.00-13.00
Institutionen för teknik, fysik och matematik Nils Olander och Herje Westman Tentamen: Baskurs B i Fysik, del1, 4p 2007-03-23 kl. 08.00-13.00 Max: 30 p A-uppgifterna 1-8 besvaras genom att ange det korrekta
Utveckling av ett 2d spel i Java. Examensarbete av: Rickard Borg, EDTD13 Examensår: 2016 Opponent: Jesper Larsson Handledare: Jimmy Jansson
Utveckling av ett 2d spel i Java Examensarbete av: Rickard Borg, EDTD13 Examensår: 2016 Opponent: Jesper Larsson Handledare: Jimmy Jansson 1 Innehållsförteckning 1. Sammanfattning 3 2. Inledning 4 3. Definition
Kollisioner, rörelsemängd, energi
Kollisioner, rörelsemängd, energi I denna laboration kommer ni att undersöka kollisioner, rörelsemängd och energi, samt bekanta er ytterligare med GLX Xplorer som används i mekaniklabbet för utläsning
Information technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE
SVENSK STANDARD SS-ISO/IEC 26300:2008 Fastställd/Approved: 2008-06-17 Publicerad/Published: 2008-08-04 Utgåva/Edition: 1 Språk/Language: engelska/english ICS: 35.240.30 Information technology Open Document
Snake. Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola,
Snake Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola, 2015-05-18 Oskar Petersen, I-12 Handledare: Bertil Lindvall Abstract Denna rapport beskriver ett projekt där ett klassiskt
diverse egenskapspaletter
OBJEKTORIENTERADE RITPROGRAM Det fi nns två typer av ritprogram. Ett objektbaserat program ritar i form av matematiska kurvor med noder och styrnoder medan ett pixelbaserat program ritar genom att fylla
1 Kravspecifikation Snake App
Kravspecifikation Snake App - Kravspecifikation Snake App Utskriven/PDF Export: 2011-09-07 Copyright 2011 Sidan 1 av 7 1 Kravspecifikation Snake App 1.1 Vad är Snake App? Vi skall gör ett Snake Spel för
Börja med att kopiera källkoden till din scheme-katalog (som du skapade i Laboration 1).
Laboration 3 Grafiska figurer I den här laborationen skall du konstruera ett schemeprogram som kan rita rektanglar, punkter, cirklar, linjer och bilder som består utav en eller flera av nyss nämnda figurer.
Exempel på hur man kan bygga enkla former i Illustrator
Exempel på hur man kan bygga enkla former i Illustrator Öppna ett nytt dokument (ctrl-n), storleken spelar ingen större roll eftersom innehållet är vektorbaserat kan det alltid skalas om senare. Välj Pennverktyget
Zoomtext 2018 Kortkommandon
Zoomtext 2018 n 2 Innehåll Välkommen till ZoomText 2018...3 Program...4 Förstoring...4 Fönster...5 Läsning...5 Skrollning...5 AppLäsare...6 Bakgrundsläsare...8 Kamera...8 Support...9 Sökare...10 Markör...11
Mikael Bondestam Johan Isaksson. Spelprogrammering. med CDX och OpenGL
Mikael Bondestam Johan Isaksson Spelprogrammering med CDX och OpenGL Del 2 Spel Historiskt spel... 36 7. Studsboll en sprite...37 8. Styrning med tangentbordet... 48 9. Krockar...51 10. Ljudeffekter...
Om konsolporten. Beskrivning av portarna
Sida 1 / 7 Om konsolporten I detta dokument ges en kort sammanfattande beskrivning om vad och hur konsolportarna fungerar i nya Sun SPARC servrar. Exempel på servrar med den möjligheten är Sun Fire V240,
Lego Robot [ ] [ ] [ ]
Lego Robot av [ ] [ ] [ ] INNEHÅLLSFÖRTECKNING LABB1 (INFORMATION) # UPPGIFT 1 # UPPGIFT 2 # UPPGIFT 3 # LABB2 (OPERATÖRER) # UPPGIFT 1 # UPPGIFT 2 # UPPGIFT 3 # LABB3 (VARIABLER) # UPPGIFT 1 # UPPGIFT
Macromedia Flash MX 2004
Mittuniversitetet ITM Telefon 0771-97 50 00 Erik Öberg Macromedia Flash MX 2004 Visuell kommunikation Detta exemplar tillhör: VT 2005 Laborationskompendium för Macromedia Flash Inledning Dagens laboration
Skrivträning som fördjupar den naturvetenskapliga förståelsen Pelger, Susanne
Skrivträning som fördjupar den naturvetenskapliga förståelsen Pelger, Susanne Published in: Presentationer från konferensen den 3 maj 2012 Publicerad: 2012-01-01 Link to publication Citation for published
HAND TRACKING MED DJUPKAMERA
HAND TRACKING MED DJUPKAMERA ETT PROJEKT I TNM090 - SOFTWARE ENGINEERING Rasmus KARLSSON Per JOHANSSON Erik HAMMARLUND raska293@student.liu.se perjo020@student.liu.se eriha891@student.liu.se 2014-01-14
Terms and Conditions Digital Sheet Music
Terms and Conditions Digital Sheet Music Thank you for purchasing digital sheet music from Hillsong Music. Your purchase grants you the following rights: 1. Make one copy of the sheet music solely for
Tidstrender för perfluorerade ämnen i plasma från svenska kvinnor
Tidstrender för perfluorerade ämnen i plasma från svenska kvinnor 1987-2007 Axmon, Anna; Axelsson, Jonatan; Jakobsson, Kristina; Lindh, Christian; Jönsson, Bo A 2014 Document Version: Förlagets slutgiltiga
n-abler är lämplig för alla åldersgrupper med motoriska svårigheter och för dem som arbetar långa perioder vid datorn.
n-abler Trackball Produktbeskrivning n-abler Trackball är särskilt utformad för datoranvändare med begränsad handkontroll, motoriska svårigheter, dålig hand-öga-koordination, begränsad fingerfärdighet,
Generering av ljud utifrån fysikalisk simulering
UMEÅ UNIVERSITET Projektrapport Enheten för professionskurser 2010-05-18 Generering av ljud utifrån fysikalisk simulering Introduktion till ingenjörsarbete Namn Anders Berglund Viktor Johansson Sara Leonardsson
Innehåll. Styrdon (ej i boken) Fitts lag (sidan ) Natural user interfaces. Kap 6.2.9, , Kap
Interaktion 2 Innehåll Styrdon (ej i boken) Fitts lag (sidan 527-528) Natural user interfaces Kap 6.2.9, 6.2.11, 6.2.12 Kap 6.3-6.4 Styrdon Styrdon Tangentbord Pekdon Tangentbord QWERTY-layout QWERTY-layout
Inledning. Kapitel 1. 1.1 Bakgrund. 1.2 Syfte
Sammanfattning Vi har i kursen Modelleringsprojekt TNM085 valt att simulera ett geléobjekt i form av en kub. Denna består av masspunkter som är sammankopplade med tre olika typer av fjädrar med olika parametrar.
Användarhandbok. Trio Visit Web. Trio Enterprise 4.1
Användarhandbok Trio Visit Web Trio Enterprise 4.1 COPYRIGHT NOTICE: No part of this document may be reproduced, distributed, stored in a retrieval system or translated into any language, including but
Visuell planering - Hur visuella metoder kan användas och förbättra planeringsarbetet vid byggproduktion
LiU-ITN-TEK-G-13/013-SE Visuell planering - Hur visuella metoder kan användas och förbättra planeringsarbetet vid byggproduktion Torbjörn Nilsbäcken Anton Nilsson 2013-05-30 Department of Science and Technology
Image Converter. Användarhandbok. Innehåll: Version: 1.1.0.0. Läs följande innan du använder Image Converter. Översikt av Image Converter
Image Converter Användarhandbok Version: 1.1.0.0 Läs följande innan du använder Image Converter Innehåll: Översikt av Image Converter S2 Bildkonverteringsprocessen S3 Importera till HDD Navigation System
RoomDesigner Manual... 1
RoomDesigner Manual Innehållsförteckning RoomDesigner Manual RoomDesigner Manual... 1 Översikt... 3 2D- lägets verktyg... 4 3D- lägets verktyg... 5 2D- LÄGET... 6 Införande av fönster, dörrar samt inredning
Post Mortem för Get The Treasure!
Post Mortem för Get The Treasure! Av: Emil Lindberg - Grupp 15 Vi skulle göra ett action multiplayerspel som spelades över nätverket. Vilket vi nästan lyckades göra. Tiden tog slut och programmerarna han
ETT FÖRSTORINGSPROGRAM PÅ DATORN ANVÄNDARHANDLEDNING
ETT FÖRSTORINGSPROGRAM PÅ DATORN ANVÄNDARHANDLEDNING 2007 Innehåll Innehåll...1 1. Om Lightning...2 2. Systemkrav...2 3. Installera och använda Lightning...2 4. Lightnings kontrollpanel...3 5. Ändra förstoringsgrad...3
Tentamen Mekanik F del 2 (FFM520)
Tentamen Mekanik F del 2 (FFM520) Tid och plats: Måndagen den 23 maj 2011 klockan 14.00-18.00 i V. Hjälpmedel: Physics Handbook, Beta, Lexikon, typgodkänd miniräknare samt en egenhändigt skriven A4 med
Citation for published version (APA): Björnstedt, J. (2008). Ström- och Effektmätning. [Publisher information missing].
Ström- och Effektmätning Björnstedt, Johan Published: 2008-01-01 Link to publication Citation for published version (APA): Björnstedt, J. (2008). Ström- och Effektmätning. [Publisher information missing].
Objektorientering i liten skala
Linköpings Universitet Institutionen för datavetenskap (IDA) UPP-gruppen 2012-10-24 Objektorientering i liten skala Mål I denna lab skall du skriva ett objektorienterat program. Programmet skall delas
Programmering i Scratch 2.0
Programmering i Scratch 2.0 Version 1.3 Anders Berglund @andersberglund_ anders.h.berglund@stockholm.se Mälarhöjdens skola 2017 Del 1 Vad är Scratch? Scratch är ett visuellt programmeringsspråk som går
Den hungriga fisken. Vi ska göra ett spel om en hunrgig fisk! Styr den stora Hungriga Fisken och försök att äta upp alla kräftor som simmar omkring.
Nivå 2 Den hungriga fisken All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/ccwreg to register your club.
OzoCodes FÄRG KODER VINST/ UTGÅNG FART RÄKNARE RIKTNING TIMER COOLA RÖRELSER REFERENSSCHEMA VINST/UTGÅNG (SPELA IGEN) CRUISE SNABB TURBO NITRO BOOST
OzoCodes FÄRG KODER REFERENSSCHEMA FART VINST/ UTGÅNG SNIGELFART LÅNGSAM CRUISE VINST/UTGÅNG (SPELA IGEN) RIKTNING SNABB TURBO NITRO BOOST VINST/UTGÅNG (GAME OVER) RÄKNARE GÅ TILL VÄNSTER GÅ RAKT FRAM
Institutionen för matematik och datavetenskap Karlstads universitet. GeoGebra. ett digitalt verktyg för framtidens matematikundervisning
Karlstads GeoGebrainstitut Institutionen för matematik och datavetenskap Karlstads universitet Mats Brunström Maria Fahlgren GeoGebra ett digitalt verktyg för framtidens matematikundervisning Invigning
Anvisning om ansvarsförsäkran för studenter
ANVISNING Gäller från och med 2008-06-27 Anvisning om ansvarsförsäkran för studenter Gäller fr o m 2006-01-01 Ändrad fr o m 2008-06-27 Denna anvisning grundar sig på: Högskoleförordningen (1993:100) Rektors