I've recently came upon a strange problem in Houdini and I spent quite some time finding the solution so I thought I would post it here. I was making a HDA (Houdini Digital Asset) for Mantra but after finishing the asset I wasn't able to create it in the Network View anymore as you can see in the video below.
After comparing this faulty asset with a working one I found out that some lines of codes were missing making the user unable to create the node.
1. As you can't add your HDA in the Network View you'll have to install it using the "Install Asset Library..." menu.
2. Then you have to "Allow Editing of Contents" of your digital assets, go to "Type Properties" and in the "Tools" > "Scripts" tab, add the following lines of code:
import drivertoolutils drivertoolutils.genericTool(kwargs, '$HDA_NAME')
3. Save your HDA and now you should be able to create it in the Network View =)
Blender has always been for me the best software in terms of speed and ease of use and that's mostly true thanks to its incredible number of shortcuts. But that's also something new user find quite difficult to learn.
That's why I decided to make a list of 51 Blender Shortcuts you need to know in order to use Blender as fast as possible.
These shortcuts were all taken from www.ShortcutsHeaven.com, my side-project website which references shortcuts for many applications.
I love to discover quick tips for a software I use every day. So I figured I would make a post about 10 Maya productivity tips I use almost everyday to make my life easier.
In this post I share with you my top 10 shortcuts I use to increase my productivity when using Sublime Text.
1. Select all occurrences of a word
Alt + F3
It's faster than using Ctrl + F. Just select a word then hit Alt + F3 and there you go, everything on your current sublime text document is selected.
2. Increment/Decrement numbers
Ctrl + Up/Down
You don't have to select anything, just put your cursor where your number is and then use the shortcut key.
4. Duplicate a line
Ctrl + Shift + D
Once again, you're saving many clicks. With this shortcut you don't have to select a line then copy and paste it, just hit Ctrl + Shift + D and voilà!
5. Comment / Block Comment
Ctrl + / and Ctrl + Shift + /
With these shortcuts you can quickly comment/un-comment a line or a block of code.
6. Select content between quotes
Ctrl + Shift + Spacebar
Just place your cursor inside text surrounded by quotes and it will select everything (quotes included). Very handy!
7. Select content between parenthesis
Ctrl + Shift + M
Same as above, but for parenthesis. Really useful when working with languages such as Python.
8. Select content with same indentation level
Ctrl + Shift + J
Use this shortcut when for example you want to select all content inside a div container, or everything being executed inside a loop.
9. Paste and keep indentation
Ctrl + Shift + V
I spent so many time pasting text and having to redo all the indentation that was messed up. With this shortcut the indentation will be the same as the text you copied. Nice!
10. Indent/un-indent multiple lines
Ctrl + [ and Ctrl + ]
Sometimes you have to copy a block of code into Sublime Text and all the indentation is gone. With these two shortcuts you can quickly indent/un-indent multiple lines of code at once.
Many of these Sublime Text shortcuts are really useful, however I find them hard to reach sometimes (Ctrl + Shift + J or Ctrl + Shift + M for example). Therefore I would suggest you to remap these Sublime Text shortcuts to keys closer to the Ctrl and Shift keys.
You can also find a complete list of Sublime Text shortcuts on www.ShortcutsHeaven.com.
Over the past few months, I have spoken to many people at open houses in VFX studios (MPC, Atomic Fiction...). And one thing I kept being asked about was: "Do you know a programming language"?
I have been introduced to programming when I was still a teenager, by making small scripts in VB.net. I then left programming for some years and came back to it about a year ago while learning visual effects at NAD.
Now let's see how programming can be an extremely valuable skill for you.
Programming makes your life easier. Take for example my website ShortcutsHeaven. At first I thought I could post a random shortcut image every day on Facebook, Twitter and Tumblr, all by myself. Creating an image in Photoshop only takes a few minutes and so does posting it on social medias.
But now, what if I want to take a few days off. Or what if I get stuck in a snowstorm (it happens more than you think here in Montreal)?
The only way to make this kind of workflow as efficient as possible is by using some kind of scripting. Therefore, I started looking at how I could make it possible. From automatically generating the image from my database, to posting it on social medias. I searched on Google and solved every problem step by step. I had no idea in the beginning how it could be possible.
But the most important thing is that I knew somehow that this should be possible. And so I searched and found how to do it, using a mix of PHP, Python and task scheduler (don't underestimate task scheduler, it's really powerful!).
So that's an example of how I went from spending days creating images for a side project to a script doing everything for me in the background.
Because that's the best part: now I don't even remember that I set up all those scripts. I just check if everything is still working fine every now and then. And guess what? Everything has worked fine for the past 6 months.
Scripts don't fail you. People do (wooh, that sounds scary doesn't it?).
You could think programming is only used by geeks or Google engineers but recently my girlfriend applied for a master degree in information science. And what was she asked about at some point? You guessed it: "Do you know a programming language?" (in this case Python and HTML). And I am sure she would find great use for programming in the field of information science. There are so many things you can do with programming for dealing with files and classify all sort of documents.
In case you're still not sure whether you should start scripting, you might want to check this video:
Start programming (now!)
So where do I start? There are many places on the internet where you can start learning. But first you must:
#1 Choose a programming language
I would personally recommend learning Python if you are starting from scratch. Python's syntax is really easy compared to other languages such as C or Java.
#2 Choose a text editor
A text editor will be your every day companion when you start scripting. Make sure you choose carefully the one that suits you best. You can use Windows' notepad however there are better text editor made exclusively for programmers.
I would recommend using Sublime Text, which is being used more and more by programmers all around the world. It's lightweight, can be downloaded as a portable version, and has some pretty neat features.
#3 Start learning
Sadly, most websites where you can learn programming are not free.
One of the most famous website where you can learn many programming languages for free is Codeacademy:
Another great website with free MOOC (Massice Open Online Course) is Coursera. You have to register to follow courses and then choose a subject and start learning with people from universities all around the world. Definitely a great way to learn if you are motivated:
Then there's also this wonderful GitHub index which contains hundreds of free programming books about almost every programming language you can dream of:
Now if you're younger you might want to take a look at Code.org, which is a non-profit organization aimed at introducing people to coding with fun challenges you have to solve:
But the greatest website where you will learn programming is no other than Google. You can be sure that you will find answers to 99% of your questions by searching on Google. There are so many people scripting as a full-time job or just for fun. But now how do you know what to look up in Google? If you have never done any scripting, what can you ask Google? Well stay tuned because that's what the next part is about :)
#4 Challenge yourself
In my opinion, there is no learning without challenging yourself. You can spend months trying to learn something without achieving great results only because you are staying on the safe track. You do all the exercises on websites such as CodeAcademy but you never go beyond that. You never challenge yourself. Therefore you're not making progress.
You will however start seeing some progress when you will try to do something really custom. Again, using ShortcutsHeaven as an example, what this website allowed me to do was to learn how to use HTML, PHP and MySQL in less than two months (I still have a lot to learn though). And that's only because there was many things I wanted to make and each time I ran into a problem, I looked into Google, websites, forums, and found the answer I was looking for. And that's how I learnt thousands of functions, tips and tricks and whatever I would have never stumbled upon if I had stayed on CodeAcademy.
The same can be said when you are learning a new language. You can spend months, even years, doing exercises in a book to learn Spanish, but you will only become fluent when you will challenge yourself and spend two months in Spain. And I can guarantee you that you will learn much more in two months than you did in two years.
Now to wrap up this post, I'll let the people who changed the world with programming have the last words. Because they will tell you a thousand times better than me why programming is so important in our lives:
Do you know a programming language? If yes, don't hesitate to post which one on the comments and explain how it changed your life! Happy coding!