https://github.com/parkerbritt/maya_building_generator
Personal project to create procedural buidings in maya
https://github.com/parkerbritt/maya_building_generator
city-builder maya maya-python procedural-generation procedural-programming vfx
Last synced: 3 months ago
JSON representation
Personal project to create procedural buidings in maya
- Host: GitHub
- URL: https://github.com/parkerbritt/maya_building_generator
- Owner: ParkerBritt
- License: mit
- Created: 2025-01-18T22:59:22.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-02-06T13:23:50.000Z (5 months ago)
- Last Synced: 2025-03-17T20:13:01.322Z (3 months ago)
- Topics: city-builder, maya, maya-python, procedural-generation, procedural-programming, vfx
- Language: Python
- Homepage:
- Size: 27.3 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Procedural Building Generator for Maya
![]()
![]()
### Overview
**Procedural Building Generator** is a script for generating 3D urban environments in Autodesk Maya.
The system creates customizable building facades and layouts through procedural methods.
It is ideal for quickly creating buildings from simple geometry.
> [!IMPORTANT]
> This script may not function on other systems without modifications, and updates or support are not planned.### Features
- **Procedural Generation**:
- Automated placement of windows, doors, trims, and bricks.
- **Customizability**:
- User-defined parameters like floor density, ground floor height, and trim dimensions..## Technologies Used
- Python 3.10.8
- Autodesk Maya with `pymel` and `cmds` modules
- UI elements via `PySide2`## Core Components
1. **Building Generator** (`building_gen.py`)
- Generates buildings from a reference cube geometry.
- Applies shaders, trims, and geometry adjustments.
2. **Building Facade Logic** (`building_side.py`)
- Manages facade elements like windows, doors, and trims.
- Supports density-based distributions and bilinear sampling for precise placements.
3. **Stair Generator** (`stairs.py`)
- Creates spiral or straight staircases with randomized dimensions.
4. **Ball Animation** (`ball.py`)
- Implements bouncing ball animations synchronized with stair geometry.
5. **Scene Management** (`scene_data.py`)
- Centralizes scene-wide parameters like step dimensions and ball sizes.## Usage
### Prerequisites
- Autodesk Maya installed with `pymel` module.
- Basic knowledge of Python and Maya scripting.
- Appropriately named primitive geometry to populate the building with. (check the code for details)### Installation
1. Clone the repository to your maya scripts directory. On Linux this is at ```~/maya/scripts```
```bash
git clone https://github.com/ParkerBritt/maya_building_generator
```
2. Import the library with
```python
import maya_building_generator
```
3. Call the desired function