unity is a game engine that has great potential when creating games.
But the problem is, its not open source.
Basically the devs who created unity, decide what you can do with your game. Then, when you realize you come across an obstacle where you can't use their game engine to solve. You are forced to spend even more money to request unity to fix that issue.
Well lots of people use unity on regular basis. So expect the price to adding content they don't want to work on to be reasonably high. The professional copy is 2000 dollars aswell. I am not sure if unity does project packages where you can have more than one copy of unity for n amount of systems. Usually companies that sell these products will give you 2 options for a professional copy.
The first option would be for your own personal use. You get a fairly reasonable price considering what is involved in making a game engine. For modern engines your looking at around 400 - 700 dollars depending on what your engine does. Since unity is a 3D engine, your prices for quality engines are going to be pretty expensive. Where as the seccond package is the other version of the game engine where you can get the software but distribute it across many computers and have more than one person using the same package at the same time.
These packages usually cost a few thousand dollars.
But, there are 3D engines out there. That are free of charge. Open source. Quality engines.
Ogre is a quality engine. It may not be able to give you the glamour and effects that unity does. But that doesn't mean it doesn't work and cannot create games.
So if your looking to actually learn about being a dev and time is not a limit. Then you can sit down with an open source game engine. Then slowly and systematically begin analyzing the code and figuring out how it works.
Now you say you don't have konwledge in C++. Your gonna open these files through enough google searching and your going to see a bunch of crazy technical gibberish that you can't possibly make out. It's GOING to be hard and confusing as you have nobody to walk you through the process.
Well, don't let that scare you. Break it down, line by line. Then just TRY to figure it out. Don't just sit down for a month and do nothing but study. Work at your own comfort and pace yourself. If you don't think your ready for that particular task. Figure out a more simple version of that task first that is related to the objective. Then build your way up slowly and gradually at the speed you feel most comfortable.
It is good to know how game engines work for all devs. Even if you don't work on them. Not only that, but if you know enough to design your own capable game engine. Making quality video games becomes 100% free. All you need is a computer to work at. Then all the high costs professional companies pay for, you can make yourself.
If you want to do something. Go out and do it.
Don't dance around the difficult subjects.
Jump right in and solve them. Or fail trying.
Thats the attitude you need to have with this kind of stuff. Thats the attitude you need to keep. Thats the only way you will keep up with the advancements of technology at the speed it advances. Sooner or later your just simply not gonna have enough time to learn everything at the rate and speed our society is advancing. So, jump and get shit done.
Then go to university for background education.