Skip to content

A simple system with a day-night cycle and a landscape auto material, originally based on a reworked Udemy course

License

Notifications You must be signed in to change notification settings

lambda-snail/EnvironmentSystem

Repository files navigation

EnvironmentSystem

A simple system with a day-night cycle and customizable weather effects.

This repository is mostly intended for my own use, to share the code between my different projects. The environment system is a conversion and slight refactor of the blueprint system featured in the great course One Course Solution for Dynamic Sky System by Vince Petrelli on Udemy.

Converting the system to C++ taught me many things about working with dynamic materials and Niagara effects in code.

Usage

  1. Remove all light and atmosphere things from the map.
  2. Drag the EnvironmentController into the map

Common Problems

Sometimes the shaders bug out and you can see the sky sphere in the background. This is usually accompanied by the moon or sun looking strange.

To fix this usually one of these things will work:

  • Reload the blueprint asset
  • Restart the editor
  • Remove EnvironmentController and add it back to the map

Future Updates

  • Add tickable day/night cycle with time awareness and configurable speed
  • Add delegates for subscribing to events such as when when the sun rises or sets, or when the weather changes
  • Add subsystem to query the current time and manipulate the weather system in the current level
  • Bug fixes
  • Add more weather types

About

A simple system with a day-night cycle and a landscape auto material, originally based on a reworked Udemy course

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published