Background on Weatherwise
Weatherwise is our themeable weather app build upon an open source 2D game engine
Our business model always planned to allow independent artist’s to create their own data visualizations of the weather. A main challenge we faced was creating a simple way to allow artists to build themes for weatherwise. Creating themes for a mobile 2D game engine with no knowledge of coding, animation or weatherwise was complicated and proved a huge barrier of entry.
We first broke down a theme into a structure that could be easily navigated by condition and time of day. Themes are essentially layers of images and particle systems, so we built a layer system to control animations, z-index, position etc. Our approach should feel familiar to anyone who has ever used layers in a program like Adobe Photoshop. Our layer system is contextual and gives you only the properties for the selected layer.
Simplifying particle systems
As we tested the software it was apparent particle systems were complicated and confusing to designers with little experience with them. Unfortunately, in weatherwise particle systems are the heart of creating interesting animated dynamic weather systems. A single particle system can have 30-50 variables to control the look, and making matters worse multiple systems can comprise one condition. We tackled particle complexity from multiple directions. First, our particle systems play and update instantly in the weather scene which makes it easy for an artist to experiment. Additionally, since we have unlimited undos, playing around is part of the fun. While creating themes we began to create a library of weather effects, which in turn helped create base templates for artists to work from. The problem still wasn’t fully solved, a hidden complexity was a lot of what can drive particles and animation wasn’t always static data.
Connecting weather data to animation
Images and particles can have static attributes such as having clouds always move at a certain speed, but what happens if you want dynamic data to drive these animations? With our weather data we access, wind speed, wind direction, temperatures, UV index, precipitation, and can use this data to drive the behavoir of the animation. So, rather than having clouds move the same in every state they can move at the current “wind speed.” Access to this data lets artists visualize the weather in dynamic and unpredictable ways. Letting dynamic data drive the visuals provided a unique challenge, what do you display for the dynamic data while working in the builder?
Our answer to this problem was to build a simulation tab to control all the weather variables across all conditions. The system lets an artist easily push the wind speed from 0 to 300 mph/kpm an hour to see how it effects all their animations globally across all weather conditions and times of day. Sometimes the weather data doesn’t always correlate one to one with how you want to use it. To deal with this we enable variable multipliers to boost the strength of the given data.
A different platform to your audience
Currently our internal teams are still working on improving the process of creating themes. With over 50 themes created so far we only started to explore some the creative ways we can visualize weather data. When we have the software in the right condition our next step will be opening it to the public to play with.