Thanks for the responses guys, lots of great advice here!
I spent most of yesterday playing with Unity, and am still amazed that they've incorporated js as a scripting engine.
Blender was actually one of the first engines I tried. I spent almost a week with it, trying to decide whether or not to progress into Python (their main scripting language). After looking at their library though, I was massively disapointed to learn that not all of the features of the engine can be accessed through apis, meaning that in some cases you would neet to use the logic interface. I'm sure you would agree that keeping all of the scripting in one place will keep things much neater and easier to maintain. This makes Unity seem like a much more attractive option to me. Thanks for the suggestions though!
"Could you go into more detail about what you're trying to get out of
your foray into games? New career, new hobby, want to be an indie, money
making scheme, some combination?"
In all honesty, I would absolutely love to make this a career. However after working in such a saturated market (web development), and seeing how hard it can be to maintain a stable income, I honestly fear to dive into game development full-time. If I had the budget to cover the years of training it would take, then i'd do it in an instant! So, I think after reading the advice I've been given, and experiencing what is possible with engines like Unity, this will be my best bet to test the water.
Who knows? Maybe a game I make in Unity will take off, and i'll be able to afford to expand into the C++ teritory!
I 100% agree with your suggestion that Unity + C# would be a good middle ground. I love the idea that after I become comfortable with how everything works with Unity and Js, I can start to pick up a more mainstream language, and use it in an engine I am already familiar with. For now this is 100% my intention.
Again, thanks so much for the advice guys. It's really given me some clarity on how to practically get into game development!