Files
metaverseDubai/docs/PARTICLE_FX.md

272 lines
5.7 KiB
Markdown

# Particle Effects - Dubai Metaverse
## Overview
This document catalogs all particle effects for the Dubai Metaverse project.
## Particle Systems
### P_Dust
**Purpose**: Ambient dust particles in the air
#### Properties
- **Type**: GPU Particles
- **Spawn Rate**: Low to medium
- **Lifetime**: Long (10-30 seconds)
- **Size**: Small (0.1-0.5 units)
- **Color**: Beige/brown (dust color)
- **Movement**: Slow drift, wind-affected
#### Implementation
1. **Emitter Setup**:
- Spawn rate: 5-10 particles/second
- Lifetime: 15-25 seconds
- Initial velocity: Low, random
2. **Visual**:
- Texture: Dust particle texture
- Size: Small, random variation
- Color: Beige/brown, slight variation
- Opacity: Low (0.3-0.5)
3. **Behavior**:
- Wind-affected
- Gravity: Slight downward
- Collision: None (or ground collision)
#### Placement
- **Areas**: Open areas, roads, construction sites
- **Density**: Low to medium
- **Distance**: Visible at medium distance
---
### P_HeatDistortion
**Purpose**: Heat distortion effect above hot surfaces
#### Properties
- **Type**: Post-process or material effect
- **Intensity**: Subtle
- **Distance**: Above hot surfaces (roads, buildings)
- **Falloff**: Distance-based
#### Implementation
1. **Material Function**:
- Create material function
- Use distortion node
- Apply to surfaces or post-process
2. **Settings**:
- Distortion intensity: 0.1-0.3
- Distance falloff: Exponential
- Affected by time of day (stronger during day)
#### Placement
- **Surfaces**: Roads, building roofs, hot surfaces
- **Time**: Stronger during day, weaker at night
---
### P_SandBlowing
**Purpose**: Sand particles blowing in wind
#### Properties
- **Type**: GPU Particles
- **Spawn Rate**: Medium
- **Lifetime**: Short (3-10 seconds)
- **Size**: Small to medium (0.2-1.0 units)
- **Color**: Sand color (beige/tan)
- **Movement**: Fast, wind-affected
#### Implementation
1. **Emitter Setup**:
- Spawn rate: 10-20 particles/second
- Lifetime: 5-8 seconds
- Initial velocity: High, wind direction
2. **Visual**:
- Texture: Sand particle texture
- Size: Small to medium
- Color: Sand color
- Opacity: Medium (0.5-0.7)
3. **Behavior**:
- Strong wind effect
- Gravity: Downward
- Collision: Ground collision
#### Placement
- **Areas**: Desert areas, open spaces, windy areas
- **Conditions**: Windy conditions, sandstorms (optional)
---
### P_Fountain
**Purpose**: Water fountain particle effects
#### Properties
- **Type**: GPU Particles
- **Spawn Rate**: High
- **Lifetime**: Short (1-3 seconds)
- **Size**: Small to medium (0.1-0.8 units)
- **Color**: Water color (white/blue)
- **Movement**: Upward spray, gravity-affected
#### Implementation
1. **Emitter Setup**:
- Spawn rate: 50-100 particles/second
- Lifetime: 1-2 seconds
- Initial velocity: Upward, high
2. **Visual**:
- Texture: Water droplet texture
- Size: Small, random variation
- Color: White/light blue
- Opacity: High (0.7-1.0)
3. **Behavior**:
- Gravity: Strong downward
- Collision: Ground/water collision
- Splash: Splash effect on impact
#### Placement
- **Locations**: Fountains, water features
- **Density**: High near fountain, lower at distance
---
## Particle System Organization
### Folder Structure
```
Content/Assets/FX/
├── P_Dust.uasset
├── P_HeatDistortion.uasset
├── P_SandBlowing.uasset
├── P_Fountain.uasset
└── Textures/
├── T_Dust_Particle
├── T_Sand_Particle
└── T_Water_Droplet
```
### Naming Convention
- **Format**: `P_EffectName_Type`
- **Examples**:
- `P_Dust_Ambient`
- `P_Fountain_Water`
---
## Performance Optimization
### Particle Optimization
1. **Spawn Rate**: Optimize spawn rates
2. **Lifetime**: Optimize particle lifetime
3. **LODs**: Use LODs for particles
4. **Culling**: Cull particles outside view
### GPU Particles
- **Use GPU Particles**: For better performance
- **Limit Count**: Limit particle count
- **Optimize Shaders**: Optimize particle shaders
---
## Integration
### With Lighting
- **Lighting**: Particles respond to lighting
- **Shadows**: Particles cast/receive shadows (optional)
- **Time of Day**: Particle appearance changes with time
### With Weather
- **Wind**: Particles affected by wind
- **Weather Conditions**: Particle intensity varies with weather
### With Audio
- **Audio Cues**: Trigger audio with particles (optional)
- **Synchronization**: Sync particles with audio
---
## Testing
### Visual Testing
1. **Appearance**: Verify particles look correct
2. **Behavior**: Verify particle behavior is realistic
3. **Performance**: Test performance with particles
### Performance Testing
1. **Frame Rate**: Test frame rate impact
2. **Memory**: Test memory usage
3. **Optimization**: Test optimization settings
---
## Troubleshooting
### Common Issues
**Issue**: Particles not spawning
- **Solution**: Check spawn rate settings
- **Solution**: Verify emitter is active
**Issue**: Particles too bright/dark
- **Solution**: Adjust color and opacity
- **Solution**: Check lighting settings
**Issue**: Performance issues
- **Solution**: Reduce spawn rate
- **Solution**: Use LODs
- **Solution**: Optimize particle shaders
---
## Best Practices
### Particle Design
1. **Subtlety**: Keep effects subtle and realistic
2. **Performance**: Balance quality and performance
3. **Variation**: Add variation for natural look
4. **Integration**: Integrate with other systems
### Workflow
1. **Prototype**: Prototype effects quickly
2. **Iterate**: Iterate based on feedback
3. **Optimize**: Optimize for performance
4. **Document**: Document particle settings
---
**Version**: 1.0
**Last Updated**: [Current Date]