Jump to content
  • Advertisement
Sign in to follow this  
DaryKiri

How to start on game programming properly

This topic is 1119 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

I'm on my second year of Computer scientist I have learnt about Java and C++ and now I'm learning Data Structures, Algorithm designs such as Divide and conquer and I'm learning functional programming using Haskell. Also I have seen that on the third year of my career I can chose optional subjects like AI for games and game programming but I want to tackle game programming in my free times. The problem is where do I start? I want to code, I have learnt a little about GUI's using Swing in Java but I have seen that I can use JavaFX for simple 2D games. And what programming languaje should I stick to? My university uses Java a lot so I think I should use Java but I have seen a lot of complains about Java and that C++ or C# is better.

I'm so confused I know that I can make games with engines like Game maker but I don't want to drag and drop things I want to code. Is it recommended to go bottom-up developing a simple game? Or should I use any API?.

 

Sorry for my bad english, english is not my main languaje.

Share this post


Link to post
Share on other sites
Advertisement

Can you make pong?

 

If yes, then move onto 2D platformers.

 

If you use java, you can use something like java3d or jogl.

 

You won't make anything that closely resembles a fully featured game for some time. Don't sweat it.

Share this post


Link to post
Share on other sites
Most of the more serious game engines out there require some level of programming (Unity 3D, Cryengine, UE4...) hell, even Ren'Py requires it, although I guess you would rather call that scripting, but you can actually do some programming in it (like creating an RPG framework within it, I remember this one guy makinga dungeon crawler system, really cool, he made some cool games too, he was called nyaatrap or something like that) but are you sure you want to use somebody elses game engine rather than make your own? I remember one particular favorite of mine was haxeflixel, because it supported all the major platforms natively, and for those it didn't support it also supported being compiled into flash format. Just to be sure. It looks like a nice game engine for someone like you too, since it's mostly aimed at simple and 2D games, but requires quite a bit of programming skills in order to be used effectively. And just as Gl2eenDl2agon said, you're not gonna be making a full featured 3D game anytime soon, 2D however... a lot easier (but still challenging as hell!)

Share this post


Link to post
Share on other sites
The problem is where do I start? I want to code, I have learnt a little about GUI's using Swing in Java but I have seen that I can use JavaFX for simple 2D games. And what programming languaje should I stick to? My university uses Java a lot so I think I should use Java but I have seen a lot of complains about Java and that C++ or C# is better.

I'm so confused I know that I can make games with engines like Game maker but I don't want to drag and drop things I want to code. Is it recommended to go bottom-up developing a simple game? Or should I use any API?.

It seems you have a good foundation in programming language knowledge, as well as some programming, so as you say, the next step is to write programs. Basically, just start anywhere, write small game programs first, like pong, tetris, 15-puzzle, and slowly scale up towards more complicated games.

 

Any of Java, C++ or C# is fine, I'd recommend using the one you're most comfortable with, since you don't need the problems of finding out how a new language works while coding a game for the first time.

 

However, in time, do have a look at the other languages too. C# is quite close to Java, C++ is more different. I don't know about worse or better. People argue all the time X is better than Y, for Z reason. I believe it's much better to find out by yourself, so you can have an informed opinion ;)

You become a better programmer by understanding several languages.

 

Using an API or starting from scratch can both be done, what suits you depends on your goal. If you aim to make games, a framework/api will be better, as these things are designed to help you in that. It does cost time to understand such apis though. If you aim to get a firm grasp of understanding from the bottom up, starting at the bottom is ok too. Do mind that there is a LOT of boring bottom stuff in general, which takes time too.

 

Edit: As Java api, you can have a look at libgdx, unreal uses c++, and unity uses C#. I have not used any of these engines though, so maybe there are other/better ones.

Edited by Alberth

Share this post


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

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!