I think any game designer runs into this problem on a regular basis!
First, there is good advice given by the previous posters about "just go for it". Expecting too much of yourself is usually counter-productive so you do have to just see what you can currently do and go from there...
Second, if you want to learn 3D then I recommend starting with a ray-caster engine. If you're using C++ then I'll assume you are a windows user and suggest you forget about all these game libraries and just use the WindowsAPI. So long as you can draw a single dot on the screen, get keyboard & mouse input, then you can do 3D programming. Its then a question of how good your maths and software development skills are!
Third, whatever you do - good luck - but just start off small. Make a simple game in 3D and see it through to the end. As already said - it doesn't need to be perfect, just a start and something to show to others. You will get some who say its shit, but hey, we can't all be Elves from Rivendale, can we?
"Brother, I would spare you that pain..." Ramirez, Highlander
When I first started out, I spent about six months learning C and skimming over C++. After a quick command-line RPG game, I went straight into the bells and whistles of DirectX. There was something called WinAPI and GDI along the way, which I spent a few pages on, and went charging into API-madness like a bull in a china shop. To be honest, I really didn't have a clue what I was doing and it was painful, and whilst I managed to make a 2D blaster or two, I came away with the conclusion that I needed to go back and learn C++ PROPERLY, and even then, a few games later, I realised that skimming WinAPI and GDI was a mistake. So, don't be in a rush. Spend time learning your language first, then whatever you need next. You don't need to do everything all in one go...