Harmonica
An end-to-end production-server for management of animation and visual-effects projects, developed in-house at Snowball Studios Ltd.
It exposes an API for DCC applications to interact with it, for versioning content, review-submissions, task-tracking, etc.
It is hosted by multiple server-processes for multiple protocols.
There is a python-based client, that uses ZeroRPC, for DCC-apps that support Python, and a WAMP client for DCC apps that support .Net
HTTP, XMLRPC and JSONRPC clients can be used as well.
WAMP is always used for Pub/Sub communications for synchronization.
Item Tree
Clients<client>
.
.< current > Projects
<project>..
< current > Sub-Projects<sub-project>
.< current > Assets / Shots
<asset/shot>.
< current >
<each-item>
Stages<stage>
.< current >
Files<file>
< current >
Types Pool
Stages Pool
Statuses Pool Users Pool<user>
.< current >
User-Tokenauthentication
RemoteConnection
Pipeline Toolbox
A tool for navigating to assets/shots, content-versioning and task-reporting - interfacing with Harmonica via XMLRPC.
Originally named 'PipelineToolBox', it started as a C++ Qt-based plugin, for both Maya and Mudbox. Most of the code was shared between the 2 plugins (i.e: data-models, business-logic, networking, etc.), with a common-interface that each plugin implements (i.e: Maya/Mudbox) for specific DCC-app functionalities (i.e: scene-files read/write, exporting viewport-previews, etc.).
Each plugin also has wrapper-code that bundles it all as a plugin for a specific DCC-app.
Melodica
The code of the Pipeline-ToolBox was later ported to PyQt, for use in Maya, Fusion and 3dsMax. The UI was also completely re-designed, and the tool was re-named to 'Melodica'.
As before, most of the code is shared, with a common-interface for DCC-app operations, and wrapper-code for embedding the tool in each DCC-app's UI.
Also, the UI is styled using 'QSS' (a CSS-format for styling Qt dialogs).
As with the code, there is a main css-file for common definitions, and a small css for each target-DCC-app, to style it to mimic native UI look.
Sequence Shooter
A python tool for Maya, that uses PyMEL and Maya's native camera-sequencer mechanism. It helps layout-artists navigate around shots in a large sequence scene.
It can import time-codes that are exported from Premier-Pro. It allows for quickly jumping-around to individual shots (reset the work-area timeline to mach a shot).
It can activat/deactivate a head-up-display in the Maya viewport, showing relevant shot information. It can export playblasts (viewport-previews) with/without a HUD (heads-up display).
The UI is procedurally generated
Top Related