Procedural City Modeling Implemented As A Blender Plug-In Kevin Mullane Supervisors: Kevin Glass Shaun Bangay Hannah Slay
Project Aims Procedural Techniques for the Creation of Virtual Cities City Road Layout Templates Preliminary Building Generation
Overview Project Background City Generation Process Implementation Techniques Road Layout Template Implementation Generated City Results Conclusions
Project Background Text-To-Scene System – Current project of the Virtual Reality Special Interest Group at Rhodes University – Aims to generate interactive 3D environments based on textual descriptions. Blender Python API – Open Source 3D Modelling Package – Implements a Python Interface – Allows for Procedural Scene Generation
City Generation Process City Limits Delimitation – User Parameter – Defined By Landscape – Randomly Generated Highway Network Generation – Raster / Checkered Layout – Branching Layout – Radial Layout Suburb Region Extraction – Region Extraction Algorithm – Structure Heights
City Generation Process Road Network Generation – Region Subdivision – Regular Quads and Triangles – Roads and Intersections Extracted Block Region Extraction – Region Extraction Algorithm – Blocks Resized Building Extrusion – Quads Extruded Upwards – Height Within a Determined Range
City Generation Process
Implementation Techniques Road Segment Generation Region Extraction Algorithm Regulated Subdivision
Implementation Techniques Road Segment Generation Ray Generation Endpoint Generation Legality Testing Road Layout Evaluation Best point is chosen New Road Segment is created Road intersection testing Endpoint proximity testing
Implementation Techniques Region Extraction Algorithm Initial Road Selection Smallest Angle Selection Record Road Traversal and Direction Accumulate Interior Angles Exterior Region Detection
Implementation Techniques Regulated Subdivision Adjacent Edge Triangulation Adjacent Triangle Evaluation Shared Edge Removal Quadrangle Subdivision Triangle Subdivision Further Quadrangle Creation
Road Layout Templates Raster / Checkered Layout – Restrict Road Generation Angle – Restrict Road Segment Lengths Branching Layout – Wider Range of Generation Angles – Less Restriction on Segment Length Radial / Circular Layout – Radial Roads – Circular Roads
Generated City Results
Layout: Circular / Radial Highway Segments: 23 Intersections: 280 Road Segments: 863 Buildings: 3519
Generated City Results Layout: Checkered Highway Segments: 68 Intersections: 741 Road Segments: 2239 Buildings: 8959
Conclusions Procedural Techniques for the Creation of Virtual Cities City Road Layout Templates Preliminary Building Generation