Sea of Thieves
Language | Python |
Game Engine | Unreal |
Software | Maya |
Platform | PC (Windows Store) , Xbox One |
Pipeline
Most of my work at Microsoft Rare was centered around the
character art pipeline of Sea of Thieves.
Work done on this pipeline:
- Optimized and redesigned underlying framework
- Added LOD support (Simplygon)
- Added automated testing
- Added user-feedback for current running batches
Files went from over 2 hours of processing to under 20 minutes.
I achieved this by smarter use of for-loops and converting the core pymel code to openmaya.
Other
Other tasks I worked on during the development of Sea of Thieves:
- Created a autorigger for props, and a rigtransfer tool for prop-variations with shared rig.
- Supported artists with various issues and encouraged best practices
- Created documentation for tools
After Sea of Thieves released I worked on some of the development of the new toolframework API. (using pyQT)
This is something that is still in progress and is shared between several Tech Artists.
Data Science
Afterwards I moved to prop optimizing for Sea of Thieves.
This was quite challenging since we had 3000+ assets, which were all set up manually.
First I worked together with the engineers to get access to all data.
Then I categorized the data using numpy and pandas.
Afterwards I wrote an algorithm in Python to detect the expensive assets.
Following this I wrote a batch fix which ran on all Maya source assets.
By using the data I linked all source assets to their matching uassets in Unreal.
Then I worked together with a engineer to batch import all assets in the game.
During this process I also used the data to point out issues on incorrect assets.
And created graphs using matplotlib to show relationships between vertcount and memorysize.