My first post here so hello all
For many years I've been interested in Game programming and it's only been recently that I've put a good amount of effort into learning. I think my goal now is to slowly build up my knowledge of building a 3D game engine and put that knowledge into practice over a number of years. I will soon start working in the computer industry after graduating and spending a year out so I'm not necessarily looking to do this as a job but if after 10 years of studying whenever I get the time I have the knowledge that would let me do so, that would be great (or indie dev on the side).
So far my efforts have got me to a point where I've got a 3D model loader, I can add some reasonable fixed pipeline lighting, textures and materials and also some basic physics and collisions - nothing too flashy. I'm at the point now though where the deeper I get, the darker it gets. Looking to add a more global collision detection in anticipation of larger scenes in the future, I started reading about Scene Graphs. In adding lighting, I've also looked into shaders. Basically, the amount of material and techniques seems quite daunting but I'm more than willing to get stuck in. I don't want to dive into the wrong pool however - if it's possible, I'd like to approach things in a logical manner so I'm not going to hit a wall because I didn't use magical technique X.
I realise there might not be a simple path through all of material out there but if someone using their experience could provide a rough schedule of what I should be teaching myself in respect to building a 3D engine, that would be great. Just a list of broad or specific topics set out in what you consider a natural progression and I'm a happy bunny
While I imagine a lot of this is pretty general stuff, I'm programming on Windows, using OpenGL and C++ in case that helps.
For now I think I'll put Scene graphs to the side and look into VBOs and then maybe animation or shaders.
Thanks for any help, I appreciate it.
JC