Bee in the Bonnet by DNA INC BATCH I

This is the first High-Definition short film from batch I of DNA Inc. And also my first assignment as Mentor since I got associated with DNA Inc. The task handed over to me was that of supervising and reviewing the asset building process and also setting up an efficient pipeline at par with the one available in high-end production houses.

The execution of the project in the scheduled time frame was indeed a challenge with 70-plus shots spanning across a duration of 4 mins. But I am glad that the effort was paid off in the end with the successful completion of the film as scheduled and also an amazing portfolio for every student who was involved in project.

The film was done entirely in Maya 2009 and rendered using Maya Software Renderer.

Qcalendar widget for Maya GUI using PyQt

QCalendar widget is one of the handy widgets provided by PyQt that can be included in your maya custom UI for the user to deal with date information.Apart from providing current date information to the user, Qcalendar widget can be used to get valid date inputs from the user.It includes a set of signals like selectionChanged() and currentPageChanged() which can be used to update the information based on user selection.

The selected date can be retrieved using the method selectedDate() which will return a Qdate.The day() and month() methods of QDate can be used to get seperate day and month values. Similarly longMonthName() method can be used to get the long names of the month since the method month() gives the month in number format (12 for December).

The usage is as follows:

myDate = myCalendar.selectedDate()

month = myDate.month()

day = myDate.day()

monthName = myDate.longMonthName(myDate.month())

The calendar grid visibility can be set for east readability using the setGridVisible() method which will accept a boolean value.

myCalendar.setGridVisible(True)

Subscribe to Pragmatic Artistry

One more addon to favor the frequent visitors to this page.Now you can sign-up with your e-mail to get live updates of new techniques and tutorials covered in this space in your mail inbox. I just loved this new widget that wordpress introduced couple of days back which will help you keep track of your favorite blogs. Enter your e-mail address on the subscription widget and hit the Sign me up button and there you go!!!!

MADAM Login dialog using PyQT

loginUI

One more addition to power up MADAM.But this time in the form of a GUI.Ok, I am not claiming this as a considerable achievement.But this being my first dialog in PyQT, I thought I should post it here just in case someone who is new to PyQT might find it useful. After collecting inputs from my colleagues regarding MADAM, everyone had the same opinion that they don’t want to type in to a console at any cost.They needed a neat and tidy interface that would be comfortable working on. So started off with a dialog, with just a QLabel, QlineEdit and two QPushButtons to get the job done.The next step was to set the echoMode for the QLineEdit to prevent the keyboard entry being echoed in the field. I couldn’t get it working in the initial try since I was trying to pass a string to the setEchoMode method while on the other hand it was supposed to enum.This is the format for setting the echo mode.

passwdTxField = QLineEdit()
passwdTxField.setEchoMode(QLineEdit.EchoMode(2))

Finally a QHBoxLayout for the two QPushButtons and a QVBoxLayout for the main dialog, the loginUI was ready to use.

MADAM development kickstarted…

MADAM…that’s the name I chose for my new assignment.Although it may sound confusing at the very first place what sort of an assignment that could be, its nothing more than a handy(or the way I expect that to be) application for asset management.You guessed it right, MADAM stands for nothing other that Modular Animation Digital Asset Management.This one stands out from whatever I have attempted in my entire career in terms of the scale of the project. I havn’t set a deadline for the proposed finishing of the project since I am not sure about the free time I will be getting from my work schedule.Another reason is I am still through the learning phase of application development.But that doesn’t mean that this will be in a work-in-progress stage for years to come.

Here is a list of the tasks which I am planning to handover to MADAM:

1.Job Tracker for assigning and keeping track of the tasks.

2.Daily Publisher for publishing the work for daily review.

3.Integrated messaging system for easy communication.

4.Customizable home page to favor easy access to frequently accessed data.

5.Message board for sharing useful resources.

6.Project wide report generation at any stage

These are some of the tasks which I have planned to implement as of now.Gotta see how far I can go in to implementing these features.

Coming to the technical aspects,The core of the application will be powered with  python2.5 for the programming part along with pyQt4 for the interface design.The database will be MySQL ofcourse I had to choose this one among its opensource counterparts(had planned for PostGreSQL in the beginning, but switched over to MySQL since there was limited documentation available for the PyGreSQL module.).Thats it for the time being.Hope that will help me carry out most of the tasks which I have planned so far.