Software Reuse in Game Development: Creating Building Blocks for Prototyping
2019 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE credits
Student thesisAlternative title
Återanvändning i spelutveckling : Byggstenar för prototyping (Swedish)
Abstract [en]
As games and the technologies used by them have become more advanced, the cost of producing games have increased. Today, the latest AAA titles are the results of hundreds or as many as thousands of people working full-time for years, and even developing a prototype requires a large investment. This project sets out to reduce that cost by looking at how reusable building blocks can be used in the prototyping process.
During the project, seven interviews with game designers were conducted. The interviews found that building character controllers for the player was the most common activity and one of the more difficult tasks when prototyping a new game. As a result, a tool for creating character controllers was made.
The tool builds the character controllers to work as state machines where actions in a state and transitions between states are editable through a visual programming language. The visual programming language uses nodes. These nodes work as reusable building blocks.
The tool was evaluated by six game designers and four programmers who all thought the tool used a good approach for building and prototyping character controllers. The evaluation also showed that the building blocks, in the form of nodes in the tool, should be functionally small and general, like nodes for applying forces and accessing character data.
Abstract [sv]
Allt eftersom spel och de tekniker som används i spelutveckling ökar i komplexitet, desto högre blir kostnaderna för att utveckla spel. Idag krävs hundratals, ibland till och med tusentals heltidsarbetande i mångåriga projekt för att utveckla AAA-spel, och även utvecklandet av en prototyp innebär stora investeringar. Detta projekt ämnar att minska den kostnaden genom att undersöka hur återanvändningsbara byggstenar kan användas i prototyputveckling.
Under projektets gång, utfördes sju intervjuer med speldesigners. Dessa intervjuer visade att utveckling av karaktärkontroller var en av de vanligaste och svåraste aktiviteterna i utveckling av prototyper. Som en följd av detta skapades ett verktyg för att utveckla karaktärkontroller.
De karaktärkontroller som verktyget bygger fungerar som tillståndsmaskiner där händelser i ett tillstånd och övergångar mellan tillstånd kontrolleras med ett visuellt programmeringsspråk. Det visuella programmeringsspråket använder noder och det är dessa noder som utgör de återanvändningsbara byggstenarna.
Verktyget utvärderades av sex speldesigners och fyra spelprogrammerare som alla tyckte att verktyget var ett bra sätt att utveckla och prototypa karaktärkontroller på. Utvärderingen visade också att byggstenarna, i form av noder i verktyget, bör vara funktionellt små och generella, så som noder för att applicera krafter och modifiera karaktärsdata.
Place, publisher, year, edition, pages
2019. , p. 62
Series
TRITA-EECS-EX ; 2019:331
National Category
Computer and Information Sciences
Identifiers
URN: urn:nbn:se:kth:diva-259370OAI: oai:DiVA.org:kth-259370DiVA, id: diva2:1351217
Supervisors
Examiners
2019-09-132019-09-132022-06-26Bibliographically approved