I've followed the tutorials on this site up until pointers and am now following lazyfoo's tutorials on game programming in SDL (I do plan on finishing the rest of the cplusplus tutorials). I feel like I'm not learning from lazyfoo though. I feel like he's doing all the work for me and then I'm copying the code down and just getting a basic idea of how a program is structured. Did anyone else feel like this when they were starting out? Should I be doing projects where I actually have to research functions on my own as opposed to having them given to me?
It's not enough to just mindlessly follow a tutorial like that unless you're already very experienced, but a tutorial that describes specific functionalities of some technology with complete examples is a good starting place, even for seasoned programmers. Complete examples are great to play and experiment with.
* See what happens when you change the code in some way. Play with the constants in the code. If you don't understand why some change has the effect it has, check the documentation.
* See if you can change the code to do specific. Start with small goals and then add more and more complexity. E.g. if the example is a rotating shape, try changing the color of the shape, then try a cycling color change (red -> green -> blue -> red), then try a more complex shape.
Myself, I find it easier if I have some goal to move towards. Even something simple like "make a snake game", or "make a tetris game" is enough. As you progress you can try adding more features that you'll need to do research to implement.
I feel like he's doing all the work for me and then I'm copying the code down and just getting a basic idea of how a program is structured.
Then take his code and modify it, make something different or better.
If that's to hard for you make the same stuff he made from scratch without looking at his tutorials. You can use the SDL reference to get the names of the functions.
Write your own game FROM SCRATCH.
I mean, I have no idea on how to load a texture but that's something not so important in my opinion.
It's far more important to get used to programming so just write something.
Yeah, now I'm on http://wiki.libsdl.org/APIByCategory and just trying to create things based on what I read and what I know already. This is definitely helping me get familiar and do things on my own.