Pipeline Management
VFX Pipeline Development & Maintenance
DESCRIPTION
A VFX pipeline is constantly evolving, requiring ongoing maintenance to adapt to the studio’s growing needs.
Beyond providing daily support and training, several key tasks were involved in maintaining the pipeline, including:
- Managing and maintaining our OpenPype setup
- Supervising the local ftrack event server instance
- Adjusting project environments and software configurations
- Conducting R&D to optimize workflows
- Developing and/or integrating new tools into the pipeline
- Creating and adapting installation scripts
- Testing and improving development processes
- Administering the local GitLab development server
- Collaborating closely with the IT team on infrastructure decisions
ROLE
As the sole person responsible for the studio's pipeline development and setup, I was constantly busy maintaining the core pipeline and its integrated tools.In addition to ensuring that everything functioned smoothly, I was consistently looking for new solutions to enhance workflows and improve efficiency throughout every department.
My role required actively listening to feedback from supervisors, production teams, and artists, balancing the time and cost of building new solutions against leveraging existing tools.
It required me to keep researching, testing and evaluating with target users for additional tools and libraries across various stages of production.
I explored plugins and tools for the main DCCs used at the studio (Maya, 3ds Max, Blender, Nuke, and Houdini), as well as standalone tools like:
- Gaffer (look development)
- Deadline, CGRU, and OpenCue (render farm management)
- Cortex, NXT (development frameworks)
- Etc.
Many of these open-source tools required building from source necessitating Windows-specific scripting adjustments and debugging (as often designed for Linux environments).
Libraries such as OCIO, OIIO, USD, and Alembic required one or more specialized build environments using Visual Studio, MSYS/MinGW, and CMake.
I also focused on optimizing our development workflows.
One of the first steps was setting up a local GitLab server to centralize and organize code repositories and tasks.
To streamline deployment, I developed automated installation scripts for tools across the network and artist workstations, significantly speeding up rollout times.
To separate development from production environments, I experimented with sandboxing and virtualization tools such as Sandboxie and virtual machines.
It worked well with pipeline developments, but was not easily manageable with ftrack being remotely hosted.