Softimage

Shotgun Engine for Softimage

Shotgun Pipeline Toolkit Integration in Softimage
Latest Version: v0.3.4 (alpha)
For our version numbers, we follow the Semantic Versioning standard.
System Name: tk-softimage

Please Note: This document describes functionality only available if you have taken control over a Toolkit configuration. Please refer to the Shotgun Integrations User Guide for more details.

The Shotgun engine for Softimage establishes a bridge between the Shotgun Pipeline Toolkit apps and Softimage. It contains PySide/Qt distributions, making it possible to write apps using Python and PySide that run right inside the engine. This document refers to more advanced configuration setups.

Supported Application Versions

This item has been tested and is known to be working on the following application versions: 2012, 2013. Please note that it is perfectly possible, even likely, that it will work with more recent releases, however it has not yet been formally tested with these versions.

Documentation

The Shotgun engine for Softimage contains a standard platform for integrating Shotgun Apps into Softimage. The engine supports the usual suite of apps providing automatic file management, a well defined work-area/publish workflow, snapshot, etc.

When the engine is loaded, a Shotgun Menu is provided in the main Softimage menubar:

Shotgun Menu

Available Toolkit commands are displayed here.

Please note that the Shotgun engine for Softimage is in beta and there are a few known issues - please see below for a full list.

Information for App Developers

Supported platforms

The Shotgun engine for Softimage currently supports Softimage 2012 & 2013 on Windows and 2013 on Linux.

Softimage 2014 is not currently supported on Linux and whilst it can be run on Windows, there are some instability issues so it's use is definitely not recommended!

If 2014 support is a priority for you, please contact toolkitsupport@shotgunsoftware.com.

PySide

Windows

Under Windows, Softimage can be configured to use either the built-in Python distribution or an external distribution - see http://download.autodesk.com/global/docs/softimage2013/en_us/userguide/index.html?url=files/userprefs528.htm,topicNumber=d30e797817 for further details.

The engine is bundled with versions of PySide & Qt for the installed versions of Python for Softimage, versions 2012 (Python 2.6 x64), 2013 (Python 2.6 x64) & 2014 (Python 2.7 x64). However, if you are using an external distribution of Python then you should be sure to provide a binary compatible version of PySide & Qt as well.

A good resource for Windows PySide distributions can be found here: http://www.lfd.uci.edu/~gohlke/pythonlibs/

Linux

Under Linux, Softimage has to use the built-in version of Python. For Softimage 2013, a pre-built distribution of PySide & Qt is required and provided by tk-framework-softimageqt. This distribution has been built using GCC 4.1.2 for Python 2.5.2, the same versions used by Softimage 2013.

Because of the many different Linux distributions, there isn't a guarantee that this will work with every one so it may be necessary to rebuild these yourself to get things working. Full details of how the version was built can be found in the README included with the framework, here:

https://github.com/shotgunsoftware/tk-framework-softimageqt/tree/master/resources/pyside121_py25_qt485_linux

Known Issues (Windows)

Softimage 2014 Instability

Although the engine will run under Softimage 2014 on Windows there are known issues and it hasn't been fully tested. Opening the Publish dialog will cause Softimage to crash!

SSL Bug in Softimage 2014

The _ssl.pyd file distributed with Softimage 2014 contains a known bug which may cause slowdowns at startup. We recommend backing up and then overwriting this file with the _ssl.pyd file you can find in Maya 2014 in order to resolve these issues. If you need more help or advice with this, don't hesitate to contact the toolkit support.

Window Parenting

Qt windows created without a parent and without using the engine's show_modal or show_dialog methods will not be parented correctly to the main Softimage application.

Known Issues (Linux)

Missing ssl & sqlite3 Libraries

In addition to requiring a very specific version of PySide (detailed above), Softimage is also missing ssl and sqlite3 libraries required by the Shotgun Python API and Toolkit.

We have included these as part of the tk-multi-launchapp app which also adds them to the LD_LIBRARY_PATH & PYTHONPATH prior to launching Softimage. Again though, if you have problems with these then detailed instructions for how to build them for your system can be found in the README included with the app, here:

https://github.com/shotgunsoftware/tk-multi-launchapp/blob/master/app_specific/softimage/linux/lib/README

Segmentation Faults In libX11.

Softimage on Linux contains an optional hack to address speed issues on certain linux distributions. This is detailed here:

http://xsisupport.com/2011/01/19/the-case-of-the-slow-2011-startup-on-fedora-14/

This tells Softimage to use a different version of the libX11 library found in:

/usr/Softimage/Softimage_2013/Application/mainwin/mw/lib-amd64_linux_optimized/X11

If you are using this hack then you will probably get segmentation faults during calls by Qt to the libX11 library (SIGSEGV in the call stack) resulting in frequent crashing. This is because the hack version of the libX11 library is quite old and not compatible with the version Qt was built against!

To resolve this, a new version of Qt will need to be built against a version of libX11 compatible with the Softimage hack version...

Segmentation Faults In libssl.

If you are using a recent version of openssl, not built using the correct version of GCC (4.1.2) you may see Segmentation faults (SIGSEGV) when the Shotgun API is used.

This isn't specific to Qt/PySide but worth mentioning here as it's the second most common problem!

Please see:

https://github.com/shotgunsoftware/tk-multi-launchapp/blob/master/app_specific/softimage/linux/lib/README

for instructions on how to build a compatible version of openssl for Softimage 2013.

Window Parenting

Currently, Toolkit windows are not parented to the main Softimage application window on Linux. As a work-around they are created to be topmost but this can sometimes mean that other windows (particularly confirmation dialogs) can be hidden behind them.

If Softimage seems to have hung, try moving any open Toolkit windows to see if there is a dialog hiding behind it!

Softimage/Toolkit Freezes After Moving Window

You will find that when you move a modeless dialog (e.g. the Shotgun File Manager), the contents of both Softimage and the dialog will appear to freeze/hang. This is an issue to do with the way the Qt message queue is currently implemented but unfortunately we are yet to find an alternative solution!

As a simple workaround, when this happens if you just click in the main Softimage Viewport, you will find that everything starts working correctly again!

Installation and Updates

Adding this Engine to the Shotgun Pipeline Toolkit

If you want to add this engine to Project XYZ, and an environment named asset, execute the following command:

> tank Project XYZ install_engine asset tk-softimage

Updating to the latest version

If you already have this item installed in a project and you want to get the latest version, you can run the update command. You can either navigate to the tank command that comes with that specific project, and run it there:

> cd /my_tank_configs/project_xyz
> ./tank updates

Alternatively, you can run your studio tank command and specify the project name to tell it which project to run the update check for:

> tank Project XYZ updates

Collaboration and Evolution

If you have access to the Shotgun Pipeline Toolkit, you also have access to the source code for all apps, engines and frameworks in Github where we store and manage them. Feel free to evolve these items; use them as a base for further independent development, make changes (and submit pull requests back to us!) or simply tinker with them to see how they have been built and how the toolkit works. You can access this code repository at https://github.com/shotgunsoftware/tk-softimage.

Special Requirements

  • You need Shotgun Pipeline Toolkit Core API version v0.14.56 or higher to use this.

Configuration

Below is a summary of all the configuration settings used. These settings need to be defined in the environment file where you want to enable this App or Engine.

template_project

Type: template

Description: Template to use to determine where to set the maya project location

debug_logging

Type: bool

Description: Controls whether debug messages should be emitted to the logger

menu_favourites

Type: list

Description: Controls the favourites section on the main menu. This is a list and each menu item is a dictionary with keys app_instance and name. The app_instance parameter connects this entry to a particular app instance defined in the environment configuration file. The name is a menu name to make a favourite.

Release Notes

Welcome to the release notes for this Engine. Below you will find an overview of all the changes we did for each release. We try to be as detailed as possible and include all bugs we have fixed, features we have added and things that may have changed. If you have questions about a particular release, don't hesitate to contact our support team!

v0.3.4

2017-Nov-14

Updated icon to match softimage 2015

v0.3.3

2017-Nov-10

Updated metrics logging

v0.3.2

2016-Feb-18

Adds a call to log a user metric for the DCC version

v0.3.1

properly display non-ascii characters in app windows and the Shotgun menu

v0.3.0

Updated visual style to better match Maya.

Details: This change affects the visual appearance of all apps running in the engine, making their visual appearance much more consistent with the look and feel that you would get inside Maya. Please note that after this upgrade, app UIs will look slightly different.

v0.2.10

Removed warning regarding support for 2013 on Linux

Details: Removed warning regarding support for 2013 on Linux

v0.2.9

Updated to require tk-framework-softimageqt v1.0.1

v0.2.8

Split out PySide & Qt distributions into a seperate framework to reduce the engine size.

v0.2.7

Updated Qt compatibility when using PyQt

v0.2.6

Fixed issue with timer event causing problems on Windows

v0.2.5

Updated README for Linux PySide distribution

v0.2.4

Fixed location of Qt for PySide on Linux

v0.2.3

Added initial support for Softimage 2013 on Linux

v0.2.2

Improvements to the Toolkit dialog & widget management

Details:

  • Dialogs created with show_modal & show_dialog are now released correctly when closed.
  • Updated to require core v0.14.23

v0.2.1

Improved window parenting on Windows

v0.2.0

Modal app dialogs now work correctly on Windows

v0.1.8

Initial release of the Softimage engine for Windows

v0.1.7

Updated Engine Icon.

v0.1.6

Updated icon.

v0.1.5

Experimental Release to the App Store.

Follow

0 Comments

Please sign in to leave a comment.