Sign in to follow this  
Kahroo

C++, C#, or something else? Also some other questions

Recommended Posts

Kahroo    113
So I am new to programing and I would like to learn how to make my own game. But I am not sure what language to start with. What language do you suggest a total beginner to start with? Also which do you find easier to work with when trying to make a 3D game, Unity3D or XNA?

Thanks for the help, Kahroo

Share this post


Link to post
Share on other sites
kop0113    2453
XNA is a relatively low level API when compared to Unity. It is almost like comparing OpenGL to Unreal UDK.

I suggest C++, others suggest Python, Java, C# etc... So I guess you might want to simply start learning the language you intend to keep with or the one that the majority of libraries you intend to use natively support.

So, if you are most interested in making a game quick (perhaps to test out a new idea) then yeah, Unity and any of it's languages it uses (they all perform the same task).

However, if you have a passion for programming itself and are in no rush to knock up a game, then I would suggest starting with C++ and OpenGL (follow some books first).

Share this post


Link to post
Share on other sites
Kahroo    113
@Karsten_
I'm in no hurry to put out a game yet. I'd rather learn first then try to make my game. I would like it to look good too. Also do you have and recommendations for any C++/OpenGL Books. And wouldn't learning DirectX be better then OpenGL? Don't most games use that more?

Share this post


Link to post
Share on other sites
Poigahn    598

For Books try "Learn C++ through game programming"  No Graphics, All text.  But would get you a good start on C++

 

Then there is 3D Game programming Complete.  Uses a C++ off shoot called Torgue.  But introduces you to the elements of 3D

Share this post


Link to post
Share on other sites
kop0113    2453
recommendations for any C++/OpenGL Books. And wouldn't learning DirectX be better then OpenGL? Don't most games use that more?

Only in AAA titles (due to heavy marketing by Microsoft). Remember that DirectX is not portable to iPhone, Android, Linux... etc (or anything but Microsoft based platforms)

As for books, the best I know is the OpenGL Programming Guide.

Share this post


Link to post
Share on other sites
3Ddreamer    3826

Hi,

 

First, a total newbie should write a few simple programs before programming any game.  Make "Hello World", simple data base, easy letter display application, or other programs, but keep them very simple.  These should be made as console applications, which can be done in practically any language.

 

Languages most friendly for newbies are Python, Lua, C#, Perl, Ruby, and some other common ones - mostly scripting languages.  Look for auto-memory management language (unmanaged) for your first one, such as C#. After you have made some simple applications, then you are ready to start programming a game.  Make simple games before you touch a complex IDE or SDK.

 

Avoid the lower level programming in the beginning of your learning, a must if you want to make the most progress in the first few stages of your growth.  You should be focused on programming basics and game structure first and not a publishable game.  Don't try to make that popular game for a year or maybe two.

 

Game examples for beginner level - make several of them:

 

Crossword puzzle

Tic-Tac-Toe

Pong

Tetris

Pac Man

Defender

Asteroids

Mario Brothers

 

...or other simple 2D game imitations...

 

Make each one well before moving to the next, polishing it and maybe adding some art assets, game functionality, or U.I. complexity with each version.  This will get you into the habit of completing projects according to a Software Development Cycle.

 

If you want to create nice games either as a hobby or a profession, you must have good fundamentals at all times just like any other major profession in life like sports or business.  Sorry, no shortcuts are recommended by me in the early months, year or two, but make sure that you are making real progress with visible and satisfying results.  This is why I advise that you stay involved with game programming communities forever to help you do that.

 

Give it a minimum of about a year with 2D games before you start 3D game development, in my opinion.

 

 

Share this post


Link to post
Share on other sites
3Ddreamer    3826

The real question is, what are the things which scripting languages have which streamline the learning for the beginner?  We recommend unmanaged, interpreted, (at least first stage of learning), and fewer choices/options than C++ has to enable a more orderly and less confusing path of learning.  

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