Automate Blender Add-on Creation on GitHub

After creating a few add-ons for Blender, I wanted to automate the creation of new releases on GitHub. This is a pretty simple using GitHub Actions and Workflows to handle the creation of proper .zip files for new add-on versions. 

Debugging Blender Add-ons

Fixing bugs in Blender add-ons can be a bit painful without a proper debugger. Luckily, it's pretty easy using the debugpy package and this small Blender add-on that helps install and start it. Once it's running, Visual Studio Code or Visual Studio 2019 v16.6 or later can be used to debug your add-on! 

Quick Add-on Reloading in Blender

While working on a batch glTF exporter for Blender, I wrote a "script.reload_addon" operator to make it easier to update a single add-on during its development. It's faster than the built-in "script.reload" operator, and it does not affect the state of other add-ons. Most importantly, it adds shortcut keys for both! 

Autosave Images (Textures) in Blender

I've been working on a simplified Substance Painter-style PBR workflow in Blender for models that I'm exporting to Unity, and one of the things that quickly drove me crazy was it not saving images when saving the Blender file. Here's a simple Blender add-on to fix that! 

Custom Runtime and Editor Settings in Unity

Unity's lack of standardized support for project wide and per-user settings can be a bit frustrating. This article discusses an alternative to what is currently provided and includes a class that can be used to expose settings for use at runtime or in the editor with minimal effort. 

Singletons in Unity

While the singleton design pattern seems like it should be simple enough to implement, in larger applications issues often arise from more complex object initialization. In this article, I'll cover singleton implementations for use in both Unity's editor and at runtime and discuss several potential issues with each. 

Avoiding Unity's Automatic File Import

Since Unity does not provide a way to disable its automatic import of files such as Blender's .blend files, I thought I'd try to find a workaround that would still allow me to keep these files inside a Unity project's Assets folder. 

A Custom glTF Importer for Unity

I've never really liked Unity's handling of Blender files, so after doing a bit of research, I decided to write a custom importer for glTF files. It actually turned out to be less work than I thought it would be, and being able to extend the importer with additional custom properties has been very useful! 

Rendering Flat-Shaded / Low-Poly Style Models in Unity

I really like the flat-shaded, low-poly style especially when combined with nice lighting. Unfortunately, the simplest, most common approach to achieving this look is far from optimal. In this article I'll cover ways for achieving this look more optimally in Unity using its scriptable and standard rendering pipelines. 

Using Git for Unity Projects

Using Git for version control in a Unity project requires a small amount of initial setup, but it can all be done quickly using the command-line client. This article covers initializing a new project using Git with Large File Storage (LFS) to handle the substantial number of binary files required by game development. 

Git Clients for Unity Projects

One of the nice things about using Git for version control on a Unity project is the large number of free and paid clients to choose from. In this article, I'll review a few of the options that I've tried while working on past projects. 

Version Control Options for Unity Projects

There are several version control options available when working on Unity projects. In this article, I'll review a few of the ones that I have used in the past and discuss the option I finally chose for my current project. If you're not already using some form of version control for your project, I strongly recommend giving at least one of these a try! 

Welcome!

Thanks for taking a minute to visit Hextant Studios! This site currently serves primarily as a development blog for work on an in-progress title built using the Unity game engine. Articles will cover a variety of topics focused on 3D game development using Unity, Blender, and other content creation tools.