Advertisement

Academic programmer wants to make a game

Started by May 22, 2015 04:56 PM
9 comments, last by RaijinKnight 9 years, 8 months ago

Okay. So, the golden question. How do I start programming a game? Googling hasn't lead to a lack of information, but rather a few tons of straw to hide the illusive needle, with no magnet inside. But to make this easier for you, and more likely that I will get an answer, I'm going to answer my own question, and have you guys fill in the blanks.

Want to program a game? Yes, yes I do.

Can you program? Yes, yes I can. I've done extensive academic programs in C++, matlab and several other such languages/formats.

So what info do I want?

To make a game, I see the following needs.

Input
I want the user to give input. I've never used custom imput methods, and as such, I have no idea how to make a block on screen, accept a user typing in a name, and then handling the click on a button.

Graphics

With regards to the previous item, how do I make that block appear on screen? How do I draw a background? What should I use? OpenGL?

Engine

I have a fairly basic idea of how to do this. Pretty sure I could figure out a suboptimal way to do this if no one has any tips for this. I see an engine as the actual core gameplay mechanics. The Dungeons and Dragons rule book turned into code.

Any help with any of these three items would be greatly appreciated. Thanks!

Welcome to gamedev!

I would suggest you first read the Beginner's FAQ (available on the Beginner's Forum page - right side, halfway down.)

With regard to user interface, graphics and engine, the FAQ makes some recommendations. Also, in general, and as recommended in the FAQ, your first step in getting information here on gamedev should be to search for answers to your questions, as it's likely the same questions have already been asked (perhaps hundreds of times). In the upper right-hand corner of most gamedev pages is a search box. Give it a try!

Please don't PM me with questions. Post them in the forums for everyone's benefit, and I can embarrass myself publicly.

You don't forget how to play when you grow old; you grow old when you forget how to play.

Advertisement

I did read the FAQ, apologies if my problem wasn't stated clearly. I do not want to use something like Game Maker or such. I can't find any answers to any of my questions in the FAQ as such. Also, I did search for answers to these questions. My problem is that usually these questions are answered in one of two styles. One, using something like game maker, which I do not want to do. Secondly, learn to program. However, again, I do not find this useful, as I already know the basics that people are pointed to.

But, as I mentioned, all search results give the same proverbial haystack, and I'm looking for the needle. So if indeed this question has been specifically asked and answered, apologies. But all I find are the "Use GameMaker" and "Learn basic programming" answers.

I'd say check out some OpenGL or DirectX tutorials and try to figure out what you can accomplish with them. You could also check out game engines but i guess you don't want to. Even though there're tons of things you can do as a programmer alone, there are some game genres where you'll need to cooperate with artists/designers to create a decent game. So once you're decent with graphics programming it'd be wise to join a team so that you can get things done faster.

I think SDL will low-level enough for you without you needing to do all the OS-specific stuff yourself.

http://www.libsdl.org/

Also, read this: http://web.archive.org/web/20051104034215/http://www.lupinegames.com/articles/path_to_dev.html

It might be the needle you're looking for.

I think, therefore I am. I think? - "George Carlin"
My Website: Indie Game Programming

My Twitter: https://twitter.com/indieprogram

My Book: http://amzn.com/1305076532

Not quite the needle, but it proved to be the magnet. Thanks! As the article said, I'm starting with Tetris. In and itself, not really useful, but (and this is the magnet) it lead me to http://www.gamedev.net/topic/192483-tetris-clone-in-an-hour-with-c/ which seems (here's to hoping) to be the proverbial needle. Thanks again Glass_Knife.

Advertisement


Thanks again Glass_Knife.

That's why we're here. To ease the pain. It's hard enough already.

I think, therefore I am. I think? - "George Carlin"
My Website: Indie Game Programming

My Twitter: https://twitter.com/indieprogram

My Book: http://amzn.com/1305076532

Before you discount Unity and lump it in with GameMaker, take a look at the unity webiste. Specfically the tutorial section:

http://unity3d.com/learn/tutorials/modules

You're not just dragging widgets around and using some proprietary scripting language. You can use C# and concentrate on the game logic instead of low-level frame work code.

If you want one more step closer to the metal, try OpenGL, DirectX, or SFML as was suggested before.

But seriously, watch a few tutorials from Unity before handwaving it away. :)

- Eck

EckTech Games - Games and Unity Assets I'm working on
Still Flying - My GameDev journal
The Shilwulf Dynasty - Campaign notes for my Rogue Trader RPG


Can you program? Yes, yes I can. I've done extensive academic programs in C++, matlab and several other such languages/formats.
So what info do I want?

To make a game, I see the following needs.

Input
I want the user to give input. I've never used custom imput methods, and as such, I have no idea how to make a block on screen, accept a user typing in a name, and then handling the click on a button.

Graphics
With regards to the previous item, how do I make that block appear on screen? How do I draw a background? What should I use? OpenGL?

Engine
I have a fairly basic idea of how to do this. Pretty sure I could figure out a suboptimal way to do this if no one has any tips for this. I see an engine as the actual core gameplay mechanics. The Dungeons and Dragons rule book turned into code.

Any help with any of these three items would be greatly appreciated. Thanks!

This site might be what you're looking for. It's a tutorial site that provides source code examples of how to handle graphics, input/output, and more using SDL2. Listed in an index, each tutorial focuses on a particular aspect of creating a graphical game (including collision detection and keyboard/mouse events).

I found this page from SDL2's migration guide particularly helpful, as it includes source code examples of how to perform various actions. happy.png Happy coding!

Academic programmer? I guess you mean CS graduate?

I'm sure you are intelligent enough to go low level directX11 and follow both these tutorials:

http://braynzarsoft.net/index.php?p=DX11Lessons

http://www.rastertek.com

It's what I did and I'm not actually a CS graduate. I'm entirely self-taught.

This topic is closed to new replies.

Advertisement