Full setup

Optional Game Creator 2 Integration

Overview

Environment System is a lightweight Unity module for handling time of day, weather, skyboxes, and storm effects in a reusable workflow. It works as a standalone system and also includes optional Game Creator 2 integration through ready-to-use instructions, conditions, and triggers.

Positioning

Standalone environment system for Unity with optional Game Creator 2 integration.

Suitable for:

  • projects that need a simple day/night cycle

  • projects that need weather presets and ambient changes

  • projects that want a quick demo-ready setup

  • Game Creator 2 projects that want visual scripting integration

Features

  • Day/Night cycle with automatic time progression

  • Sun rotation and light intensity control

  • Ambient light and fog updates based on time

  • Weather system with configurable weather types

  • Weather presets for fog, ambient color, VFX, and audio

  • Optional storm lightning controller

  • Smooth weather transitions

  • Standalone runtime system with optional Game Creator 2 instructions, conditions, and triggers

  • Demo scene helpers and simple auto-generated demo UI

Installation

Place the module folder inside your Unity project:

Requirements:

  • Unity

  • Game Creator 2 only if you want to use the included GC2 integration

Setup

  1. Create a new GameObject in your scene.

  2. Add the EnvironmentSystem component.

  3. Configure the Time Of Day and Weather manager settings in the inspector.

  4. Assign a directional Light as the sun if you want day/night lighting control.

  5. Create one or more WeatherPreset assets and assign them to the Weather Manager.

  6. Optionally assign weather VFX and loop audio through the preset and manager settings.

  7. Optionally add LightningController for storm flash effects.

  8. Optionally use EnvironmentDemoSetup and EnvironmentDemoUI for a quick test scene setup.

  9. Use the included Game Creator 2 instructions, conditions, and triggers in your visual scripting logic.

Inspector Reference

EnvironmentSystem

  • Time Of Day Manager: Main day/night settings block.

  • Weather Manager: Main weather settings block.

Time Of Day Manager

  • Time Of Day: Current in-game hour.

  • Day Length In Minutes: Real-time minutes for a full 24-hour cycle.

  • Sunrise Hour: Hour when the system starts the daytime phase.

  • Sunset Hour: Hour when the system starts the nighttime phase.

  • Auto Advance: Automatically advances time every frame.

  • Sun Light: Directional light used as the main sun light source.

  • Sun Visual: Optional sun transform that rotates with the time of day.

  • Moon Visual: Optional moon transform that rotates opposite the sun and is shown at night.

  • Day Skybox: Skybox used during daytime.

  • Night Skybox: Skybox used during nighttime.

  • Skybox Transition Duration: Duration of day/night skybox transitions.

  • Enable Skybox Rotation: Enables rotation on the active skybox if the shader supports _Rotation.

  • Skybox Rotation Speed: Shared skybox rotation speed when custom day/night speeds are disabled.

  • Skybox Rotation Offset: Adds a starting rotation offset to the active skybox.

  • Invert Skybox Rotation: Reverses the skybox rotation direction.

  • Use Custom Day Night Skybox Rotation: Enables separate rotation speeds for day and night skyboxes.

  • Day Skybox Rotation Speed: Rotation speed used while daytime skybox is active.

  • Night Skybox Rotation Speed: Rotation speed used while nighttime skybox is active.

  • Day Skybox Exposure: Skybox exposure target during daytime if the shader supports _Exposure.

  • Night Skybox Exposure: Skybox exposure target during nighttime if the shader supports _Exposure.

  • Sunrise Rotation: Sun rotation target around sunrise.

  • Noon Rotation: Sun rotation target around midday.

  • Sunset Rotation: Sun rotation target around sunset.

  • Midnight Rotation: Sun rotation target around midnight.

  • Day Intensity: Sun light intensity during daytime.

  • Night Intensity: Sun light intensity during nighttime.

  • Ambient Day Color: Ambient light color used during daytime.

  • Ambient Night Color: Ambient light color used during nighttime.

  • Fog Day Color: Fog color used during daytime.

  • Fog Night Color: Fog color used during nighttime.

  • Fog Density Day: Fog density used during daytime.

  • Fog Density Night: Fog density used during nighttime.

Weather Manager

  • Current Weather: Current active weather type.

  • Presets: List of weather presets used by the system.

  • Weather Audio Source: Optional audio source used for looping weather audio.

  • Vfx Root: Optional parent transform for instantiated weather VFX.

  • Follow Target: Optional target that active weather VFX will follow.

  • Transition Duration: Duration of weather ambient/fog/audio transitions.

  • Use Random Weather: Enables automatic weather switching over time.

  • Random Weather Interval Min: Minimum minutes before the next random weather change.

  • Random Weather Interval Max: Maximum minutes before the next random weather change.

  • Allowed Weather: Optional whitelist for random weather selection.

  • Excluded Weather: Optional blacklist for random weather selection when no whitelist is used.

WeatherPreset

  • Type: Weather type represented by this preset.

  • Fog Color: Fog color applied by the preset.

  • Fog Density: Fog density applied by the preset.

  • Ambient Color: Ambient light color applied by the preset.

  • Override Lighting: Enables lighting intensity override for this preset.

  • Light Intensity Multiplier: Multiplies sun and ambient lighting for this preset.

  • Allow In Random Weather: Allows this preset to be used by automatic random weather selection.

  • Override Skybox: Enables a weather-specific skybox override.

  • Skybox Material: Skybox used when override is enabled.

  • Weather Vfx: Particle system prefab or scene particle system used for this weather.

  • Loop Clip: Optional looping audio clip for this weather.

  • Volume: Playback volume for the weather loop clip.

  • Loop Fade In Duration: Time in seconds for the loop audio to fade in.

  • Loop Fade Out Duration: Time in seconds for the loop audio to fade out.

LightningController

  • Environment System: Environment System reference used to detect storm weather.

  • Flash Light: Optional light used for lightning flashes.

  • Strike Target: Optional reference point used for random lightning strike positions.

  • Min Interval: Minimum seconds between lightning flashes.

  • Max Interval: Maximum seconds between lightning flashes.

  • Min Strike Distance: Minimum distance from the strike target for thunder effects.

  • Max Strike Distance: Maximum distance from the strike target for thunder effects.

  • Strike Height Offset: Height offset applied to spawned thunder effects.

  • Flash Intensity: Intensity applied to the flash light during lightning.

  • Flash Duration: Duration of a single lightning flash.

  • Thunder Audio Source: Optional audio source used for thunder playback.

  • Thunder Clips: List of thunder sounds. One random clip is played on each flash.

  • Effect Root: Optional parent transform for instantiated thunder effects.

  • Thunder Effects: List of particle effects. One random effect is played on each flash.

Usage

Game Creator 2 Integration

Instructions

  • Environment/Set Time

  • Environment/Add Hours

  • Environment/Set Weather

  • Environment/Set Random Weather

  • Environment/Set Sunrise Time

  • Environment/Set Sunset Time

  • Environment/Set Day Length

Conditions

  • Environment/Is Day

  • Environment/Is Dawn

  • Environment/Is Dusk

  • Environment/Is Night

  • Environment/Is Weather

  • Environment/Time Greater Than

  • Environment/Time Less Than

  • Environment/Time Between

Triggers

  • Environment/On Weather Changed

  • Environment/On Weather Is

  • Environment/On Time Changed

  • Environment/On Sunrise

  • Environment/On Sunset

  • Environment/On Day Started

  • Environment/On Night Started

Demo Tools

  • EnvironmentDemoSetup for quick scene preparation

  • EnvironmentDemoUI for simple weather and time controls

  • LightningController for lightweight storm flashes

Folder Structure

Notes

  • The system is intentionally simple and easy to extend.

  • It does not depend on a specific render pipeline.

  • It is suitable for built-in, URP, and HDRP projects as long as you configure scene visuals accordingly.

Last updated

Was this helpful?