hyperforce Posted July 16, 2012 Share Posted July 16, 2012 (edited) This procedural level design tool is the result of my graduation project and my dissertation study into: “The rules behind a procedural death match map generator”. This project earned me a 10 and allowed me to graduate Cum Laude (with distinction) from the University of Applied Sciences in Breda. It earned me the title of Bachelor of Engineering in Game Architecture & Design. This Thread has been updated following the completion of my Graduation project. This tool is designed to create fully playable complex 3D combat arena's for the Unreal Development Kit, with minimal user / designer input. But without taking away control. It allows for rapid iteration and testing, using a user-mediated construction method. With this tool, a level designer becomes a digital director. The generator constructs levels following the death match game-type rule sets of Unreal Tournament 3 and the UDK, discovered during my dissertation ( Specifically "Axon" faction levels). It is capable of creating fully traverse-able, multi-leveled, interior 'white-boxed' maps. Including path nodes, player starts, logically distributed pickups and decorative meshes. Think of it as a 3D sketch pad for level designers, where the results can be immediately play-tested. The tool is fully procedural, and the results can be exported directly to the UDK using the .OBJ and .T3D file formats. The generator is highly modular and can be expanded and adjusted easily to support other game-types or games. Many components of the generator have also been improved over the course of my graduation period. The user interface and workflow have been significantly tightened and are now easier to use. It features 3 levels of control, ranging from highly automated to deep manual control. When using only random results and manual overrides, the tool can be used to rapidly browse through and tweak possible level layouts in order to quickly prototype unique levels. While using manual input allows for deep and detailed control over every part of the process. A designer can have as much control over the final result as he/she wishes. The tool uses a user-mediated approach to procedural level construction, meaning that it requires a designer to determine the shape and layout of a level he/she wishes to create. The actual construction of said level however is fully automated. How it works: The tool is mainly based on volume conversion (Houdini's Voxels) and constructs a level according to a 3D grid. After the main landmark spaces are generated, corridor profile curves are established between them using a path finding algorithm written specifically for this generator by Leroy Sikkes. Following this, the corridors are assembled from a series of components by analyzing the profile curves. Where corridors interconnect, minor rooms are generated. Finally, the combined level mesh is processed to form an internal grid, which is used to create catwalks and ramps. The finished level mesh is automatically UV'd to identify different area's and the mesh is optimized. Various objects can be automatically or manually placed throughout the level. These objects by default will always try to ensure the spaces they are placed in remain traverse-able. Place-able objects include: pillars, columns, low cover objects, box stacks & railings. Next a path grid is generated throughout the level for AI navigation and pickup placement. This is done in layers, each representing a different form of player navigation. Using these layers and the level geometry, each point in the grid is analysed and compared to the rest of the level for the following data: Exposure, Space to move, Distance to Walls, Height advantage & Reach-ability. This data is used to calculate the risk or tactical value of each point on the grid. A designer can then designate a series of hot-spots. These hot-spots are locations that the designers wants to attract players towards. This can also be done automatically if so desired. A designer can let the tool create a random pickup load-out for the level, or specify his/her own pickups. Each pickup definition in the load-out menu as well as each pickup archetype has its own placement rules. Based on the pickups placement definitions, the risk grid and hot-spots in the level; pickups are logically distributed throughout the level. During the final step, the level geometry is subdivided and cleaned. The size of each segment is calculated and a series of meshes are assigned to their respective surface. All a designer has to do to play the level is export it from Houdini using the OBJ and T3D format & import the files into the UDK and build the pathing. This can be done in less than 5 minutes. The .T3D exporter used in Houdini is currently under development by Jan Pijpers. The main node graph of the level geometry generation (steps 1-6): http://img831.images...generatorgr.jpg For in depth information about how this part of the project was created, see my dissertation: Compressed: 23.5 MB: https://rapidshare.c...issertation.pdf Uncompressed: 77,5 MB: https://rapidshare.c...ertation_HQ.pdf For further information on how the generator is used, see the user manual: 12 MB: http://rapidshare.co...USER MANUAL.pdf Contact me at: Erwin Heyms Technical & Procedural Level Designer Erwinheyms@gmail.com (+31) 644101169 My Portfolio and Curriculum Vitae: 30,1 MB: http://rapidshare.co..._Vitae_2013.pdf My Linked-in Page: http://www.linkedin....eyms/24/687/243 A half hour presentation at the Global Game Jam - January 2013, that go's into depth on the project: [media] [media]To clarify, this tool does not "design" levels on its own, but it is based on the design rules discovered during my dissertation study. It employs a user-mediated approach, meaning that it requires a designer to determine the shape and layout of the level he/she wishes to create. The actual construction of said level however is automated. Randomized results can be used (to quickly explore possible solutions) during many of the steps in the process, but it is by no means required. A designer can have as much control over the final result as he/she wishes. Simply put: this tool enables a designer to rapidly prototype a level from the idea stage, to a play-testable stage, within only a fraction of the time it would have otherwise taken him/her. This procedural level design tool has several interesting utilities. Primarily, it is a tool that allows for the rapid generation of white box quality death match levels. Using it, a designer can quickly “sketch” out a level, make adjustment and play-test the result within only a fraction of the time it would have taken using a manual process. Secondly, with further polish and development, a generator such as this prototype could be integrated into a first or third person shooter. This could allow players to create their own combat arena’s without the need for complicated level editing software or level design experience. Furthermore, players could share their levels online, and download the best rated levels from other players, allowing for a nearly unlimited supply of levels and a longer game lifespan. With special thanks to: - Nathan Danïels, Elroy Aarts, Jesse Ravenbergen, Richard v. Beersum, Thomas Buijtenweg & Wytze van Balkom: Playtesting & Data capture. - Kim Goossens: My Houdini supervisor. - Ronny Franken: My level design supervisor. - Andrew Paquette: My art Supervisor. - Leroy Sikkes: Pathfinding Algorithm Script. - Jan Pijpers: Creator of the .T3D Houdini to UDK exporter. *Total accumulated cooking time of the demonstrated level inside Houdini took roughly 8 minutes. Construction of the level in my show reel took in between 2-3 hours + and hour of tweaking. NHTV International Game Architecture and Design The academy of Digital Entertainment Edited February 1, 2013 by hyperforce 6 Quote Link to comment Share on other sites More sharing options...
Tom Posted July 16, 2012 Share Posted July 16, 2012 Damn, that's pretty awesome! How long did you worked on this? Quote Link to comment Share on other sites More sharing options...
hyperforce Posted July 16, 2012 Author Share Posted July 16, 2012 (edited) Damn, that's pretty awesome! How long did you worked on this? Since February, The deadline was mid June. Though I have been adding additional features and improvements since I think I've put about 800+ hours into it so far. Edited July 16, 2012 by hyperforce Quote Link to comment Share on other sites More sharing options...
Annon Posted July 16, 2012 Share Posted July 16, 2012 Very nice! Quote Link to comment Share on other sites More sharing options...
ikarus Posted July 16, 2012 Share Posted July 16, 2012 Cool work, figured someone would eventually see the light and incorporate houdini in UDK work. Quote Link to comment Share on other sites More sharing options...
Pazuzu Posted July 17, 2012 Share Posted July 17, 2012 (edited) Very Nice Project!!!! Edited July 17, 2012 by Pazuzu Quote Link to comment Share on other sites More sharing options...
FrederikP Posted September 25, 2012 Share Posted September 25, 2012 Hi, great work. looks very robust and useful. Great to see something like this come out of IGAD. Quote Link to comment Share on other sites More sharing options...
hyperforce Posted January 16, 2013 Author Share Posted January 16, 2013 (edited) I've updated this thread with the completion of my graduation project Edited January 16, 2013 by hyperforce Quote Link to comment Share on other sites More sharing options...
acey195 Posted January 17, 2013 Share Posted January 17, 2013 Very nice Erwin Just a question, Which part of the level is a custom model from Houdini, and which parts are created out of pre-existing prefabs? Quote Link to comment Share on other sites More sharing options...
0rr Posted January 18, 2013 Share Posted January 18, 2013 awesome work! Quote Link to comment Share on other sites More sharing options...
hyperforce Posted January 18, 2013 Author Share Posted January 18, 2013 Very nice Erwin Just a question, Which part of the level is a custom model from Houdini, and which parts are created out of pre-existing prefabs? Everything, except for the final decorative meshes, are Houdini smart assets. The final decorative meshes are prefabs made in another modeling program. It is possible to provide your own meshes for the landmark rooms as well if you wish. These will have to be provided in the form of one or more fully enclosed meshes (preferably 4 directional), but it is not required. The corridor and catwalk components will re-scale themselves based the grid size and corridor width/height. The cover objects are also smart assets constructed in Houdini. They can be re-scaled and deformed. Quote Link to comment Share on other sites More sharing options...
hyperforce Posted January 28, 2013 Author Share Posted January 28, 2013 My apologies for those that have been trying to download from my rapid-share account through the links above. Apparently rapid-share has changed its download policies over the past few months and I had to open them up again so third parties could download them. In the next few days I'll upload a presentation I did at my Uni. that go's into more detail on the project. More on this soon. Quote Link to comment Share on other sites More sharing options...
hyperforce Posted February 1, 2013 Author Share Posted February 1, 2013 (edited) I have added my presentation at the global game jam: - presentation intro - project description - workflow - project construction - questions Edited February 1, 2013 by hyperforce Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.