+ All Categories
Home > Software > Maya Pipeline Code Samples

Maya Pipeline Code Samples

Date post: 19-Aug-2015
Category:
Upload: arnon-marcus
View: 233 times
Download: 1 times
Share this document with a friend
Popular Tags:
34
Code Samples By : Arnon Marcus il.linkedin.com/in/arnonmarcus [email protected]
Transcript

Code SamplesBy : Arnon Marcus

il.linkedin.com/in/arnonmarcus

[email protected]

Topics :

• Harmonica

• Pipeline Toolbox

• Melodica

• Sequence Shooter

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

Code SamplesBy : Arnon Marcus

il.linkedin.com/in/arnonmarcus

[email protected]


Recommended