Sign in to follow this  

C# FPS, where do I start?

This topic is 1398 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi All

 

This must be a real newbie question, but it may help others

 

Well I have good programming experience, I know C#, and I learn a little about OpenGL, and tried using OpenTK.  Now I would like to tackle developing my own FPS game.  But where do I start?

 

Tried searching for tutorials on this but it seems to be all for Unity (I would like to do this from bottom, up, so I can get a better understanding.  The idea is I would like to use the bear minimum software needed as possible)  I search the Game Dev forms, and leaned something about a Game loop. Sound like something similar to what I did in OpenGL.

 

I just want to get a handle on this thing, so I can get started and build, from there on.

 

My confusions are:

  • Can one infinite loop, control the whole game? (Menu, Loading, game play, etc..)?
  • If one can break up a game into components, what are they? (like a blue print I can follow, when designing and developing a game)

 

Enjoy

Devlyn

Edited by Devlyn

Share this post


Link to post
Share on other sites
As this is For Beginners, I suggest you start much simpler.

You mention that you are experienced in programming. With that I will hope you have done the first few simple games, like guess the number, tic-tac-toe, connect four, reversi, and other turn-based games that explore the basics of AI.

Usually the first fully-animated game that people make is a pong clone.

It demonstrates not only the main game loop, but also so many other features common in games. You will have graphics, audio, AI, basic physics and collision response, performance requirements for a smooth display, and much more.

Pong clones can be quite complex.

After pong, breakout is common since it reuses much of the same technology but adds all kinds of features like maps, power-ups, visual effects, levels, and other features. After that people tend to branch out, often with a falling block Tetris variant or a simple platformer.

A first person shooter is too ambitious if you are asking those questions about the game loop. Start smaller.

Share this post


Link to post
Share on other sites

The true definition of an infinite loop is one that never ends.  You don't want to write an infinite loop, you must break out of this at some point, say when the game ends or the player chooses to exit.

 

There is a article on this site about component architecture, and also several books that cover it in a chapter.  Such as Game Programming Gems 6 chapter 4.6 .

 

You really should start reading books on the subject of making games as all this will be explained within.  A good book about 2d ( which is a good place to start ) is SFML 2 game development, check my sig for the link.  If that's not what you want then search amazon for what you are looking for.

Edited by EddieV223

Share this post


Link to post
Share on other sites

To echo frob, if you're just learning about the game dev mechanics (ex; game loop), then making a 2 maybe 3 2D games isn't a bad idea. Once you get familiar with it, you can move on to 3D games.

 

However, if I was you, I'd brush up on my linear algebra. 3D programming uses it heavily. If you find yourself about ask about linear algebra or other necessary maths for 3D game programming, then I would strongly suggest you finished some 2D games first.

Share this post


Link to post
Share on other sites

It's in a different language from what you use, but this article about [url=http://lazyfoo.net/articles/article06/index.php]State Machines[/url] may be very interesting.  It explains how to structure your object design so that you can easily swap between things like menus and game levels.

Share this post


Link to post
Share on other sites

From what I see is that, just because you have programming experience, does not mean you can tackle a high-end 3D game.  You also need to build up game development experience, rolleyes.gif  if there is such a thing.  Maybe by starting out with games like tic-tac-toe.

 

Eddie, you right I am gonna start reading up more on it.

 

Alpha, your link to http://www.gamedev.net/page/resources/_/technical/game-programming/your-first-step-to-game-development-starts-here-r2976 I believe is a good place to start.

 

Thanks all for helping me to find my handle on this game development biggrin.png

Share this post


Link to post
Share on other sites
Sign in to follow this