Finding and Fixing Bugs

    This week I continued working towards the next milestone while simultaneously finding some bugs with existing functionality and taking care of them.


Milestone Tasks

    I finally updated the roadmap this week with the tasks I'm aiming to include in the 1.2 update. The deliverables are as I described last week along with fixes and improvements that will be added on an ongoing basis as I find them. 

    As for completed milestone tasks, I'm still mainly focused on the implementation of randomization. I was able to get full implementation done for Asteroids, Gas Giants, and Ring Systems. While completing each of these tasks however, I found some bugs with the functionality of the systems. Many of the bugs had simple solutions. Like the issues with asteroids were resolved by pausing the asteroid Niagara systems a frame after they were spawned. I also managed to complete the polish task for the overview camera which went off without a hitch. I'm glad I made time for it too because it makes the overview camera feel just that much more intentional.


Fixes

    The largest fixes this week involved the overview UI. While working on the randomization for the Gas Giants and Ring Systems, I noticed that the widgets for the color gradients weren't updating when I hit randomize even though the planet updated correctly. Then looking back at the terrestrial planets I noticed that certain elements of the shape and color settings weren't updating after randomization.
    Seeing all this I decided I would need a way to update any piece of UI when any settings asset is updated. I already have a multicast delegate that is broadcast whenever a settings asset gets updated. That's how the planet updates after all. The question was what is the easiest way to bind any widget to any settings asset?
    The solution that I came up with involved adding an interface function that would bind to that preexisting delegate. This way it would be as reusable as possible while requiring the least manual implementation for each widget. This system is still in flux and I plan to implement a native parent class for the widgets so that binding can be done automatically with zero blueprint required, but I've run out of time to implement that this week.

    I still plan to continue with these fixes next week, and the stretch goal is to have the full solar system randomization working by the end of the week (fingers crossed!)

Comments

Popular posts from this blog

Progress Update #19

Progress Update #9

Progress Update #17