You thought you saw it all already right? Well wrong again! Varomix and cmiVFX bring you a brand new masterclass on Houdini Python Character Picking using PySide. This video and source project files will teach you the advantage of the amazing Qt Framework + Houdini combination by using the Qt Python binding PySide. Every major studio in the world requires custom tools to give their animators usable user interfaces for animation and rigging. With the help of cmiVFX, now everyone can have access to these powerful tools in the most powerful of applications.. Houdini and Python. This is NOT just a simple tutorial, this is a career building event that you can rewind over and over again for as many times as you like, for as long as you like. When it comes to serious Visual Effects training, there is only one choice, cmiVFX.com
This is NOT an introduction to Python or Houdini, you should already know at least the very basics of Python and Houdini. Having said that, no knowledge of PySide (Qt Framework) is required, you'll learn all that you need here to complete the project.
This opening chapter will overview the character picker result that will work with the Toon Simple Character that Side Effects made available for free for everyone to see the cool rigging and animation tools in Houdini. This character picker expands the experience for all those artist, that like cool looking interfaces instead of selecting curves in the viewport.
Overview of the tools which include PyCharm, Qt Designer and PySide.
In this chapter we'll setup our environment in a very clever way that will work for any size studio, from freelancer up to gigantic studio environments. This workflow will make it easy to keep everyone up to date using the latest version of your tools.
We'll start by taking a simple PySide application and see what changes we need to make to make it run inside Houdini. This is something that will not change for all your tools so is a very important step that will be the basis for all tools you will make.
This would be the start of our tool, creating our own window, settings and more.
Learn how to add a background image for our character picker, we'll do this by using a simple hack, using a label to hold the image, works great.
We will start using Qt Designer to help us develop our GUI faster. Designer is a great tool because it allow us to design our interface in a visual way, which we will be able to see and test here. In a way it will work exactly the same way inside Houdini.
Once we added the placeholder image, we will use the method we used before to add the background image back, this way we do not have to deal with resource collections and we just reference a file directly which makes the code more reusable for other tools.
This function will be very clever because it would be used to pick every control on the rig with a few lines of code. Doing functions this way will make you more productive, also makes your code easier to maintain, extend and reuse.
These buttons are like separate mini tools that help you accomplish common simple tasks with just the click of a button. We will add the ability to select all the controls of the rig and also open the Channel Editor so we can edit animation curve quickly.
This chapter will cover how to reset all keyable parameters, also will give you a one click option to key all keyable parameters on the rig only.
Some functions like selecting all controls and keyframing parameters can be grouped into one entry in the Undo stack, that way you only need to undo once to undo everything you put into groups and keep your undo stack clean and work as expected.
We can use Qt Designer for more than just designing the interface, we can take advantage of the Signals and Slots that every Qt Widget has. This way we can add simple functionality to widgets without using any code. We will use this to hide and show FK and IK buttons.
For some weird reason Qt Designer doesn't expose the visible property so we will have to edit the .ui file directly in a text editor. Being that this is just an XML file, it is really easy to open up and see how it works and add functionality to it, in this case, setting the visible property of the buttons.
Now finish connecting the buttons in code, this is very simple because everything we need to make them work is already in place. We just need to get them from the UI and hook them to the corresponding function.
Buttons and widgets in Qt have a tons of functionality so we will take advantage of the modifiers to give our buttons more functionality. Holding the shift key when we click the button will add that rig control to the selection, pressing Control will deselect the rig control you clicked as expected.
We'll add error checking functionality to the tool to make sure new users realize that they need to first pick the Rig node before running the tool.
We can use more than buttons from the Qt Framework, we can use what ever we want from it. In this case we will use sliders to control the eyelids of the character, making the animators job easier so they don't have to click and then rotate the control, they can just use the slider directly.
Adding sliders to the hands will help again to make it simpler to animate the hands saving clicks and making our character picker more useful to artists.
We need to make the FK IK switches actually change the state of the Houdini rig, so far they are not interacting with the FK IK slider in Houdini.
The user can change the FK IK state in either the character picker or the HDA interface in Houdini. If he changes the state in Houdini directly, the states will be different, so we need to create a function that checks their state when we run the app.
We'll do the same check we did for the FK IK switches this time for the sliders, this way the sliders stay in sync.
Now that we finished adding functionality we can start making the tool great, all Qt Widgets support CSS stylesheets, so we can make them look how ever we want, in our case we'll make them look more integrated in Houdini by changing a few parameters.
Varomix is a VFX Artist and Generalist TD and his love for visual effects began in 1993 when he attended a screening of Jurassic Park. He began working with 3D applications in 1998, starting with 3ds Max, then moving on to Cinema 4D, then Maya 2.0 in 1999, and he has been doing CGI for film, TV, video games, print, and web ever since. Shortly after Side Effects launched the Houdini Apprentice Program in 2002, Varomix became an ardent Houdini user. Since then it has become his main tool for creation. Varomix has also been an on-set VFX Supervisor and DOP assistant. He has been an excellent mentor for cmiVFX.
All cmiVFX videos come with all the training materials you can need right from our website. No matter what time of day, your location, or how you're feeling, cmiVFX will be there waiting for you!This video is available today at the cmiVFX Store: www.cmivfx.com
Video-on-demand streaming is available through the website to subscribers. In addition, video files are available for download for those who directly purchase individual titles from their cart.
Varomix is a Freelance VFX Artist, Generalist TD, Game Developer, Musician and Founder of MIXStudio. Shortly after Side Effects launched the Houdini Apprentice Program in 2002, Varomix became an ardent Houdini user. Since then it has become his main tool for creation. Varomix is also a father and husband that enjoy doing lots of crazy stuff with his family.