Debugging Maya using Visual Studio Code

I've been testing debugging Maya Python scripts lately. Mostly focusing on free IDEs or editors such as PyCharm. So far this is one requires less setup in my opinion.
This is mostly based off the remote python debugging functionality described here: Download and install Microsoft's free Visual Studio CodeInstall the official Python Extension  Download ptvsd package as a zip Extract the ptvsd folder into your Maya scripts folder Open Maya and run import ptvsd ptvsd.enable_attach("my_secret", address= ('', 3000)) Back in VSC, switch to Attach (remote debug) in the debug configurations and start it
You are now ready to debug.  Note: here is the settings I use in launch.json

Add break points, run your code and it should stop and populate the debug section of Visual Studio code when it hits a break point

Expressions in JSE!

A milestone in creating expressions in my own maya script editor, along with previous features of splitting and deleting panes. Oh yeah and it will transfer your current scripting tabs over to the script editor.

In other news on coding this, I've been looking into the logging library and creating debug messages using those, which I found pretty funky as I can turn them on or off by setting the severity limit.

Major Project Environment Modelling

Almost forgot about the blog, my bad.

Lately in our Major project, one of the areas I have been contributing to is the modelling of our environment asset, notably establishing the scale with proxy geometry which are all done in Maya.
The general proxy geometries of the steps, floors, doors, windows, etc. were quickly modelled. Then came the railing and the lamp-pillar at the start and end of every flight. The pillars were first approached, modelled and UV'd. To offer the director a choice, I modelled the pillar in both of rectangular or cylindrical profiles of each individual pillar element so we can mix and match to formulate the final geometry.

Using Maya 2015's UV tools felt a little better than previous versions e.g. able select UV shells in the UV texture like you would with faces, edges, etc was nice. However, I did find that the new Unfold3D algorithms didn't produce expected UV unwraps i.e. scrambled and fried UVs, which in those cases I had to revert back to the l…

Pipeline preparations with Shotgun

I've been looking more into Shotgun software for our production recently, setting up assets, task templates, shots and experimenting with other customisation features for pages to get a feel for the software more. From what I experienced so far, this is a very flexible system, very customisable hence some other people have no clue on how to set things up.

It is centred around assets, which can only be created by the manager account, which can have various files and attributes assigned to it and from that, it can be linked to other production elements such as shots, schedules and the review system within Shotgun.

Currently, both the artist and manager accounts cannot setup Shotgun Desktop app meaning at the moment, Shotgun used more in a sense as a web-app rather than a full integrated system for production. Imagine Dropbox but not installed on the computer and only able to drag and drop files onto it's website to upload files; a lot less intuitive than syncing the file off the…

Shotgun! Feast! And small things

Lately for major project, I have started looking into the Shotgun using the accounts given to start looking at pipeline.

The artist permissions pre-set had very limited control, obviously, but I was kindly given access to a managers permissions account which I did some test setting up assets, shots, assigning schedules and customising pages.
More work is still to be done with experimenting and planning our pipeline as well as starting to layout the various pieces of our project into Shotgun.

In the mean time, I emailed Greg Culp, the lead lighting artist for the short film 'Feast', for some advice on flat looks for lighting and rendering. To my delight, he managed to reply and give valuable help for us which we will surely be looking into during look dev.

More nParticle Butterfly Tests

Just quick adjustments the the force fields (turning down turbulence and keying various field's magnitudes) and changes to the custom aim expression/script.

Still not convinced on the general behaviour of the butterflies, I think I will write my own flocking system to deal with them. At the current state, they are most useful for long shots and when the butterflies may need to collide with objects due to the use of nParticles.

I think creating a custom flocking system will be to mainly provide a more realistic flight behaviour, with less sharp changes of direction which is an artifact of the current solution and also to allow for butterflies to follow and go to certain positions defined by the user. At the current moment I am unsure of how to do such things with nParticles and expressions.

Quick Render tests

Did some really quick render test today with Mental Ray and Maya's ramp shader, definitely an improvement in terms of hardness of the edges over V-Ray. Soft edges can also be created too.

Joe's script editor, initial look and dev

Continuation of pursuit for a more powerful and functional script editor from the university specialist project last year, I present the first look at JSE, or Joe's Script Editor. Yeah the name was definitely super cool, yeah.

I have a lot of features lined up, including ideas from improving the script editor specialist project in the 2nd university year of study, including:

Split panes (initial proof of concept complete)Opening and saving script behaviour just like in a normal text editorRe-written code execution procedures to overload the default oneVim style command line to do thingsNew right click menusIntegration with the existing scrip editor's preferencesSome cool help to go with using it This is a personal project at the moment but I may consider it for the innovations project during this final university year. When I complete it to a good enough of a standard, I am thinking of proposing this to Autodesk as a candidate for replacing their existing solution, which does t…