PIPELINE TOOL APPLICATION





Description

For my self-study I set out to learn WPF and .NET while using C# together with Python scripting to make an application that is able to automate repetitive tasks encountered while using DCC applications such as Autodesk Maya and SideFX Houdini.


Features

  • C# WPF Application
  • Able to run Python scripts on DCC software (Maya & Houdini)
  • Python scripts include Validation(error checking, conventions), Fixing(pivot point), Saving and Exporting projects without opening the software
  • Project has been set-up with Dynamic Link Libraries(DLL's) for easy expansion
  • Will be exanped with a rich set of scripts to automate repetitive tasks in DCC software

Details

Start date: 11-2021. Duration: still in progress

C# Application


Programmers

Danny Kruiswijk


Codebase

https://github.com/Dannyfaction/CodeExamples

While comparing myself with the games industry by looking at vacancies in the Tools Programming department, a recurring skill requirement kept coming up; experience with Microsoft WPF or Windows Forms. After having researched both of these tools, I made the conclusion that Windows Forms was outdated and discontinued (last features were added in 2014) while Microsoft WPF was still an ongoing project.

That's when I decided to start a new personal project to learn more about Microsoft WPF and C# with the .NET Framework.

During this time I was on a team called 'Tech Art' where I worked together with Technical Artists to aid Game Projects on their technical problems and provide Tools for their needs. One topic came up within the team that it was annoying and slow to manually go over every asset to make sure it adheres to the different projects' conventions and budget (naming, polycount, pivot point position etc.).

Combining the personal project with the recurring problem from the artists in my team seemed seemed like a good solution as the Tool will actually be used by developers and helps their workflow for working on these game projects.

After doing some research on the most used DCC software in my team, I decided to make the Tool for SideFX Houdini and Autodesk Maya. The exciting part is that both of those DCC software can be completely controlled with Python without opening the DCC software, using Mayapy and Hython. The power of this PipelineTool comes entirely from the Python scripts which are used to control the DCC software.

The solution is set up following the MVVM architectural pattern which has been standardized for WPF-applications and the functionalities of the projects are set up as Dynamic Linked Libraries (.dll) which makes it future proof for further expansion.