Mittuniversitetet

miun.sePublikationer
Ändra sökning
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
Hur gör man egentligen?: Konstruktion av en spelmotor
Mittuniversitetet, Fakulteten för naturvetenskap, teknik och medier, Avdelningen för informations- och kommunikationssystem.
2014 (Svenska)Självständigt arbete på grundnivå (kandidatexamen), 10 poäng / 15 hpStudentuppsats (Examensarbete)
Abstract [sv]

I dagens samhälle spelas datorspel och många har säkert tänkt ”Hur görman egentligen?”. För att skapa datorspel behövs kunskaper inom pro­grammering, spelteori, fysik och matematik. Ett spel byggs på en grundsom kallas spelmotor. En spelmotor är en samling verktyg med kompo­nenter såsom banredigerare och grafikmotor. Det finns ingen bra sam­lad anvisning för nybörjare om hur en spelmotor skapas. Windows harvarit dominant över OS X och Ubuntu inom spelindustrin. En grafikbib­liotek skapar en lättare abstraktionsnivå för att återge grafik. Ett appli­kationsramverk förser färdig funktionalitet som är vanligt förekomman­de i skapande av skrivbordsapplikationer. En träffyta är en yta som an­vänds för att uppfatta att objekt har kolliderat och är separat från, menåterspeglar, 3D­modellen. Innan konstruktionen började utfördes en un­dersökning om problem som kunde uppstå och bibliotek kunde vara tillanvändning. Flera alternativ hittades och utvärderades genom att im­plementera och visuellt testa dem. Scrum användes som projektmetod.En funktion var färdig när koden kompilerade lokalt, visuella testerhade utförts och när en kompileringsserver fick kompilera koden. Gitanvändes som versionshanteringssystem. För att dokumentera arbetetanvändes en dagbok. Grafikbiblioteksalternativ var OGRE, Irrlicht ochHorde3D. Applikationsramverksalternativ var FLTK, SFML och Qt. Tvålösningsalternativ hittades för att skapa träffytor. En som återskaparträffytan från 3D­modellens trianglar (triangelmetoden) och en som ite­rerar igenom 3D­modellens skelett och skapar mindre träffytor för varjedel, för att sedan sätta ihop alla (iterationsmetoden). Samtliga grafikbib­liotek och applikationsramverk klarade utvärderingsmålen. Iterations­metoden för träffytor förkortades ur projektet på grund av tidsbrist.Grafikbiblioteket OGRE, applikationsramverket Qt och triangelmetodenvaldes till integrationen av spelmotorn. Resultatet uppnåddes men detfinns utrymme för vidareutveckling.

Abstract [en]

In today's society individuals play computer games and many haveprobably thought, "How is it done?". To create computer games oneneeds knowledge in programming, game theory, physics and mathe­matics. A game foundation is called the game engine. A game engine isa toolkit with components such as map editor and graphics engine.There is no good overall guide for beginners on how a game engine iscreated. Windows has been dominant over OS X and Ubuntu in thegame industry. A graphics library creates a higher abstraction level torender graphics. An application framework provides commonly usedfunctionality when creating a desktop applications. A hit box is a sur­face that is used to detect when objects have collided and are separatefrom, but reflects, the 3D model. Before construction began an investiga­tion was carried about to identify problems that could arise and librariesthat could be used. Several alternatives were found and evaluated byimplementing and visually testing them. Scrum was used as the projectmethod. A function was finished when the code could compile locally, avisual tests had been performed and when a build server could compilethe code. Git was used as the version control system. To document thework a diary was used. Graphics library that was research was OGRE,Irrlicht and Horde3D. Application framework options were FLTK,SFML and Qt. Two alternative solutions were found to create hit boxes.One that recreates the 3D model triangles (triangle method) and one thatiterates through the skeleton of the 3D model and small hit boxes foreach part, and then put them all together (iteration method). All graph­ics library and application framework passed the evaluations. Iterationmethod for hit boxes was shortened from the project due to time con­straints. The graphics Library OGRE, the application framework Qt andthe triangle method was chosen for the integration of the game engine.The result was achieved but there is room for further development.

Ort, förlag, år, upplaga, sidor
2014. , s. 47
Nyckelord [en]
Game, game engine, C++, graphics library, application framework
Nyckelord [sv]
Spel, spelmotor, C++, grafikbibliotek, applikationsramverk
Nationell ämneskategori
Data- och informationsvetenskap
Identifikatorer
URN: urn:nbn:se:miun:diva-22257OAI: oai:DiVA.org:miun-22257DiVA, id: diva2:728163
Ämne / kurs
Datateknik DT1
Utbildningsprogram
Civilingenjör i datateknik TDTEA 300 hp
Handledare
Examinatorer
Tillgänglig från: 2014-06-27 Skapad: 2014-06-23 Senast uppdaterad: 2025-09-25Bibliografiskt granskad

Open Access i DiVA

Fulltext saknas i DiVA

Sök vidare i DiVA

Av författaren/redaktören
Ekman, Niklas
Av organisationen
Avdelningen för informations- och kommunikationssystem
Data- och informationsvetenskap

Sök vidare utanför DiVA

GoogleGoogle Scholar

urn-nbn

Altmetricpoäng

urn-nbn
Totalt: 888 träffar
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf