Yeah, there's definitely a lot to learn but Unity makes things fairly easy. A couple years ago I was attempting to make a game in Torque Game Engine (which is a now-deprecated 3D engine which has been "replaced" with the new Torque 3D) and I could not figure out how to do much of anything at all, even following a book or reading tutorials.
But with Unity I've been able to follow a few tutorials or read the documentation and work my way through making things happen. It's great and a lot easier than it could be.
An example is quaternionsw
. I don't even understand what quaternions are or how they work. All I know is that they are 4-dimensional things that allow you to avoid something called gimbal lockw
that occurs when rotating in 3-dimensions (and I can't wrap my brain around them). I'm not sure I understand exactly what gimbal lock is either
but I know it causes objects to not rotate the way you would think you are telling them to. Unity comes with built-in functions that automatically convert the "easy to understand" 3D rotations into quaternions and back again.
I've been really impressed with Unity and how (relatively) easy it has been to do things with it. And if you're willing to spend some money, there are some really great looking third party tools/plugins for it that make certain other things easy enough for people who don't know much programming to make games.