In my view you always have to worry about low level details, the only difference is if you care or not.
Let me tell you this, there are many people and many bad coders that still pretends to achieve C++ performances with Java without knowing the internal mechanism of a language or a platform; i'm not saying that Java is bad, but if you want to code less and make a small simple game probably Java is even better than C++ for you, but you can do things in C++ that simply you can't do in Java, and viceversa, and many people still think that all the programming languages are on the same level and they are just different dialects of the same thing. Same concepts applies to low level vs high level most of the times.
You want to use Ogre, that's fine, but you are accepting a deal, it's always a deal no matter what, if you care about low level details your deal is that you are doing all the hard work but the code that you produce is yours, with Ogre the deal is that others will do a big part of what you should do but you are subject to their timeline and schedule, and you do not own any part of the code, so you are subject to the license that they choose too. I would also like to add the fact that what you learn with a third party tool is most likely useful only until that tool is around and in active development.
If you have serious intentions and you really want to learn the internals, you will code your own stuff, if the developement of game is just an optional thing in your career you will use thirdy part tools.
Consider what your intentions are and make your choice.