295 lines
6.4 KiB
Markdown
295 lines
6.4 KiB
Markdown
# Building Pipeline - Dubai Metaverse
|
|
|
|
## Overview
|
|
|
|
This document describes the complete pipeline for creating building assets for the Dubai Metaverse project, from modeling to final placement in Unreal Engine.
|
|
|
|
## Pipeline Stages
|
|
|
|
### 1. Planning & Reference
|
|
|
|
#### Reference Collection
|
|
|
|
- **Photography**: Collect reference photos
|
|
- **Architectural Plans**: If available
|
|
- **Material References**: Glass, concrete, metal samples
|
|
- **Context**: Surrounding buildings, scale reference
|
|
|
|
#### Asset Planning
|
|
|
|
- **Building Type**: Residential, commercial, mixed-use
|
|
- **Priority**: Tier 1 (hero), Tier 2 (primary), Tier 3 (background)
|
|
- **Specifications**: Dimensions, materials, details
|
|
- **Timeline**: Estimated completion date
|
|
|
|
---
|
|
|
|
### 2. Modeling
|
|
|
|
#### Blockout
|
|
|
|
1. **Basic Shape**: Create basic building shape
|
|
2. **Scale Verification**: Verify scale is 1:1
|
|
3. **Proportions**: Check proportions match reference
|
|
4. **Placement**: Place in blockout level
|
|
|
|
#### High-Poly Modeling
|
|
|
|
1. **Main Structure**: Model main building structure
|
|
2. **Architectural Details**: Add windows, balconies, details
|
|
3. **Rooftop Elements**: Add rooftop features
|
|
4. **Base Structure**: Model base/podium
|
|
|
|
#### Low-Poly Modeling (if not using Nanite)
|
|
|
|
1. **Optimization**: Create optimized low-poly version
|
|
2. **LODs**: Generate LOD0-3
|
|
3. **Topology**: Clean topology for performance
|
|
|
|
#### UV Mapping
|
|
|
|
1. **UV Layout**: Create UV layout
|
|
2. **UDIM**: Use UDIM for hero assets (8K)
|
|
3. **Standard UVs**: Use standard UVs for primary/background (4K/2K)
|
|
4. **Optimization**: Optimize UV space usage
|
|
|
|
---
|
|
|
|
### 3. Texturing
|
|
|
|
#### Substance Painter
|
|
|
|
1. **Project Setup**: Import mesh, set resolution
|
|
2. **Bake Maps**: Bake normal, AO, curvature
|
|
3. **Texture Creation**: Create texture sets
|
|
4. **Export**: Export textures (see TEXTURING_WORKFLOW.md)
|
|
|
|
#### Texture Sets
|
|
|
|
- **Base Color**: Material colors
|
|
- **Normal**: Surface detail
|
|
- **Roughness**: Surface roughness
|
|
- **Metallic**: Metallic map
|
|
- **AO**: Ambient occlusion
|
|
|
|
---
|
|
|
|
### 4. Material Creation
|
|
|
|
#### Material Setup
|
|
|
|
1. **Create Material**: Create material asset
|
|
2. **Assign Textures**: Assign texture maps
|
|
3. **Configure**: Set material properties
|
|
4. **Parameters**: Expose parameters for instances
|
|
|
|
#### Material Library
|
|
|
|
- **Shared Materials**: Use shared materials where possible
|
|
- **Instances**: Create instances for variations
|
|
- **Documentation**: Document material usage
|
|
|
|
---
|
|
|
|
### 5. Import to Unreal
|
|
|
|
#### Import Settings
|
|
|
|
- **Nanite**: Enable for high-poly (hero/primary)
|
|
- **LODs**: Generate LODs for non-Nanite
|
|
- **Collision**: Auto-generate or custom
|
|
- **Scale**: Verify 1:1 scale
|
|
|
|
#### Material Assignment
|
|
|
|
1. **Assign Materials**: Assign materials to mesh
|
|
2. **Test**: Test in level
|
|
3. **Adjust**: Adjust materials if needed
|
|
4. **Validate**: Validate visual quality
|
|
|
|
---
|
|
|
|
### 6. Placement & Integration
|
|
|
|
#### Level Placement
|
|
|
|
1. **Place Building**: Place in level
|
|
2. **Position**: Verify position matches blockout
|
|
3. **Orientation**: Check orientation
|
|
4. **Scale**: Verify scale
|
|
|
|
#### Integration
|
|
|
|
1. **Lighting**: Test with lighting
|
|
2. **Shadows**: Verify shadows
|
|
3. **Reflections**: Check reflections (glass)
|
|
4. **Performance**: Test performance
|
|
|
|
---
|
|
|
|
## Building Categories
|
|
|
|
### Hero Buildings (Tier 1)
|
|
|
|
- **Count**: 1-2 buildings
|
|
- **Quality**: Maximum (8K textures, Nanite)
|
|
- **Examples**: Cayan Tower
|
|
- **Pipeline**: Full pipeline with maximum detail
|
|
|
|
### Primary Buildings (Tier 2)
|
|
|
|
- **Count**: 20-40 buildings
|
|
- **Quality**: High (4K textures, optimized geometry)
|
|
- **Examples**: Marina residential towers
|
|
- **Pipeline**: Full pipeline with high detail
|
|
|
|
### Background Buildings (Tier 3)
|
|
|
|
- **Count**: 30-50 buildings
|
|
- **Quality**: Standard (2K textures, simplified geometry)
|
|
- **Examples**: Generic modern buildings
|
|
- **Pipeline**: Simplified pipeline, procedural where possible
|
|
|
|
---
|
|
|
|
## Quality Standards
|
|
|
|
### Geometry
|
|
|
|
- **Hero**: Maximum detail, photoreal quality
|
|
- **Primary**: High detail, recognizable features
|
|
- **Background**: Simplified but recognizable
|
|
|
|
### Textures
|
|
|
|
- **Hero**: 8K (UDIM workflow)
|
|
- **Primary**: 4K
|
|
- **Background**: 2K
|
|
|
|
### Materials
|
|
|
|
- **PBR Workflow**: All materials use PBR
|
|
- **Consistency**: Maintain consistency across assets
|
|
- **Performance**: Optimize for performance
|
|
|
|
---
|
|
|
|
## Naming Conventions
|
|
|
|
### Static Meshes
|
|
|
|
- **Format**: `SM_Building_Category_Number`
|
|
- **Examples**:
|
|
- `SM_Building_Marina_01`
|
|
- `SM_Building_Support_01`
|
|
|
|
### Materials
|
|
|
|
- **Format**: `M_Building_Type_Resolution`
|
|
- **Examples**:
|
|
- `M_Building_Glass_4K`
|
|
- `M_Building_Concrete_4K`
|
|
|
|
See [NAMING_CONVENTIONS.md](../NAMING_CONVENTIONS.md) for details.
|
|
|
|
---
|
|
|
|
## Performance Optimization
|
|
|
|
### Nanite
|
|
|
|
- **Usage**: All static meshes where possible
|
|
- **Benefit**: High-poly without performance penalty
|
|
- **Target**: 100% of static meshes use Nanite
|
|
|
|
### LODs
|
|
|
|
- **Usage**: Non-Nanite assets
|
|
- **LODs**: LOD0-3 for primary, LOD0-2 for background
|
|
- **Generation**: Auto-generate or manual
|
|
|
|
### Material Optimization
|
|
|
|
- **Shared Materials**: Use shared materials
|
|
- **Instances**: Use material instances for variations
|
|
- **Complexity**: Minimize shader complexity
|
|
|
|
---
|
|
|
|
## Validation Checklist
|
|
|
|
### Modeling
|
|
|
|
- [ ] Scale is correct (1:1)
|
|
- [ ] Proportions match reference
|
|
- [ ] Geometry is clean
|
|
- [ ] UVs are optimized
|
|
|
|
### Texturing
|
|
|
|
- [ ] Textures meet resolution requirements
|
|
- [ ] All texture maps are present
|
|
- [ ] Textures are artifact-free
|
|
- [ ] Colors are accurate
|
|
|
|
### Materials
|
|
|
|
- [ ] Materials are assigned correctly
|
|
- [ ] PBR workflow is correct
|
|
- [ ] Materials look realistic
|
|
- [ ] Performance is acceptable
|
|
|
|
### Integration
|
|
|
|
- [ ] Building placed correctly
|
|
- [ ] Lighting works correctly
|
|
- [ ] Shadows are correct
|
|
- [ ] Performance is acceptable
|
|
|
|
---
|
|
|
|
## Troubleshooting
|
|
|
|
### Common Issues
|
|
|
|
**Issue**: Building scale is wrong
|
|
- **Solution**: Check import scale settings
|
|
- **Solution**: Verify reference dimensions
|
|
|
|
**Issue**: Textures not displaying
|
|
- **Solution**: Check material assignment
|
|
- **Solution**: Verify texture import settings
|
|
|
|
**Issue**: Performance issues
|
|
- **Solution**: Enable Nanite
|
|
- **Solution**: Generate LODs
|
|
- **Solution**: Optimize materials
|
|
|
|
---
|
|
|
|
## Tools
|
|
|
|
### Modeling
|
|
|
|
- **Blender**: Free, recommended
|
|
- **Maya**: Professional alternative
|
|
- **3ds Max**: Alternative
|
|
|
|
### Texturing
|
|
|
|
- **Substance Painter**: Primary tool
|
|
- **Substance Designer**: Procedural materials
|
|
- **Photoshop**: Additional editing
|
|
|
|
### Import
|
|
|
|
- **Unreal Engine**: Direct import
|
|
- **FBX**: Standard format
|
|
- **Datasmith**: For CAD data (optional)
|
|
|
|
---
|
|
|
|
**Version**: 1.0
|
|
**Last Updated**: [Current Date]
|
|
|