Overview
As a technical artist, my main focus is developing digital asset pipelines, creating automation tools, and collaborating with design teams to streamline and simplify the more tedious aspects of their work. Here are a few examples of that work and the projects they were used for.
Tools
World Sim - Asset Cycling
World Sim - Auto Collision
Mafia 3 - Decal Projection
WWE - Environment Data Parsing
World Sim - Asset Cycling
The asset cycling tool shown in the header is a Python Script for Maya where users could select a directory to parse through all assets for rapid QA and Authoring. I used this a lot when directing a team of contractors creating our digital asset library for world sim to be able to visually QA their work and make adjustments if needed. We also had validators before processing assets in the engine but this was perfect for making sure the visual fidelity of assets were up to standards.
World Sim - Auto Collision
The auto collision tool is a batch process script in maya to generate a custom collision for all of our vehicle models. The script would take in a directory of rigged models, calculate their dimensions, generate a simple box collision and add edge loops and bevels to match the frame of the vehicle while giving a specific offset to the ground plane as to not have vehicles get stuck on environmental collision.
Mafia 3 - Decal Projection
Mafia 3 had a huge expansion that introduced vehicle customization after the vehicle system and models had already been created so to allow each vehicle to utilize the same decals we had to create custom textures per vehicle. The original plan was to have our department manually recreate the decals on each vehicle. Seeing as that would have been a huge overhaul of work I created a projection mapping tool inside of maya that would morph projection plains to the dimensions of the vehicles we were working on so all artist had to do was manually tweak the projections that didn't quite fit and export a decal set.

WWE - Environment Data Parsing
When porting WWE to the switch we decided to take the original game out of it's proprietary engine and recreate it in Unreal due to the team's familiarity with the engine and it's procedural creation capabilities. One of those capabilities we utilized was being able to construct parts of the environments at run time through data tables. To make the process of filling said data tables easier I created a batch process script that would read the data from the Environment files the Sega team had produced to create a csv to be converted to data tables in the engine. The script would go into a file determine a static mesh class based on (Naming, Size and Poly count) then create an array of all the times it was instanced in the environment file (.MA).
