# Province Event 3D Effects Ideas for replacing 2D shader-based province event effects with 3D particle systems. ## Current State | Event | Effect Type | Notes | |-------|-------------|-------| | Festival | 3D particles | Complete | | Epidemic | 3D particles | Complete (rising skulls + green haze) | | Blizzard | 2D shader | Not visible on unowned (white) provinces | | Drought | 2D shader | | | Flood | 2D shader | | | Beasts | None | Tricky - can be any animal or human | ## Proposed 3D Effects ### Blizzard - Falling snowflakes with slight blue tint (ensures visibility on white backgrounds) - Diagonal wind-blown particles to convey harsh weather - Swirling vortex effect near ground level - Frosty sparkle/glitter particles for magical winter feel ### Drought - Rising dust/sand particles (tan/brown coloring) - Small dust devils (spinning particle columns) - Shimmering golden particles rising to suggest heat distortion - Dried leaves/debris blowing across the province ### Flood - Rain falling (blue-tinted streaks or droplets) - Water splashes/ripples rising from ground - Mist/spray particles hovering low - Floating debris particles (leaves, sticks) ### Beasts This is challenging since "beasts" can represent any dangerous creature. Universal approaches: - **Circling vultures/crows overhead** - Predators attract scavengers; works for any beast type and is visually distinctive - Dust clouds suggesting movement at province edges - Glowing eyes appearing/disappearing in shadows - Stylized claw/scratch mark effects - Paw prints materializing on the ground - Red "danger" aura pulsing from ground level The vultures/crows approach is recommended as the most universal solution. ## Implementation Status Controllers have been created for all 4 event types: - `ProvinceBlizzardController.cs` - ready, needs prefab - `ProvinceDroughtController.cs` - ready, needs prefab - `ProvinceFloodController.cs` - ready, needs prefab - `ProvinceBeastsController.cs` - ready, needs prefab ### Prefabs Needed Create these prefabs in `Assets/Eagle/Effects/`: 1. **BlizzardEffect.prefab** - Particle System with falling snowflakes - Blue-tinted particles for visibility on white - Diagonal velocity for wind effect - RectTransform for UI positioning 2. **DroughtEffect.prefab** - Particle System with rising dust particles - Tan/brown coloring - Upward velocity - Optional spinning sub-emitters for dust devils 3. **FloodEffect.prefab** - Particle System with falling rain streaks - Blue tint - Fast downward velocity - Optional splash sub-emitter 4. **BeastsEffect.prefab** - Particle System with bird silhouettes - Circular orbit motion around center - Black/dark particles - Could use a crow/vulture sprite texture ### Scene Setup Wire up in `Assets/Scenes/Eagle.unity`: 1. Add controller components to the Map GameObject 2. Assign `mapContainer`, `centroidsJson` (shared with other controllers) 3. Assign the effect prefab for each controller