Blender Add-Ons and dealing with Bugs and Changes

A few months ago, I started developing a Blender add-on for Re-Volt. The one that was commonly used was only available for Blender 2.73 and its source was closed.

Having worked with Blender’s game engine and Blender in general for the last five years, I found it relatively easy to develop an add-on that imports and exports binary file formats. Providing GUI tools for properties exclusive to these formats has also been relatively easy.

So far, the add-on has solid support for most Re-Volt formats. At least the ones that store meshes. In the future, I would like to add support for the remaining level files that include other data like AI information, lights and other objects.

The biggest problem I encountered was a bug that prevented the UV Unwrap Reset operator from working: Using custom layers on a bmesh caused Blender to produce weird UV maps.
It took me some time to actually figure out what’s causing it. All I knew was that my add-on broke the most basic unwrapping function, making it pretty much useless for any modder. The bug has since been fixed but it didn’t reach the release version of Blender. I submitted the report a few days after 2.79 came out.

For now I referred users to the nightly version from builder.blender.org which worked fine for the time being. When I recently grabbed another fresh build off the site, I noticed that my vertex paint operators didn’t work anymore: Color layers now also expose the Alpha channel. It previously had RGB only. It’s a simple fix as I won’t be using the new alpha channel anyway.

This, however, introduces a new problem: This change makes the add-on incompatible with the current version of 2.79. That means I’ll be stuck on the dev branch until the bug I reported and the updated vertex color layers reach the stable release of Blender.

Right now I’m pretty much stuck. There is no version of Blender that the add-on works with, except for older nightly builds.
This means that I’ll release a new version of the add-on soon. It will only work with a fresh nightly build due to the new alpha value on the vertex color channels.

Advertisements