the block/blog

June 30, 2011

Deadline render farm software with mantra

Filed under: Houdini — katisss @ 7:44 am

I just had a chance to use use deadline renderfarm software with mantra today.
The Build-in submission plugin failed badly failed on windows for spaces in the paths, hm... But it has out of the box really nice options to cretae chained jobs for ifd export and mantra rendering, which make good use of the free mantra licenses  Houdini comes with and you can use for render only jobs. It's a quick solution if you dont want to script your own farm rop node.

June 9, 2011

getopt() for Windows

Filed under: C++, Code — katisss @ 3:41 am

When looking for a C++ option parser that works on linux and windows
i found XGetopt by Hans Dietrich Software but given that it had been published in 2003 i had to make some modification to make it work on windows properly. So my version is here (in Getopt).

Simply include  #include "XGetopt.h" instead of <unistd.h>  and you have an option parser running on windows and linux.

June 7, 2011

Translating from mel to python done right…

Filed under: Code, Maya, python — katisss @ 7:19 am

While translating from mel to python is straight forward you might end up doing more than that just because python thinks different.
Mel script tends to tangle gui code, querying maya scene properties and "processing" code, so at least separating them properly is a good first step.

Rewriting the texture manager below using a texture class object shortened the code dramatically.
A 1200 lines melscript is now some 360 lines of python and a .ui file. Python rules...

Here is the code.

June 3, 2011

pyQT with Maya2011: adding a dynamic checkbox list

Filed under: Code, Maya, python, tool — katisss @ 6:41 am

I decided to give good old texture checker tool a new gui as maya 2011 stopped supporting some formating features it was using.
After building a .ui in QtDesigner i added code to update the dynamic checkbox list (a QListWidget) and connect the other widgets.

gui6.jpg

I didn't find accessing the dynamically created check boxes too straight forward, so here is a code snippet:

 
#get the list
listWidget=self.chLayout.itemAt(0).widget()
 
#add check boxes
item = QtGui.QListWidgetItem(listWidget)
ch = QtGui.QCheckBox()
listWidget.setItemWidget(item, ch)
 
#query check boxes status
for index in xrange(listWidget.count()):
    check_box = listWidget.itemWidget(listWidget.item(index))
    state = check_box.checkState()
 

Here is a useful example for using pyQt in maya with Threads in a way that doesn't block the gui.

And here is the code.

Powered by WordPress