Tool for Zbrush for quick Retopology
- Implemented Zscript for the tool based on the specifications from Francis-Xavier Martins (PolyJunky)
- Allows you to get controllable, but not final topology, using polypaint, masking or slicing.
- Gives clean extractions without jagged edges.
- Easy to use UI and highly rated on Artstaion Marketplace.
- See it in action!
- Tools/Languages:ZBrush, Zscript
Tools and Support
My main concern on Detonation Racing was the tool chain in DCC (Max/Maya) and the import into
- Allow for config sharing between artists + easier setup of UV's in Max/Maya
- Scrape data from Unity about material names/textures etc. into DCC so artists can have properly named materials applied to meshes. This made importing and having working materials automatic.
- Make sure naming convention of exported fbx is adhered to for different models + large portion of setup on import automatically done
Support Houdini Tech Art Team
- Get pipeline working in Unity;
- Tool usage adjustments for Quality of Life of users on the team and advise on best practices for user facing gui/workflow creation.
Python, PyMxs, PySide2, C#(Unity), 3dsmax, Maya, Unity
Vehicle Pipeline for content creation
Vehicle creation pipeline that allows artists to recreate 3d vehicles as close as possible to their real-life counterparts. Players are able to scan a Hot Wheels vehicle and see the exact same thing in-game, ready to play with.
Pipeline for all vehicles in game
- Scripts for folder structure/naming convention based on incoming vehicles from Mattel. This reduces human error when a brand new vehicle is to be made.
- Zscript that handles settings/button clicks etc. to produce a more "bake ready" high poly mesh. This gets artists 90% of the way there from the low poly meshes which in most cases are not suitable for baking purposes (even if subdivided).
- Importing template meshes, exporting final vehicle for Unity (imports have 0 rotation values on import)
- Import template wheels for scaling to size for each vehicle, used in conjunction with another script to "Drop Wheels to Ground", ensuring the bottom of the wheel is on 0.
- Various quality of life utility scripts
- Setup Painter templates.
- Documentation on workflow for applying decals to vehicles for each variation of the vehicle (same mesh, different texture set).
Shader work (Unity):
- Wheel shader that allows for input of a channel packed texture to define different colour masks and text, as well as wheel shadowing for shadows due to wheelwell and ground shadowing.
- Hologram shader that allows for customization of hologram images in-game with channel packed textures that allow for editor control of timing for fades and other effects.
- Import script that handles 95% of work related to importing and setting up a vehicle in engine from created assets. This trawls the source art folder to find any missing models or textures, imports and sets up folder structures, creates and applies materials with the correct naming convention with no needed input from the user.
Scripts to help aid work such as Quick Load/Unload of wheel assets on cars.
Material Creation: if extra materials are needed, they are made and named correctly.
- Tools/Languages: Python, ZScript, Maxscript, HLSL, C#(Unity), 3dsmax, Zbush, Substance Painter, Photoshop
Environment Pipeline Updates and Tools
- Atlas PSD/Texture Creation:
- Using Python and Pytoshop, I was able to create atlas PSDs of 4k textures for 30 models (Albedo, Normal, Masks) and output the final atlassed texture in ~4 seconds - a task that previously took 15+ minutes using Photoshop scripting only.
- Various script improvements along with menu creation for Maya which put all in-house scripts in one easy to access place.
- Tools/Languages Python, PyMEL, Pymxs, Pyside2
Scripts and Tools
- Imported models into Clarisse for the lighting team. This would put models in groups depending on existing hierarchies as well as automatically place light sources and vfx without intervention.
- Provided a way to pass information between lighters and automatically setup last used settings (this was not available as a built-in feature)
- Automatically setup AOVs based on settings defined by Lighting Supervisors for team/shots.
- Maya scripts that link with in house validation checks.
- Validation of tooling updates from R&D department before release to Shows
Helping to create pipeline tools and workflows.
Creating pipeline and tools for client and in-house use. Responsibilities included DCC tooling, creating both end-to-end and stand-alone scripts to speed up work flow, as well as providing documentation and training to help artists use the tools and software. Whether it's syncing assets or creating them, I always aimed to increase consistency and reduce monotony for the artists I worked with.
Assisted in creating tools and scripts for Maya, Clarisse and Houdini for the film Avengers: Infinity War. This also involved QC of new scripts, tools and tech from the R&D department before they were released widely to the various shows.
As a community manager, responsibilities included:
- Providing a bridge between the students and the faculty, ensuring the concerns of students were heard without any prejudice.
- Planning and organizing various events and activities to engage the student community.
- Founding the popular Study Night group which still runs weekly on campus to this day.
This was an internship placement for the final year of the Digital Arts And Entertainment course. Tasks included streamlining the in-house tools, implementing reusable vfx for the in-house engine and creating documentation. In 2015, I returned to assist with level setup and dressing.
Digital Arts And Entertainment
Degree: Bachelor of Digital Arts and Entertainment, Major of Game Development
2010 - 2014
I am a Pipeline Programmer in the Games Industry who supports teams, enabling them to work without worrying about the more monotonous aspects of their job. I aim to lessen the amount of clicks and "monkey work" that is involved in day-to-day tasks. All tools and scripts that I create aim to handle as much work as possible with as few clicks as possible.
Creating a pipeline of tools that can feed and verify data to achieve the desired end result is my day-to-day. I always aim to make tools as reusable as possible across projects and Digital Content Creation packages.
Photoshop: Quickly Save Images
Lazy Save 2 has been released as a final version for Lazy Save.NOTE: I no longer maintain this, so if it does not work I will not be doing work to make it work again
Lazy Save 2 is made to make saving out images from Photoshop more efficient by allowing you to have more control and save multiple images at once. Originally aimed at the Game and VFX Industry, Lazy Save has been used in several companies over the years but has been beloved by hobbiest artists as well.
Lazy Save allows you to:
- Pick a save folder for your images
- Define custom naming conventions
- Image Quality settings and resizing options
- Channel Pack images
- Define "Templates" for quickly setting your document up
- Save all layers in a group as one image or as one image per layer in a single click!
- What You See Is What You Get, where you don't need to define groups to quickly save out
Photoshop: Offset Multiple Layers
Layer Cake is an extension for Photoshop that I made in 2016 to help with offsetting multiple layers/groups of layers at once when trying to make tiling images.
- Offset selected layers and groups of layers
- "Rebake" - run the last used settings again
- Icing - See your image as a tiling 2 x 2 document (run again to get a 4 x 4 size etc.
- Spectacles - Smart Sharpen or Blur your selection to get correctly tiling blurred images as a layer in your original document