Brief overviews of a selection of tools I’ve written over the course of my time as a tech artist.

(Click for expanded information)


Creates a Windows Scheduled Task to automatically sync to user-defined Perforce depots at a set time, every day. Saves time by syncing before user arrives at the office, and can even function without the user being logged into Windows


Uses a user-selected point, which can be animated, to detect faces that are never visible in the scene Provides controls to User to change various tolerances, and the desired action to be performed on completion.


Reset XForms

Recursively resets the XForms on all objects in a hierarchy, while maintaining parent/child relationships Saves the artist time by eliminating the unlinking and relinking steps that would normally be involved in this process

Vigil Combine

Like Maya’s “Combine” function. Attaches all objects in selection to a single object. Saves the artist time by ensuring that large volumes of objects can be attached without having to select each node individually.


Deletes the verts in selection that only have two edge connections. Expedites cleanup time after a Procutter operation, and gives users a quick way to correct the error of not using the correct edge-deletion method


The Animation team requested additional functionality be added to one of their tools. Base tool animates the child object to the same Position and Rotation as the parent object over the course of a user-defined range. Added functionality to give users the option to preserve the offset position and rotation of the child object over the user-defined range. Base tool not created by me.


Center Pivot

Like Maya’s “CenterPivot” function, it centers object’s pivot to itself. Minimizes the number of steps to achieve the same result, while ensuring absolute accuracy in worldspace position of the object’s pivot.

UV Copy Paste

Copies an object’s UVs from UV Channel 1 to UV Channel 2 This script minimizes the number of steps an artist must perform to achieve the same result; allows rapid iteration when creating new assets whose material requires two separate UV channels.

 

A shader that is able to use the player’s position to blend between two colors, textures, etc. Passing the player’s position to the material instance requires a nugget of Kismet to pass in the position. Because Kismet cannot pass a Vector to a Material Instance, the material reconstructs the vector components of the player’s position from three scalar values, which are set in Kismet every .033 seconds.