Practical Project for the Bachelor Honours Thesis
UE4, Blueprints, UMG, Proof of Concept
Trailer of the Final System:
This weather system manages different weather states and the transitions between them. It can control every parameters that is added to the system and can be used for every kind of art style.
While I created the entire interface functionality using UMG, all the graphical elements and icons were designed and created by Sümeyye Icel who was a fellow student.
Creating a Custom Weather State
Here you can see how a custom weather state is created with the interface that was specifically created to control the system. This interface would not be accessable by the user in the final product. The new weather state integrates seamlessly with the existing states and can use it’s own specific transition curve to determine how the transition from other state to this one is happening.
Adding a new Parameter to the System
The following video shows, how a new parameter is integrated into the exsiting system. The parameters were authored in this proof of concept with a combination of a Google Spreadsheet and a Data Table in Unreal. At this point the system was focused on material parameters, therefore a Blueprint would create an instance of a struct and fill it with all nessecary data of a parameter. This resulted in an array of parameter structs that were used by the interface and the core system to set the values in a specific Material Parameter Collection (MPC) and the interface respectively. These MPCs could then be used in materials or it’s values could be accessed by another blueprint or code which would use these values to change gameplay behaviors.
A good example would be traction in a racing game when it’s raining. The traction could be controlled by the amount of rain specified by a weather state. Or you could create a traction parameter which could be controlled by changing weather independently of the rain amount.
Future of the System:
The system has in my opinion great potential and I want to create a more refined and advanced version in the future. This future version should be a plugin for both UE4 and Unity and should have very precise scientific calculations for the sun, moon and night sky positions. Further I would want to do more research on the transtition and using an AI with Markov Chains that is based on real world weather data to be able to do completely autonomous transitions between the defined weather states or even create states on the fly based on more general parameters like season, humidity and temperature.
If you want to know more, contact me or read the honours thesis. I also created a thread in the UE4 forums and started to create better snow for the second version of the system.