31(55) Vi har pratat om alla bubblorna, och labbat i de flesta... utom en. Fysik Datorgrafik Spelmekanismer AI Animation 31(55)
Spelmotorer och Spelmekanismer Två begrepp förvillande långt från varandra Fysik Datorgrafik Fysik Datorgrafik Spelmekanismer AI Spelmekanismer Animation AI Animation Spelmotorn - alla bubblorna men inte nödvändigtvis allt som finns i dem Spelmekanismer - innersta bubblan. Kan ingå i spelmotor. 32(55)32(55)
Spelmotorer Ser inte de här böckerna perfekta ut? Dessa handlar inte alls om spelmotorer Bara om perifera komponenter. 33(55)33(55)
Spelmotorer och Spelmekanismer Förvånansvärt lite skrivet om båda 2008: "The Case for Research on Game Engine Architecture" 2011 fortfarande första resultat i sökningar. Artiklar och även böcker behandlar bara egna motorn Men en del system och övergripande saker kan man hitta. 34(55)34(55)
Vad ingår i en spelmotor? Enligt Rautenbach: - 3D engine - AI subsystem - Sound engine - Physics engine - Networking engine - Development tools Notera development tools, externa verktygsprogram. Men var är motorn? 35(55)35(55)
Arkitekturtyper: Ad-hoc Modular Directed acyclic graph 36(55)36(55)
Directed acyclic graph architecture: Enda vettiga "modellen" som låter oss bryta isär spelspecifik kod från återanvändbar. Spelspecifikt: Game statemodul NPC updatemodul Dela upp ytterligare i återanvändbart och spelspecifikt: Grafikmodul Level initmodul Inputmodul AI- modul Återanvändbart: Fysikmodul 37(55)37(55)
Plug-in-arkitektur: Din arkitektur kan vara gjord för att underlätta modifikation utifrån Spelmotor Game loop Spelmotor Grafikmodul Fysikmodul Agent-modul Spelspecifikt: Level initmodul Grafikplugin Grafikplugin Fysikplugin NPCplugin Spelarplugin Spelmotor Fysikmodul AI- modul Inputmodul 38(55)38(55)
Spelmekanismer Innersta bubblan, även detta ett område som är stökigt och svårt att beskriva 39(55)39(55)
Spelmekanismer enligt Daley ( Learning ios game programming ) kortfattad översikt över spelmekanismer: Objective Time Lives Health Objects (Keys, Energy Items, Parchment pieces) Doors Weapons Entities Player Inte så generaliserbart men innehåller några korn av sanning 40(55)40(55)
Spelmekanismer enligt Adams ( Fundamentals of Game Design ) Ett kapitel av intresse: Core mechanics Lyckas faktiskt bena ut spelmekanismer till en imponerande nivå och detalj 41(55)41(55)
Spelmekanismer sköter om att - Hantera spelets interna ekonomi - Hålla reda på aktiva utmaningar - Ta emot spelarens handlingar och applicera dem på värden - Bestäm vinst/förlust, dvs kontrollera vinstvillkor - Hantera AI (men är inte det AI-motorns jobb?) - Byta spelläge - Skicka triggers till storytellingmotor Gränsar ofta till andra delar, speciellt UI och AI 42(55)42(55)
Huvudkoncept: resources entities attributes mechanics 43(55)43(55)
Resources: tillgångar som spelaren kan använda för att nå sitt mål. Inkluderar mått som "popularitet" mm Även egenskaper hos spelaren är resurser. Resurser är "mått", inte saker. Det är hur mycket man har. Saker är entities Saker som man har många av kan vara både "entities" och "resources". 44(55)44(55)
Entities: Saker och personer. Skiljer på "simple" and "compound". "Simple" är extremt enkelt, någonting som representeras av ett enda värde. Meningslöst begrepp, specialfall av "compound". "unique entities", finns bara en av. Ofta central i spelet, kan specialkodas som globala variabler. Ex: Bollen i fotbollsspel. 45(55)45(55)
Attributes: Egenskaper hos entities (Variabler i spelarobjekten) Position, hastighet, hälsa... Även minne för AI kan ses som attribut 46(55)46(55)
Mechanics: Regler för hur saker hänger ihop. Global mekanism: gäller alltid. Kan styra när andra mekanismer är aktiva events & processes. Processer startas och fortsätter sedan en tid Relationer mellan entities. Numeric and symbolic relationship. Mekanismer är ofta beteenden. Draken vaktar sina ägg, regel mappas till AI-beteende. 47(55)47(55)
Internal economy: Spel har ofta en intern ekonomi - även actionspel. Actionspel: Hur mycket fiender? Kommer det nya efter hand? Hur mycket ammunition? Balansen viktig del av speldesignen Hit points är en resurs. Hur mycket skada (drain), hur lätt är det att läka (source)? 48(55)48(55)
Ekonomimekanismer sources: spawn points, tillgång till resurs. Production rate, hur mycket hur snabbt? drains: åtgång. Hur mycket ammo går åt? converters: Ändrar en resurs till en annan. Pengar till hit points? (Öl och hamburgare i LPMUD.) traders: egentligen en slags converter Undvik oändliga resurser, oändlig vinst 49(55)49(55)
Ekonomimekanismer Tangible and intangible, materiell och immateriell: Fysisk eller abstrakt räknare. Exempel: Lords Feedback loops, dependencies and deadlocks Resurs A kan behövas för att skapa resurs B, som behövs för C, som behövs för A. Tar någon slut kan hela kedjan ta stopp (deadlock). Se till att bryta deadlocks. sten-stenhuggarhus (Settlers) Om man gör av med startkapitalet i sten så kan man inte starta cykeln senare 50(55)50(55)
Gameplay passive/active challenge Passiva utmaningar: Enkelt, kan vara statiska hinder. Dock kan man vilja ha en trigger som meddelar att utmaningen avklarats. (Skapa nya utmaningar mm.) Aktiva utmaningar: flytta saker, pussla, besegra motståndare: AI, beteenden, kopplingar krävs. Actions och triggers. Mycket triggas av spelarhandlingar och spelarobjektet. 51(55)51(55)
Koppingen spelmotorer - spelmekanismer Spelmotorer kan (bör) stödja händelser Dessa händelser används för triggers, upptäcker måluppfyllelse, ändrar speltillstånd Spelmotorn kan stödja detta mer aktivt. Beskriv händelsesekvenser kompakt, skapa händelselistor på hög nivå, kan vara del av motorn. 52(55)52(55)
Spelmekanismer i flera nivåer. - Låg nivå: Implicita spelmekanismer, givet av geometri, rörelsemöjligheter, enkla verktyg, grundläggande egenskaper, enkel fysik, enkla actionspels-ai. - Medelnivå: Enkla vinstvillkor, AI som hanterar beteenden. Enkel ekonomi. - Hög nivå: Uttalade utmaningar/quests, handlingar, tidssekvenser, komplexa resurskopplingar med produktion, handel och konverteringar. AI som hanterar ekonomi. 53(55)53(55)
Om de olika nivåerna Låg nivå: Motorn behöver bara enkla triggers om ens det. Man tänker knappt på att man skapar dessa. Medelnivå: Även de enklaste spelen behöver vinstvillkor, men det är en mer explicit spelmekanism. Triggers som kan testa om man vinner. Hit points, antal liv, vapen resurser utan komplexa handelsmekanismer, behöver inga speciella hanterare, bara plats i spelarobjekten. Hög nivå: Mer komplexa system för att hantera uppdrag, händelser och tid. Spelmotorn kan hjälpa till, speciellt med att tillhandahålla tidsverktyg och händelselistor. 54(55)54(55)
Slutsatser om spelmotorer och spelmekanismer Spelmotorer har väldigt varierad arkitektur, alla gör på sitt sätt och sneglar inte mycket på andra. Består av en central del för spelloop och spelmekanismer, samt perifera komponenter. Vissa spelmekanismer kan generaliseras och är övergripande. Detekera händelser, intern ekonomi. Representera uppdrag och andra processer, berätta historien i spelet. 55(55)55(55)