Description
Designed as a method for generating structured and parameter driven textures on the fly, this senior project makes use of techniques pioneered by the group Farbrausch.
This procedural texture generation project is a tech demo with the goal of showing how PCG tech could be used to spark novelty in game design, compress texture information and even allow for on the fly live service updates to online games.
Controls
Editor Controls:
- Instructions are executed from the top of the command queue to the bottom of the command queue. Commands can be moved around by dragging them in the queue. They can also be deleted by clicking on a command and hitting the delete button.
- Properties/Parameters of a given command can be edited in the bottom right panel labeled "Instruction details" after clicking and selecting a command from the Instruction Queue.
- Adding instructions to the bottom of the command queue can be done by selecting a new command form the drop down menu and hitting the "Add Instruction" button
- Some commands such as the Synthesize Texture command rely on layers. Layers can be set with the create layer and set layer commands. All subsequent commands will operate only on the layer that has been selected.
- File operations such as saving and loading can be used from the File dropdown in the menu bar. Some example textures can be viewed from the downloads section of this page.
Demo Controls:
- W/A/S/D — Move
- Mouse — Aim
- Left Click — Fire Projectile
- Right Click — View Map
- Mouse Wheel — Change Zoom Level
- Space — Use Item
- Q — Swap Item
- F1 — Toggle Noclip
- F3 — Toggle README
- F9 — Generate New Map
- Texture command execution is currently done on the CPU for ease of development instead of in shader code on the GPU. Because of this, texture load times for the demo are very slow — speed and optimization was not the primary goal of this study.
- The demo program being used here is a procedurally generated dungeon project from a previous semester that isn't featured on the site. This project felt like the perfect place to demo procedural textures.
- The thin orange triangle next to the player indicates the direction of the floor boss / exit.
- Picking up items throughout the dungeon will increase the player's relative power making the boss fight at the end of the dungeon much more manageable.
Presentation
Gallery






File Downloads
Demo – GAM399I_M3_Demo.zip
PCG Editor – GAM399I_M3_Tool.zip
Example Textures – GAM399I_M3_Examples.zip
Research Documentation – research_doc.pdf
Final Documentation – final_doc.pdf
Presentation – PCG_presentation.mp4