Be careful. Making a game in C++ is definitely a fun challenge (and sometimes fustrating), but you must make sure that you have experience in easier methods, such as using GameMaker, or Unity. Making a game in C++ is pretty much the second hardest way to make a game/game engine, aside from making the whole thing in assembly. You will need a lot of experience to aid you, so that you do not feel like you are overwhelmed.
I'd highly recommend starting with GameMaker, Flash, or any 2D game making software, and then move up to Unity, and then the C++ stuff if you are ready for it.
"Aside from this, what other things do I need to know in order to make a game?"
Lots of things
-A lot of 3d math, preferably Linear Algebra and Trigonometry. You may not need to know any Calculus, except if you are doing something extremely complex and unique involving 3d functions and rates of change. Linear Algebra is very important, as it is used to transform(translate, scale, and rotate) objects, as well as graphical effects like shadow mapping.
-You need to know where all the tutorials are at. OpenGL-Tutorial.org, Rastertek.com, etc.
-You need to know how to load files as fast as possible. Loading in video games is always too slow, so the faster the better. Get used to using a lot of binary files, and loading a lot of contiguous data.
-Know which libraries to use. This is very important, because different libraries can support different Operating Systems, and may or may not be up to date, or as fast as others. AFAIK, there are about 20+ different rendering libraries out there.
-Know how to compile a library. I wrote a topic on that here: http://www.gamedev.net/topic/663810-how-to-compile-libraries-for-c-mingw-with-msys-on-windows-for-indie-game-developers/