Monday, 23 March 2015

Virgins and Mice (Blender musophobia)

My tutorials to date have been primarily designed for novice or beginner Blender users; and perhaps yesterday's installment pushed that envelope a little by getting even a little more complex. Today's will be a step in the opposite direction: this one's for Blender virgins.

Blender Skill level required: none
Time required:
  • 1 minute if you only do the tutorial
  • 10 minutes if you haven't installed Blender yet or have an old version (<2.70)
  • a few more minutes if you read my comments after the tutorial
  • another couple minutes if you do the optional bonus tutorial
  • a lifetime if you do the very final step at the end

The Elephant in the Room

Are you a complete and utter novice?

Is Blender on your to-do list but you've never gotten around to doing it yet?

Have you downloaded Blender, installed it, opened it once, spent 10 minutes feeling increasingly like "this isn't for me!" and then shut it down again?

Is that little Blender icon is sitting there on your desktop, ignored if not outright feared, taunting you?

This tutorial is for you. Or, to be specific, this tutorial is my recommendation for someone who is a creator in Opensim (or Second Life) and wants to get started with Blender but has hit one of the above stumbling blocks. If you're not intending to use Blender primarily as a means of creating content for upload to Opensim, you might want to skip this.

Why elephant? I'll tell you after the tutorial.

If You Have Blender v2.69 or Earlier

 If you already have Blender installed but it's version 2.69 or earlier, do yourself a favour and uninstall it. Then install version 2.70 or later. Why? Because the interface underwent a major facelift with the release of 2.70 and is (in my opinion) much more user friendly.

If You Don't Have Blender Installed (or Just Uninstalled an Old Version)

At this moment, the most current version of Blender is 2.73A but 2.74 is in the pipeline (a release candidate for it is available for testing) and will likely be forthcoming in April. You can (and should!) download the most recent official release version from the Blender Downloads Page.

Installing it is easy and well documented by the folks at Blender so you don't need me to repeat that stuff.

Today's Tutorial

Today I'm just going to do a quick step-by-step tutorial and then explain why afterwards; so let's dive in.

Double-click your Blender desktop icon to start it.
Don't panic.
In the main menu at the top left of the screen, click "File" and then "User Preferences".

This will open a large dialog box with tons and tons of options. A bunch of main "categories" of options are in tabs across the top. When you click one of these the options for that category appear in the space below, often with their own set of tabs and usually there are so many that it's a scrollable list of options.

Select the Input category tab.

The lower part of the dialog will change to show you the input options and very near the top of this dauntingly long scrolling list of things there is a lovely pair of buttons with the tiny-font text that says "Select With" above them.

Click "Left" so it turns blue (blue is the colour Blender uses by default to highlight something that's selected).

Now click the "Save User Settings" button at the bottom of the dialog window. Blender will now probably behave in a way you find -- consciously or not -- more comfortable with.

Congratulations you just completed today's tutorial. :)

The Whys and Wherefores

I can hear you say "but wait...there's nothing to upload...we didn't make anything!"

Not true. You just made your Blender learning curve infinitely easier and, whether you're consciously aware of it or not, considerably less intimidating.

This is all only my opinion, of course, but I suspect my own experiences with Blender won't be all that dissimilar to a large percentage of users.

I've been using computers in one for or another since the 70's. Back in those days we didn't have mice, we didn't have monitors, we didn't have....well, it's a long list.

Over time, all these handy peripherals got added and one of the early ones was the mouse. Software kept up with these advances, incorporating them into your workflow. And fairly early on it -- once a two-button mouse was invented -- it became pretty much a convention that you "select" and navigate with the left mouse button (LMB) and most often the right mouse button (RMB) is used to bring up a context-sensitive menu or perhaps something else that's software specific.

For reasons that have been hotly debated for quite a few years now, Blender doesn't follow this convention. By default, when the mouse is in a main view panel Blender selects with the RMB and does other stuff with the LMB. This is so counter-intuitive to the average notice user that I am willing to bet most people have this experience when they install Blender for the first time:

  • fire it up with building excitement
  • don't read the instruction or do any beginner tutorials because, really, who does?
  • left click on the default cube that's sitting there when Blender is newly installed
  • the 3D cursor leaps to that spot (except you don't know that's what that little target thing is yet) and the cube isn't selected
  • maybe a few more fruitless left-clicks around the screen (on the camera and light source if you happen to be able to see them) all of which happily move the 3D cursor around but none of which do what you were expecting them to select something damn it!
  • maybe you right-click somewhere in the hopes of context-sensitive menu to help you. If by some miracle your mouse pointer happened to be over a scene object it's suddenly outlined in orange. Woohoo! Otherwise, no joy.
At this point if you're like me, you gave up. Maybe you gave up with every good intention of going back and trying again. Maybe you even did try again.

But my point is that as a first experience, this is a real downer. And the longer those left and right mouse buttons continue to behave counter-intuitively, the more frustrating Blender feels -- even if it's only at a subconscious level. I bet (but have no data to back it up) that this is the root cause for a very large number of people never getting beyond that first 30 minutes of experience. That's the elephant in the room...Blender makes us terrified of our mouse when we first start, and that's a mental block that takes a lot of effort to overcome.

The "tutorial" we did today switches the mouse button functionality, making the left button now behave in Blender the way that it does in 99.9% of the software ever written. It has absolutely zero effect on anything else so there are no hidden pitfalls. The only thing you need to do is remember that some tutorials (print of video) will say "left-click here" and if they're not using a switched-button mouse set-up you'll need to mentally translate that to "right-click here" and visa versa. That's why in my own tutorials I'm usually very careful to always use the word "select" (or whatever) and try to never refer to which mouse button you'd do that with.

Honestly, Blender is not anywhere near as hard as many people make it out to be. Sure, it's an extremely complex piece of software that's packed with features and thus pretty overwhelming for a new user. But the exact same thing can be said for your SL Viewer, Gimp, Photoshop, Excel, Word...heck, even web browsers and e-mail programs are packed with features these days.

The only difference is Blender is an environment you haven't learned yet, unlike some or all of those others. The fact that you probably already have building experience with in-world prims actually puts you a lot further ahead in the curve compared to most new Blender users, so all it takes is a bit of time, a bit of perseverance, and an open mind and Blender will soon be your new best friend.

Also like most such complex programs, Blender caters to a huge user base with very diverse needs. This typically means that an average user will never even remotely learn all of the features and will probably only use a very small subset of them on any sort of regular basis.

That's definitely the case with Blender from the perspective of an Opensim or Second Life builder who wants to use it to make content. You'll use some of the modeling tools and maybe if you're brave you'll dive into rigging and animation; but you'll never be using it for the sort of thing that Blender is actually intended to be used for. Blender isn't really intended for a workflow whose primary goal is the subsequent export of of models to be uploaded as in-world content. It's geared for high resolution render output, film, and other such "professional" needs. Making a low poly model and exporting it happens to be capability, but they'd never have designed it the way they did if that was its primary function.

However, it happens to be an extremely powerful and useful tool for Opensim creators, so many of us have rolled up our sleeves and begun to learn just enough about Blender to achieve the output we're hoping for. I certainly don't think I've even scratched the surface of what Blender could be used for. I've just spent some time getting reasonably good at many of the little parts of it that are useful for content creation.

End of overly-long philosophical ramblings...for today anyway.

Optional Bonus Tutorial

As an optional bonus tutorial, people intending to use Blender primarily for content creation might also want to do the following:
  • Select (left click, woohoo!!!!) the cube that's sitting there in the middle of your screen.
  • Make sure your mouse is still somewhere in the main view screen area and press either the "X" or "Delete" key on your keyboard (both do the same)
  • A little pop-up appears right where you mouse is, asking you to confirm that you want to delete the cube. If you move your mouse away from it, it disappears and you'll need to press X or Delete again. Click "Delete" to delete the cube.
  • Zoom out a bit until you can also see the default camera and light source that Blender puts in the scene at start-up by default as well. Repeat the previous steps with them to delete them from the scene too.
  • In the very top right of your view screen you probably see the white text "User Persp" which means you're in perspective view mode. If so, press the numpad5 key once and it will switch to "User Ortho" view instead. The numpad5 key toggles back and forth between the two modes and you will want to do the vast majority of your work in ortho view (trust me!). Your mouse pointer needs to be hovering somewhere in the main 3D View pane for this to work and will be ignored if it's hovering over any of the side panes.
  • Our next step is an easy one the menu bar at the bottom of the screen choose Object >  Snap > Cursor to Center. This sends that little red and white target cursor back to the <0,0,0> position on the screen in case you moved it accidentally with a click earlier.
  • Optional but highly recommended step: In the menu bar at the very top there's a drop-down box that currently says "Blender Render". Pick "Cycles Render" instead to switch to that rendering engine. 
  • Last step: From the menu at the top pick File > Save Start-Up File and a little button will appear right where your mouse is asking if you to confirm that you want to do this. If you go ahead with it, this exact view and set-up is what you'll see any time you start Blender in the future (unless you double-click on a .blend file which will load that instead).

Why do this?

While it's possible that you'd want to start modeling from a cube, it's equally (if not more) likely you'll want to start with something else so you'll be deleting that starting cube anyway. We might as well just delete it this one time and never have to bother doing so again. If you do want to model from a cube then you'll just Add > Mesh > Cube and you'll have the identical cube.

For Opensim purposes you won't need or want a light source or camera until you've a very advanced Blender user so you'll be deleting these all the time too. Might as well just get rid of them now, and by the time you reach a Blender level where you want them again you'll consider it child's play to add them into a scene any time you want them (and probably quickly remove them again after you finish using them for the techniques they're used for). The camera and light are essential for rendering but you won't be rendering for Opensim.

Ortho view mode is perhaps a bit more of a personal preference but I find it considerably easier to work in ortho view and only rarely (if ever) switch to perspective view.

For Opensim export it doesn't matter which render engine we use because we're not rendering anything; but it does affect the way you set up materials (which we do need to do for export) and the options you have for generating new textures in Blender that you can export for use in Opensim. Cycles Render is now considerably more powerful and flexible than Blender Render is so as you become more a advanced user you'll want it. Getting used to it now, when you're just starting out, will also make you very familiar with its somewhat different method for setting up materials, saving you from learning that later (and unlearning the Blender Render method).

Older Blender tutorials will probably include showing the Blender Render method for setting up materials...newer ones will either show both or show the Cycles method and as time goes by I expect Cycles will completely replace Blender render in all of them (Cycles will likely soon be made the default engine that Blender starts up with).

If you want, think of it as being a bit like ODE and BulletSim in Opensim. There has been no active development of ODE in several years and only a few people are still clinging to it for dear life. Blender Render is much the same. All the new development efforts and new capabilities are in the Cycles Render engine so the sooner you start to learn it, the better.

EDIT: And Another Thing...

It's been brought to my attention that I neglected to mention one other peculiarity about Blender that takes a little while for a novice to get use to: the importance of the mouse pointer's location on the screen.

With most software unless you're actually clicking on something it doesn't matter where you "park" your mouse pointer. That's not the case with Blender and can cause some confusion when you're first getting started, particularly when you're using hotkeys (which as I said above is something you should start learning as soon as possible).

Each of the different parts of your screen (called "panes") should be thought of as a separate entity, and each has its own hotkey assignments, many of which can conflict with that same hotkey combination for another pane. The only way Blender knows what to do when you use a hotkey is to take it's cue from which pane your mouse pointer is currently hovering in.

It makes sense, but it's a little unusual until you get used to it.

The Final Step

Now go play.

I bet you'll suddenly feel an awful lot more comfortable even though nothing at all has functionally changed. It will just feel more intuitive and hopefully lead you to many, many enjoyable and create hours with a very powerful piece of software.

Have fun!