Shotgun Pipeline Implement

Unfortunately, JibJab studio is a small studio and the animation teams are pretty complex because the production teams consist of 2D animation (After Effects & Toonboom), Stop-motion (Dragon Flame) and 3D animation (Maya and Nuke)
and I was only one pipeline TD at the studio who has built the Shotgun pipeline for the entire studio and make them understand how to use all tools. Moreover, I have managed all Shotgun tools and in-house tools to support the production team. It was a big challenge for me.

Shotgun Website Implement
Shotgun website has some of templates and presets. So, I used one of the templates and added additional pages as a management team needed. Also, I setup some of toolkit configurations (Primary, Dev, Git), additional projects and script pages as well for the production teams. Also, I eventually setup Cloud Shotgun configuration so that the toolkit is deployed in each local machine wherever artists work and put the studio standard environment for loading all in-house tools and plugins. Also, I had to modified folder schema and structure because the all team,2D, 3D, Stop-Motion, need to share the folder structures.

Shotgun Event Daemon
Shotgun has event trigger function. So whenever the information on Shotgun added/edited/deleted, Shotgun makes event triggers and I can access the Shotgun event stream and implement many functionalities or automations with it. In this studio, the HR department wanted to make outsource management process in Shotgun with their email server. So, they wanted to have status of how outsourcing workers working through Shotgun, Additionally, they wanted to have a payment/invoice system as well. So, I made the integration with Shotgun Event Daemon and email system. So, whenever producers change outsourcing worker’s status, the email with some automated documentation is created and sent it to outsourcing workers and HR department. Also, I made the publish farm with this Event Daemon function so whenever there is new publish information, it runs Maya standalone python and publish the file automatically. I made the distribute function and standalone monitor with PyQt.


Shotgun Toolkit Setup

Shotgun provides default Shotgun toolkit for Maya, Nuke, Flame, Photoshop, etc.… However, default functions have many limitations. Therefore, I had to customize the toolkit with Python API. First, I had to build Alembic workflow for the 3D team. So, I have made some functions in Maya to bake Alembic caches. Also, I developed the scene organizer with json files, which contains all assets information. So, when the scene organizer executes, all assets, light template and back-plate and render preset are simultaneously imported or referenced into Maya, so there is no extra work for the lighting artists. Also, I made many Shotgun sub-tools and in-house tools with Mel, Python, PyQt and Open sources. For instance, the Playblast tool for the Shotgun review with ffmpeg and customized Deadline submit tool with SGTK bootstrap as well.


Also, I had to customize tk-multi-publish2 for other departments because Shotgun toolkit doesn’t have tool for After Effects, Toonboom.. So, I customized the publish2 with custom functions. So that all department can use Shotgun platform for the review and published plates.

In conclusion, Shotgun website(Database) and Shotgun toolkit provides a lot of conveniences to the studio from pre-production to post-production. However, the default function has a lot of limitation so that a pipeline TD has to be on site and customize all Shotgun website and tools as studio needed. And Shotgun is getting more integrations for many applications these days even game engines, Unity & Unreal. So it would become a studio standard pipeline tool soon for the media entertainment industry.


copyright © 2019 Jinchul Jung. All Rights reserved