Sign in to follow this  
Checkmate_001

Where do I go beyond Graphics Programming?

Recommended Posts

Hello,

 

I have been programming for a few years now and started trying to make my first 3D game about a year ago. (and yes I have done 2D games before)

I started off with Direct3D and C++ using "Introduction to 3D Game Programming with DirectX 11" as it was recommended to me as "the bible". This book is - I must say - THE best resource I have found for 3D mathematics, even having baffled my teacher when I brought up some of the topics. I worked my way through the book getting pretty far into it (up to Chapter 16), but I started to realize that the book was only teaching me how to make very nice graphics and not a game.

 

With more research I looked into the book "Game Coding Complete, 4th Edition", which I find to be a very misleading title. I, however, did not get very far in this book but I did quickly realize it was very specific and not what I was looking for.

 

And so I have made my next attempt at Game programming with OpenGL and possibly Java (JOGL). I have bought "Beginning OpenGL Game Programming", with plans to look at NeHe resources after reading the book, and have been consolidating my C++ and Java knowledge. The question I beg of you to answer is am I going down the right path? And is there a resource In have looked over/ am missing?

 

I have also looked at this site, however old this particular article may be: http://www.gamefromscratch.com/post/2011/08/04/I-want-to-be-a-game-developer.aspx.

 

Thanks in Advanced,

 

P.S: If you have any questions you need to give a better answer, please do ask I would be extremely grateful.

 

Share this post


Link to post
Share on other sites

You start by saying that you are working on a game, yet the rest of your post is about engine development.

I suggest you start by reading the "Write Games, Not Engines" post (old, but still very relevant).

 

If you want to write a game, I suggest you pick a game engine off the shelf. There are numerous options - some proprietary like Unity, other open-source like Torque3D and Panda3D. By using an existing engine, you can spend more time on developing the game itself. There are other benefits like OS portability, engine robustness, existing resources, etc.

 

If you want to write an engine, Game Engine Architecture is a decent book. Writing a good game engine takes a lot of time, as modern engine contains a lot of components. It's not just graphics - you also need audio, networking, input, file services and many more.

 

You can decide that all you want to do is focus on the graphics engine (not to be confused with game engine) - that's a huge topic on its own.

You can decide that you want to focus on graphics programming (not to be confused with graphics engine) - another huge topic.

And the list of options is very long...

 

So - first decide what you really want to do. If it's making a game you are really after - than use an existing engine and make your game.

Edited by N.I.B.

Share this post


Link to post
Share on other sites


I have been programming for a few years now and started trying to make my first 3D game about a year ago. (and yes I have done 2D games before)

 

I'm not really sure what you're asking.  It sounds like you are having trouble making a 3D game, but if you have made 2D games, then the only difference will be the rendering, which is what the books you've mentioned cover.  Without a little more information, it is hard to know if you are on the "right track", which may not exist anyway.

 

Have you ever made a complete 2D game, polished, bug free, and fun, that other people have played?  If so, then what parts of integrating the 3D graphics is giving you trouble? If not, maybe spend some time trying the "game a week", or game-jam style, where you just keep making quick prototypes until you find something fun.  

 

My two cents...

Share this post


Link to post
Share on other sites

Hello and thank you for the quick reply.

 

I would in the long run want to build an engine, but I'm sure as a beginner an engine would not be the best starting point. Would jMonkey be a good starting point? Or is there something that I could extend based on my needs (LWJGL)?

 

If I do decide to start with an engine like jMonkey or Torque 3D, would I continue reading the books I've started or should I just look at the documentation and tutorials for the engine? What is the distinction between the graphics engine, and graphics programming?

 

Have you ever made a complete 2D game, polished, bug free, and fun, that other people have played? 

 

 In response to that, yes I have in HTML, CSS and JS (pong and snakes and I was working on a racing game), but I'm not sure if that counts. 

 

However, thanks to your reply I think that I will have a look at the GEA book and definitely try to start with Torque3D or jMonkey, if you think it is a good option.

Share this post


Link to post
Share on other sites
Hey Checkmate,

As I read your posts you are able to develop games in 2D and 3D and your programming isn't that bad.

One can have fun developing an engine, but there is (99.9% of times) no real need in developing a new engine. Do you really need a feature that no other engine out there can accomplish? You have to consider whether you really have to develop your own engine or if you can just start making games with what there is already available to you. You won't see huge progress in your game when you have to develop a new engine first. That is most of the time very demotivating and you will probably stop development, because at least for me its boring to develop everything from scratch. It is really nice to just call a few functions and have a circle rendered on the screen.

One advice I can really give you is to take part in some game jams (like ludum dare). Just develop some small games. Learn how to finish small, innovative games and just have fun. After that you may aim higer (maybe you found a team by that time you can develop with), but starting out with very big projects won't get you far (99.9% of times).

I hope I could help you a bit and as I said have fun making games not engines. ;)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this