Meer geheugen, meer rekenkracht, meer detail: next gen-games zijn een droom voor de gamer. Een nachtmerrie voor ontwikkelaars? Niet als de computer het werk verlicht.
GEPUBLICEERD IN CONTROL NUMMER 0![]()
1. De demo-scene crack intro’s
Procedurele gamedevelopment is onlosmakelijk verbonden met de demo scene. In het 8 bit-tijdperk hield een aantal slimme kids zich bezig met het kraken van programma’s. Vervolgens lieten ze hun digitale handtekening achter in de code zodat iedereen kon zien wie deze kraak op zijn naam had staan. Deze crack intros, of cracktros, werden na verloop van de tijd steeds mooiere grafische hoogstandjes en de lol van het maken van een zo mooi mogelijke digitale handtekening was bijna even groot als dat van het kraken. Later ontstond een aparte subcultuur van programmeurs die een uitdaging vonden in het zo klein mogelijk verpakken van steeds indrukwekkender programma’s. Daarvoor maken ze intensief gebruik van procedurele content creatie. |
2. .kkrieger een game in minder dan 100Kb
Nog steeds worden er competities gehouden waarin de deelnemers speelbare en rolling demo’s proppen in executables van klassen tussen 4Kb en 200Kb. Een bekende winnaar van een van deze compos is de Duitse FPS .kkrieger. In een exe van 96K zit een speelbaar level verscholen. Check de website voor informatie over hoe deze demo is ontwikkeld. |
www.theprodukkt.com/kkrieger
3. Elite procedural creation in de jaren ‘80
Deze procedurele manier van game development is niet nieuw. Het is een techniek die bij veel vroege games al werd gebruikt om redelijke hoeveelheden data in de beperkte opslagcapaciteit te proppen. Elite (1984) is een goed voorbeeld van een procedureel gegenereerde gamewereld.
In de uiteindelijke versie van het spel waren acht melkwegstelsels speelbaar met elk 256 sterren/planeten. Bedenkers David Braben en Ian Bell konden door het combineren van een reeks parameters wel 282.000.000.000.000 melkwegstelsels in de game kwijt, maar de uitgever dacht dat dat aantal de geloofwaardigheid van de game zou aantasten. |
4. RoboBlitz next-gen < 50MB!
Developer Naked Sky Entertainment ontwikkelde zijn game RoboBlitz (2006) voor Live Arcade, wat betekende dat er geen bit meer ruimte was dan 50 megabyte. Toch was het een ambitieus project, sterker nog, RoboBlitz was de eerste game die gebruik maakte van de Unreal 3-engine. Het heeft volledig op physics gebaseerde gameplay en is maar liefst 19 levels groot. Het uiteindelijke pakket: niet meer dan 49,32 MB.
Tian Mu, de CEO van Naked Sky Entertainment legt uit hoe dat gelukt is: “We hebben dankbaar gebruik gemaakt van Allegorithmic ProFX Procedural textering-tool, die het mogelijk maakt om driekwart van de textures te genereren tijdens het laden zodat we een ruim palet aan textures hadden om de levels mee aan te kleden. Uiteindelijk was de game kleiner dan 50 MB, maar zag er uit als een echte next gen titel.” |
5. Speedtree snel een bos met deze devtool
Het creëren van content is een arbeidsintensief en dus duur onderdeel van gamedevelopment. Dus waarom zou je moeilijk doen als het makkelijk (en goedkoper) kan? Om een bos te maken dat bestaat uit unieke bomen zou je normaal een hele batterij artists aan het werk moeten zetten. Een veel efficiëntere manier van werken is de middleware oplossing Speedtree. Dit programma maakt het mogelijk om snel grote hoeveelheden bomen en andere begroeiing te creëren, die er niet alleen realistisch uitziet, maar ook reageert op input uit de gamewereld. Dynamische wind- en lichteffecten helpen de illusie van een realistisch bos te versterken. SpeedtreeCAD modelleert procedureel bomen uit parameters als taklengte, bladerdichtheid en bast kwaliteit – geen twee bomen zijn identiek. Inmiddels biedt het pakket meer dan 170 typen begroeiing. |
6. Spore procedural creation in-game
Buiten de steun die ontwikkelaars gedurende het development van een game krijgen van de computer, kan procedural content creation een onderdeel uitmaken van de game zelf. Stukje theorie: De keuzes die een speler maakt in een spel zijn van invloed zijn op de wereld om hem heen. Als je dat zou kunnen koppelen aan schade of evolutie, kun je voor elke speler een unieke game-ervaring creëren. Zo uniek dat zelfs de ontwikkelaar niet eens precies zal weten waar het allemaal heen gaat. Stel, je speelt een game die een jaar duurt. In dat jaar kan de ene speler een wereld hebben die volledig overwoekerd is door planten en een andere speler een hyper moderne, functionerende stad. Die evolutie is afhankelijk van de keuzes die spelers hebben gemaakt. Dus door de game-engine een set van parameters te geven die eindeloos kunnen worden gecombineerd krijg je in theorie een oneindige variatie van werelden.
Dat is dus de theorie en zoals het er nu naar uitziet is Spore de eerste die het ook daadwerkelijk toepast. De game maakt van procedureel gegenereerde content het belangrijkste ingrediënt. Spore is geen procedurele development, want alle bouwstenen die worden aangereikt zijn op de ouderwetse manier gemaakt door artists. Je zou kunnen zeggen dat gamers mogen spelen met de tools die andere ontwikkelaars graag zelf voor de ontwikkeling van een spel hebben. Door te variëren met een groot aantal parameters zijn oneindig veel combinaties mogelijk zodat het heel onwaarschijnlijk is dat er twee dezelfde creaturen ontwikkeld worden. Het procedurele in deze game is dan ook meteen de gameplay. Het is één grote sandbox waarin mensen lekker god kunnen spelen. Maar de rol van god beperkt zich dan wel tot het creëren van wezens uit een bak met onderdelen die de ontwikkelaar heeft geselecteerd. Er is altijd een god boven god. |






