Saturday, December 31, 2011

Maya Audio Offset in 2012

 In a previous post I mentioned that since Maya2011 they'd changed the way the offset attribute on sound nodes worked:

"So, 2 sets of attrs work together. Offset and EndFrame, SourceStart and SourceEnd. The Offset is no longer what it used to be, this is the start of the clip nothing more. If like us you have tons of sound code designed to offset audio then it's all stuffed! you need to manage both Offset and EndFrame at the same time now in order to shift a sound node along time."

I'd just like to to point out that this looks to have been reverted back to the previous behaviour inb the latest 2012 builds where the offset attribute controls the clip offset as you'd always have expected it to do.

Mark

Friday, December 16, 2011

Bug: Duplicate Nodes with Message Links

This is a bug that we had quashed back in 2009 but we've just noticed that it reappeared in 2011 when we were debugging some really unstable animation scenes. Basically you have 2 nodes in Maya with array message links, you duplicate one node and that then generates an exponential amount of message links between the 2 original nodes. In the example below you end up with something close to 100 message links between the 2 original Cube and Cone....EEEEk! 


import pymel.core as pCore
Cone=pCore.polyCone()[0]
Cube=pCore.polyCube()[0]

Cone.addAttr('SampleSpace', at='message', m=True, im=False)
Cube.addAttr('SampleSpace', at='message', m=True, im=False)
pCore.connectAttr(Cone.SampleSpace,Cube.SampleSpace, na=True)

for n in range(10):
    pCore.duplicate(Cone)

Thursday, November 24, 2011

Python, shit what did we do before it????

So I've been playing with some string formatting for one of our legacy UI's which is basically just a textScroller that gets filled in a loop with all the export Tag information for the current scene, but I wanted to line up the data nicely. In mel this was just horrible but Python..... 1 line!

The format calls on strings are just fabulous, if you've not taken a look at them them I recommend you do so, here's the Python docs that relate to them:

http://docs.python.org/library/string.html

So in the example here we have some string data that we want to carefully format. We want to make sure each entry in the line is the same length and some of them want to be left, right or center justified.

this='This is'
nice='nicely'
form='formatted'
data='data'

print '{this:.<15}:{nice:_^12}:{form:<20}:{data:>7}'.format(\
        this=this,nice=nice,form=form,data=data)

#This is........:___nicely___:formatted           :   data
So :
{this:.<15}

The above tells the format to replace the key 'this' with the passed in arg, then the '.<' tells it that it's left justified and any gaps should be replaced with '.' finally the number after it is the length to pad the data out to.
Similarly the '_^12' is formatting to center justify and adding '_' to the padding. Now that line fed to a loop thats filling the textScroll with scene data formats and lines everything up (as long as you set the fontType to the scroll to be fixedWidth that is)

Now that in Mel was the length of this blog!

Tuesday, November 8, 2011

Maya 2012 SAP: The CPU is maxed

Maya 2012 SAP: The CPU is maxed out if Maya is idle for more than 15 minutes 

This is a bug we reported earlier this week and luckily there's a work around for it. Thanks to Owen from the support team for the fast turn around! 

From MayaStation: 

With the release of Maya 2012 Subscription Advatage Pack and Service Pack 1, a new licensing feature was introduced that affects how the license server distributes license tokens. If a Maya session goes idle for 15 minutes this feature kicks in and returns that idle license back to the license server. When the user activates the session again Maya will go back and get the license from the server. If no licenses are available, Maya will keep trying for up to 2 hours. At that point if no license is avalable the application will save yourt work and shutdown. While this is a great feature for companies using server based licenses. There is a small problem that was spotted and Autodesk is working to correct this. The main issue you will notice is that when this idling feature kicks is on the artists box one of your cores will be pegged at 100% or very close to it. This occurs on all operating systems. Currently the only workaround we have in place is to disable this feature entirely until further notice. The following variable can be used to do this. 

MAYA_DISABLE_IDLE_LICENSE=1 

We also noticed some other issues for users using the OS Native browser on Windows. When the idling feature kicks in and you try to either load or save a file through the OS browser in Maya the browser itself will fail to refresh until the cursor is moved away from the window. Using the above variable will address this as well.

Wednesday, November 2, 2011

Come join us!

We are currently looking to recruit the following positions: • Experienced Gameplay Programmers • Network Programmers (Engine & Game) • Graphics Programmer • Gameplay Designer (ideally with Multiplayer FPS experience) • Cutscene Cinematics Animator • Character Modeller (Face & Head specialist) • Special FX / VFX Artist • Character Modeller • Tools Programmer Full details and requirements for these positions are on our website. cheers

Tuesday, October 25, 2011

MasterClass finally on Vimeo

Finally added the MasterClass to Vimeo for you all to enjoy... thanks for watching!
Autodesk MasterClass - Live Animation Binding from Mark Jackson on Vimeo.
Don't forget the Toolkit link below

Wednesday, October 19, 2011

MasterClass - New Maya cmds compatible version

After a number of requests I've gone through the MasterClass toolkit and made it backward compatible with Maya 2008 onwards (actually I've only run it back to 2009 but should still work on 2008). This is kind of tested but if you get any issues let me know and I'll fix them. Basically all I've done is to remove the PyMel calls and replace them with cmds, also made it Python 2.5 compliant.

Anyway, here's the link to the new AnimationBinderCmds.py module file. Install is easy, like the main class all you do is drop it into the Maya scripts folder, or any folder on the Maya scripts path, then in a Python Tab type: (with no tabs or spaces at the front of each line)

import AnimationBinderCmds as AB
AB.AnimBinderUI.Show()

Here's the link:


AnimationBinderCmds.py


Thanks for the interest

Mark