We have just released v0.12.5 of the Tank Platform to the App Store. This is mostly a bug fix and polish release, which contains a lot of small changes and improvements! One of the key themes of this release has been customization and the features that have been added allow each individual Tank user to further modify their setup to their needs. This includes adding several new hooks to allow for advanced customization, extending folder creation to support Tasks and Steps more deeply and providing Tank ways of importing QT so that it happens in a generic way, suitable for multiple engines. We are also introducing an alpha level 3ds Max engine with this release, which we think is pretty awesome and we're looking forward to hearing what you think about it! For exact information of everything contained in the release see the release notes.
3ds Max engine
We are releasing an alpha version of our 3dsmax engine for evaluation and feedback. The engine is based on the blur python extensions (http://code.google.com/p/blur-dev/wiki/Py3dsMax) and we have updated all multi apps (set work area, loader, work area info, publish and snapshot, load recent files) to support the 3ds Max environment.
Extended multi apps
Multi apps (Tank Apps that can run in more than one Tank Engine) have been upgraded so that they can run in any engine, including new ones that are developed by studios. Where possible, we have moved engine specific functionality into hooks, making it easy to extend a multi app to support a new engine.
We have added several hooks to allow for advanced customisation. The create folders hook has been redesigned and we have added hooks at API init, App and Engine init, and prior to publish so that you can inject your own field data if you need to (handy for example when tracking multiple locations).
Folder creation has been extended to support Tasks and Steps more deeply and all the folder creation happens in a single operation, all handled by a hook. This makes it possible to customize the folder creation process to a greater extent that previously.
Tank Core now contains ways of importing QT so that it happens in a generic way, suitable for multiple engines. This makes it possible to write an engine based on either PySide or PyQt (although we recommend PySide!) and it also allows for each engine to properly parent dialog windows to the main window in the host application, something which was previously tricky.
Changes to Engines and Apps
- Recent files and loader apps no longer auto-start in bactch mode. We also added a property to the engine so that apps can query is the host application is in batch mode or not.
- Shotgun App Launchers create events in the event log. This makes it easy to see the activity in the system and to get statistics of for example license usage.
- Configurable menu texts for launchers of Maya and Nuke. You can now both have Nuke and NukeX for the same item in Shotgun!
- Fixed instability issues on Linux when publishing in Nuke and doing review submissions.
- Fixed issues with taking screenshots on a second monitor on windows .
- Improved dependency data mining in Nuke and Maya publish.
- Added a "current shot" checkbox in the loader app to quickly be able to focus in on the current item.
- Nuke write node allows for an optional channel name, previously it was required.
- Better querying in the loader app - can now create queries based on the context (e.g current shot, current user etc).
- Fixed issued with windows UNC paths and the tank write node
- For release notes, see each individual engine or app. For the core release notes, click here.
Upgrading to Tank v0.12.5
Upgrading the Tank Core
The first step if you want to upgrade to Tank v0.12.5 is to upgrade the core. You can do this by running the upgrade script that comes with Tank:
> cd /YOUR_STUDIO_ROOT/tank/install/core/scripts > python check_for_platform_updates.py /YOUR_STUDIO_ROOT
Now you can either go ahead and upgrade an existing project to use all the new versions of the Apps and Engines that come with Tank v0.12.5, or create a brand new project to test out the new things in Tank v0.12.5
Upgrading a Project
Once you have upgraded the Core, you can now go ahead and upgrade an existing Tank project to use the latest versions of all the Engines and Apps:
> cd /YOUR_STUDIO_ROOT/tank/install/core/scripts > python check_for_updates.py /YOUR_STUDIO_ROOT/some_tank_project
Creating a brand New Project based on the v0.12.5 starter configs
Tank v0.12.5 comes with a whole bunch of new starter configurations. Choose one, and then run the setup project script. For example, if you want to base your new project on the tk-config-default configuration, run the following command:
> cd /YOUR_STUDIO_ROOT/tank/install/core/scripts > python setup_projecy.py tk-config-default