Shotgun, automatic task status update

loocas | Python,Shotgun,technical | Thursday, April 28th, 2016

Get the Flash Player to see this content.

As a pipeline TD you might need to setup task status auto updates in Shotgun. It isn’t as simple as it may sound, because Shotgun, out of the box, doesn’t provide this functionality. However, it can be done with Shotgun Event Daemon and some scripting.

So, first off, a bit of background. As a pipeline guy, automation is essential. You need processes to work automatically, ideally in context and further more in a certain order. That happens all the time. Shotgun, and many other tools, provides a great backend for such automation, however, Shotgun itself doesn’t provide too much automation for its own tasks, versioning, events in general.

Luckily for us there is a large community of TDs working on such tools that can save us a ton of time and effort. (more…)

Shotgun API 3.0.15 and duberPython, all OK!

loocas | 3ds Max,maxscript,Python,technical | Wednesday, July 24th, 2013

duberpython_shotgun_3.0.15.dev_banner

I updated my Shotgun wrapper for duberPython yesterday to support the latest and greatest Shotgun API ver. 3.0.15.dev. All seems to be working pretty well, without any issues.

I added all the methods available by the API to my MAXScript wrapper, so that everything is fully accessible, through duberPython, from inside 3ds Max!

I will be releasing this wrapper to the public real soon, so stay tuned!

duberPython Shotgun 3.0.15.dev

duberPython is available for download!

loocas | 3ds Max,dotNET,maxscript,Python,software,technical | Saturday, July 13th, 2013

duberPython banner

That’s right! duberPython is finally ready for it’s debut public release.

But that doesn’t mean it’s a fresh newb of a plugin. It has been used in high-end productions at studios such as Pixomondo or Orbit, etc. on feature films, commercials, full CG animations, etc.

duberPython came into life after a long search for a solution that’d allow us at duber studio have 3ds Max communicate and play nicely with other pipeline tools and DCC applications. duberPython was designed, mainly, to bridge 3ds Max and Shotgun (JSON API is fully supported!) and Tactic. I even wrote a dedicated Shotgun wrapper, so that you can call Shotgun methods directly from within MAXScript (available upon request), so that writing your studio pipeline tools is really, really easy and fun.

duberPython

The current version runs on the IronPython engine 2.7.3 and is compatible and has been thoroughly tested with CPython 2.7.3 (though, compiled Python modules are not accessible via IronPython).

Currently you can directly call Python code (via string parsing) from within MAXScript, or you can call Python scripts externally and pass it any number of variables for Python processing. The variables will get automatically translated to and from Python, so that strings are strings, booleans are booleans, arrays are arrays, etc. Even dictionary data types are supported in MAXScript (via Hastable dotNET objects)!

duberPython

So, do not hesitate, head over to python.duber.cz and give your full-featured 30day trial a go and if you find it useful, I’d be very happy if you purchase the full version for only $25 bucks, which is a bargain for what you get! (site licenses are available upon request).

By the way, the full documentation can be read here: python.duber.cz/documentation

dotNet iterables in MAXScript, a pain in the ass

loocas | dotNET,maxscript,Python,technical | Sunday, May 5th, 2013

Autodesk facepalm

Yes, that is true. Stuff that should be inherently and implicitly iterable, is not, when accessed from MAXScript.

I had to find out the hard way, so here I am sharing my findings and solutions so that you don’t have to waste time on this nonsense issue.

The problem I bumped into some time ago was when I tried to access Management Object Searchers in my code (for finding various HW IDs and serial numbers). When you call a dotNET iterable (or a collection) in MAXScript, you automatically assume you can iterate over its contents, just like with an array, for example.

WRONG!

Somebody at Autodesk decided that this isn’t the behavior you’d like and instead made you having to jump through hoops and obstacles to get to the object contents.

Anyways, lets look at this problem on a rather simple example of using Hashtables in MAXScript:

(more…)

Shotgun is $49 bucks per month!

loocas | miscellaneous,Python,software | Thursday, February 21st, 2013

Shotgun new price banner

I was shocked and very pleased to hear that Shotgun Software decided to unify their pricing and bring it down to $49 USD per month per user with the API! How awesome is that?!

That brings me to a thought of actually releasing our duberPython plugin for a ridiculously low price so that EVERYONE can use Shotgun and our Python module in their pipeline!

Let me know what you think, guys and I’ll prep the installations in the meantime.

RV Explorer integration script updated

loocas | miscellaneous,Python,RV,software,technical | Tuesday, November 27th, 2012

Get the Flash Player to see this content.

Just a shout out to those who downloaded my RV Explorer integration Python script.

I’ve updated it so that RV now accepts file sequences with various leading zero lengths as I bumped into this issue myself recently.

Hope I haven’t caused you too much trouble. :)

Here’s the updated script: v0.3

Repathing your assets in .max files without 3ds Max

loocas | 3ds Max,dotNET,maxscript,Python,technical | Friday, August 3rd, 2012

Asset Tracking

Ever since I read this blog post on the Area, I was intrigued to get this working in an IronPython environment (that’s pretty much all I know, in the “serious programming” area). Unfortunately for me, the article mentions C++, OLE and COM. Which are my least favourite technical subjects.

So, now when I finally really needed this solution (more on that some time later), I had to ask on the Autodesk forums.

Luckily I got an answer. But first off, huge thank you goes to Larry Minton, an Autodesk Engineer, without whom I wouldn’t have been able to get this thing going.

Now, about the problem. If your facility has a render farm and you happen to work off of your local storage, you have to point your assets to a UNC path where they’re stored so that all the machines on the network can find and load them when rendering. There are many ways of doing this and usually your pipeline TDs had figured this one out prior you even starting any work on the project. :) Unfortunately for me, I’m the only pipeline TD here. :D So I had to figure out a way of re-pathing my assets in 3ds Max scene files prior to rendering.
(more…)

Calling Shotgun API 3.0.9b2 from IronPython 2.7.3

loocas | dotNET,Python,software,technical | Sunday, July 8th, 2012

IronPython and Shotgun

In February, I wrote about calling the JSON variant of the Shotgun API from the IronPython 2.7.1. Now it is time to upgrade the pipeline tools to the latest versions of both IronPython and the Shotgun API.

There are, however, some steps you have to take in order to make things work without issues.

Naturally, you still have to follow the steps described in the february article. In addition to that, however, you also have to modify the Shotgun.py some more. On lines 52, 53 and 54, remove the relative module paths. So, basically just remove the dots from the “.lib“. For some reason, IronPython is having issues with relative imports outside of packages.

After that, everything should be running smoothly again.

Here are a few screenshots from the IronPython console as well as from the MAXScript Listener in 3ds Max 2013.

IronPython 2.7.3:
IronPython 2.7.3 Shotgun

duberPython (utilizing IronPython engine 2.7.3):
duberPython Shotgun

RV integration in Explorer

loocas | miscellaneous,Python,RV,technical,videotutorials | Wednesday, June 27th, 2012

Get the Flash Player to see this content.

Yesterday, I posted about RV integration in Windows Explorer. Today, I have the script and a tutorial on how to hook this up ready for your pleasures. :)

Just download the script, place it somewhere safe and follow the tutorial on how to create an RV specific right-click menu entry in Windows Explorer.

Enjoy! :)

Calling Shotgun API v3.0.8 from IronPython

loocas | dotNET,Python,software,technical | Wednesday, February 1st, 2012

IronPython and Shotgun

As you might know there has been a significant change in the latest Shotgun API that’s somehow transparent to the CPython users, but presents a rather significant roadblock for IronPython users (including our duberPython bridge, that is based on the IronPython engine).

First, let’s discuss what’s changed in the API so dramatically that it breaks IronPython compatibility. It’s the introduction of a JSON formatting that requires a few specific CPython libraries that are not available in IronPython. The effect it has on CPython users is a faster data transfer to/from Shotgun, but other than that, the API looks to be unchanged from a user point of view. You still keep calling the same methods and you’re getting back the same objects. From IronPython point of view, you’ll hit a roadblock as there are a few modifications you’ll have to make to the Shotgun modules in order to make them run in IPy without issues.

(more…)

Next Page »

Powered by WordPress | Theme by Roy Tanck