What to do next?

closed account (1wU9216C)
Ok, so I want to *eventually* get into 2D game dev, possibly 3D. I read through all of Beginning C++ Through Game Programming (third edition) by Michael Dawson. So, that's about as much experience I have with C++. I've also watched all of Thenewboston's tutorials on Youtube, but I didn't get what I learned nearly as well as I did with the book I mentioned. I loved that book. It was fun to read, informative, and taught C++ through simple text based console games and similar stuff like storing 'items' in arrays to teach the basics of them.

So, since I'm done with that book, what next? I get everything in it pretty well, but definitely need more experience with everything other than what's in the book. Like I said, I'd love to be able to program at least simple 2D games. So what do I do? I'd love to get out of using the console for every program. SO what should I do? Continue using the console and coding simple text based games to learn more about C++ or should I move on to something else? If something else, what?

EDIT: Oh! O: Also... If you can suggest any other books for just getting into game programming or something, please do so. And please let me know if there's anything the book I had didn't cover (assuming you know the book) and that I need to learn.
Last edited on
You need to be very comfortable in console programming C++ before you can move on to programming windowed programs and games. If you think you're at that stage (or even if you're not) why not try to make a simple platform game?
i wanted to reach the same goal, and through my research i discovered the first steps:
if you want to implement a GUI in your application, you'll need to use an API (application development interface), there are lots of APIs to use for each domain.
for designing an application GUI for windows there's the windows API contained in the windows.h header, it provides basic windows GUI, you can do more if you learn to use MFC, however .NET framework can ease this operation so much, it would require minimum work to create a GUI.

for graphics rendering in windows, i recently found out about something called OpenGL(open graphics library), in windows it is implemented inside the VGA driver, and you don't have to install any additional libraries.
openGL is responsible for rendering graphics to a window you created using windows API.

there are also other ways of designing a graphical game, you can use directx libraries and direct3D.

through my research i discovered that 2D graphics are not much simpler than 3D graphics, so you can learn both, anyway, i think all games use both 2D graphics along side with 3D graphics

i didn't yet find a good tutorial on the subject, so if you can find a good one, please PM me.
Which timezone you in (according to GMT)?
If you're close to 0 then how about you help me out on a large project, I'm creating a full 2D & 3D game library and a game which will follow from it... My taget is to finish it before I leave college (2015) but with my current rate of progress I doubt I can make it on my own.

I started studying C++ through the same book and I was actually referring to it last night for something I needed but I think it'd be great to work with someone on something.

EDIT: Whether you can or not I would recommend looking into the original C language before going further and try find a few other C++ tutorials because there is an awful lot what aren't covered in the book by Dawson, (such as templates and unions for a quick example).

Then take a look at Windows programming, and you will need to find a really good tutorial on this because it's quite a difference...
I know it's not exactly what's needed but the introduction on www.directxtutorial.com I think explains the windows procedures really well.
Last edited on
Ok, so I want to *eventually* get into 2D game dev, possibly 3D. I read through all of Beginning C++ Through Game Programming (third edition) by Michael Dawson. So, that's about as much experience I have with C++. I've also watched all of Thenewboston's tutorials on Youtube,


I see the words 'read', and 'watched'. You are actually coding as well right?
YukiSnowmew wrote:
Like I said, I'd love to be able to program at least simple 2D games. So what do I do?


My advice: start programming simple 2D games.

I never believed in the whole "master the console before you try anything else" BS philosophy. If you have a passion for games, then working on games will motivate you more and you'll learn more quickly. So just do it now.

As long as you understand your limits and don't bite off more than you can chew, it's a great way to learn (and actually it is how I learned).

The key is to break things into smaller steps to understand the concepts. That is... don't try to make a full game right away.. but rather start with some basic components of a game. Your first few projects should be something like this:

1) Create a blank graphical window
2) Draw some kind of stationary graphic to that window
3) Use the keyboard so the user can move the graphic around
4) Add another graphic that moves around on its own over time
5) Do something when those graphics intersect/overlap


Those 5 steps account for most (maybe 90%) of what a simple game (like some kind of basic vertical shooter or maybe even asteroids clone) entails. You can piece together the rest of what you need as you go. Just understand that your first few game attempts will be sloppy, inefficient, and not very good. But even just making the attempt and practicing with real-life scenarios that actually interest you will teach you 100x more than reading a stuffy book or doing mundane console tasks you don't care about.



So yeah. Get a graphic lib. Fire it up... and start practicing. I highly recommend SFML. It's fast and about as easy as a lib of its type can be. Plus it has some basic tutorials on its site:

http://sfml-dev.org/
Last edited on
My advice: start programming simple 2D games.


Agreed!
Get stuck in and start making mistakes and learning from those mistakes. It is the best way to learn.
Making mistakes and solving them is most definitely the best way to learn, and [b]Disch[/d] said to start learning graphics, the site I referenced earlier is a great tutorial for learning Direct3D and starting off in Windows programming although it fails to mention a few key things that I will save you from now.

You'll need to install the Direct X SDK and add it into your compiler for the includes and the libraries. Also later on it fails to mention that you have to include headers like <d3dx9.h> AND use #pragma comment(lib, d3dx9.lib) for it to work properly

www.directxtutorial.com
FWIW I'd personally avoid diving into DirectX right away. SFML is easier to learn/use for beginners and is crossplatform.
closed account (1wU9216C)
I see the words 'read', and 'watched'. You are actually coding as well right?

Of course! I was copying all the code so I'd have it, then I'd either mess around with it or write something similar. I've also found some exercises online to do.

So yeah. Get a graphic lib. Fire it up... and start practicing. I highly recommend SFML. It's fast and about as easy as a lib of its type can be. Plus it has some basic tutorials on its site:

Thanks! I'll definitely be checking that out. I'm getting really bored with the console. There just doesn't seem to be much to do with it that would make any sense to do.

If you're close to 0 then how about you help me out on a large project

I'm not nearly ready for that. But, I'm in GMT - 5:00 or EST.

i wanted to reach the same goal, and through my research i discovered the first steps:

I'm gonna go with Disch's suggestion for now, but thanks.
Last edited on
Topic archived. No new replies allowed.