Programming Language for Game Development

  • (4 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »

57 Replies - 31938 Views - Last Post: 02 September 2013 - 12:39 PM Rate Topic: -----

#1 Soumikbhat  Icon User is offline

  • D.I.C Head

Reputation: 2
  • View blog
  • Posts: 74
  • Joined: 01-September 13

Programming Language for Game Development

Posted 01 September 2013 - 12:22 AM

Hello all, I'm thinking of starting on Game development. The fact is I am a beginner in programming, and am on to learning C/C++ extensively. I would like to learn Animation in the future for this project. But I require some very basic information on some aspects of Game Development, like, what are the programming languages that are used etc. I know Animation plays a huge part in these things, but specifically, what languages are exactly used in programming the games like, Age of Empires, EA Sports Games etc. ?
Any useful tips for absolute beginners in game-development would be appreciated.
Thanks.

Is This A Good Question/Topic? 0
  • +

Replies To: Programming Language for Game Development

#2 aaron1178  Icon User is offline

  • Dovakiin, Dragonborn
  • member icon

Reputation: 169
  • View blog
  • Posts: 1,308
  • Joined: 22-October 08

Re: Programming Language for Game Development

Posted 01 September 2013 - 12:41 AM

I don't mean to sound rude, but there are pinned topics at the top of this forum that you could have looked at, or even scrolled down a little. In saying that, this is your first post, so I will help you out as best I can.

C++ is the industry standard for making AAA games, and even smaller, lower budget games. You can use C++ with DirectX or OpenGL to create 2D or 3D games. Game development does take a long time, regardless of what you may think. There is also C# and XNA. XNA and C# are used in the development of XBox 360 games, and is somewhat easier for beginners.

I would suggest, that you learn C++ very well... I mean very well. Stick to the learning of this language, then focus on a graphics library such as DirectX or OpenGL.

If you stick with it long enough, and you are determined, you might actually make a game :)

I hope this helps.
Was This Post Helpful? 4
  • +
  • -

#3 Soumikbhat  Icon User is offline

  • D.I.C Head

Reputation: 2
  • View blog
  • Posts: 74
  • Joined: 01-September 13

Re: Programming Language for Game Development

Posted 01 September 2013 - 12:44 AM

Thanks a lot for the help. :)
Was This Post Helpful? 1
  • +
  • -

#4 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 2
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: Programming Language for Game Development

Posted 01 September 2013 - 06:56 AM

For the really big games you will find a combination of languages are used in their development, depending on platform. The ones most likely to be found (over all platforms) are:

1. C++.
2. C# (primarily for the tools).
3. A scripting language like Lua.
4. XML.

You want to get into animation that is a world of pain with the amount of knowledge and skill you must have. Good luck!
Was This Post Helpful? 1
  • +
  • -

#5 Java Student  Icon User is offline

  • D.I.C Regular
  • member icon

Reputation: 21
  • View blog
  • Posts: 498
  • Joined: 05-February 10

Re: Programming Language for Game Development

Posted 01 September 2013 - 08:35 AM

I'm by no means an expert or have been in the industry, but traditionally there has always been a C++ standard along with their own proprietary tools like libraries, API's, engines from large companies like EA Games. That's why its difficult find "what the pros use", because what they use isn't available to the public.
Was This Post Helpful? 0
  • +
  • -

#6 traxix  Icon User is offline

  • D.I.C Head

Reputation: 85
  • View blog
  • Posts: 117
  • Joined: 10-August 13

Re: Programming Language for Game Development

Posted 01 September 2013 - 09:26 AM

Best absolute beginner advice here:
If you're just learning programming and you want to make your own games, you are obviously not going to make AAA titles by yourself. Stay away from C++ and 3D programming! And as you're learning, go for C# with XNA. Then when you actually make a few 2D games you can start learning the fundamentals of 3D programming in XNA and after that you can learn some HLSL (I advise beginners to stay away from HLSL until you learn 3D programming), and THEN you can start learning C++ with DirectX and you will have a much better learning curve, or you can use Unity to develop games with C#, if you're more of a designer than a programmer.

If you are going to make games by yourself it is essential that you understand the time constraints and requirements of working by yourself, and choosing the right path to learning is important. There is so much to learn, and so much time can be wasted.

If your goal is to get a job in the gaming industry, then learning C++ and DirectX is absolutely necessary. However there is still a learning curve to get to them.

If you're more interested in taking my route, send me a PM, and I'll give you all the things(links) you need.

Cheers!
Was This Post Helpful? 0
  • +
  • -

#7 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 2
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: Programming Language for Game Development

Posted 01 September 2013 - 04:27 PM

View PostJava Student, on 01 September 2013 - 12:35 PM, said:

I'm by no means an expert or have been in the industry, but traditionally there has always been a C++ standard along with their own proprietary tools like libraries, API's, engines from large companies like EA Games. That's why its difficult find "what the pros use", because what they use isn't available to the public.

Not really clear what you mean, but the reason why people don't know is because studios want to keep what was exactly used a secret (that's why the developers sign non-disclosure agreements that legally bind them to secrecy for upwards of a year). When I say 'tools' in this instance I'm talking about pieces of software that play no part in the actual running of the game, like model importers and audio editors, etc. C/C++ is he core and most abundant language for most games because of the control it gives to write very efficient code specific to any given platform.

View Posttraxix, on 01 September 2013 - 01:26 PM, said:

Best absolute beginner advice here:
If you're just learning programming and you want to make your own games, you are obviously not going to make AAA titles by yourself. Stay away from C++ and 3D programming! And as you're learning, go for C# with XNA. Then when you actually make a few 2D games you can start learning the fundamentals of 3D programming in XNA and after that you can learn some HLSL (I advise beginners to stay away from HLSL until you learn 3D programming), and THEN you can start learning C++ with DirectX and you will have a much better learning curve, or you can use Unity to develop games with C#, if you're more of a designer than a programmer.

If you are going to make games by yourself it is essential that you understand the time constraints and requirements of working by yourself, and choosing the right path to learning is important. There is so much to learn, and so much time can be wasted.

If your goal is to get a job in the gaming industry, then learning C++ and DirectX is absolutely necessary. However there is still a learning curve to get to them.

If you're more interested in taking my route, send me a PM, and I'll give you all the things(links) you need.

Cheers!

You are assuming your path is suitable for everyone. I was once a total beginner who started out with C++ and OpenGL immediately. Don't assume your advice is the 'best advice'.
Was This Post Helpful? 0
  • +
  • -

#8 traxix  Icon User is offline

  • D.I.C Head

Reputation: 85
  • View blog
  • Posts: 117
  • Joined: 10-August 13

Re: Programming Language for Game Development

Posted 01 September 2013 - 05:17 PM

It's sure better advice than just: Learn C++, learn DirectX. Considering you're talking to an absolute beginner.

And sure if that worked out for you, but I wonder how much time you spent learning frustrating C++ and 3D programming code until you actually programmed a game? Hell, give me enough time, I will learn electrical engineering and I'll make a VR device, but this will be years after years of learning. But that's not the point. It's really about staying motivated, and frustration doesn't lead to it.

I started with C++ and I switched to C# in like 3 days. And it wasn't because I couldn't handle it, I can change from C# to C++ any time I want. But I saw that it was really counter productive and frustrating for beginners, and I wanted to actually be productive faster, and that way I learned better. I will have no problem in learning C++ with DirectX if I wanted to, now that I understand fundamentally how things work in OOP and 3D. Which was so easy to learn with C# and XNA!

If you go against that, you're basically saying it's better to learn Calculus before learning Basic Math.

Cheers!

This post has been edited by traxix: 01 September 2013 - 05:22 PM

Was This Post Helpful? 1
  • +
  • -

#9 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 2
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: Programming Language for Game Development

Posted 01 September 2013 - 05:49 PM

View Posttraxix, on 01 September 2013 - 09:17 PM, said:

And sure if that worked out for you, but I wonder how much time you spent learning frustrating C++ and 3D programming code until you actually programmed a game?

I already had 6 years non-professional C and around 2 years C++. From a standing start of not knowing graphics to my first 3D game was no more than a year. I spent about an hour or two daily getting up to speed. No questions were posted on forums either, I actually started helping out immediately with OpenGL when I only had something like 6 months' experience.

I'm not saying anything about learning calculus before basic math, I'm saying that people start off at different levels when developing games. It isn't the case that any one method is the 'best' as you seem to think it is - some people people can start off at a higher level of math before moving on to calculus, and they should be allowed to start at a level they are comfy with.

Even when I was starting out the route you suggested would not have suited me.
Was This Post Helpful? 0
  • +
  • -

#10 traxix  Icon User is offline

  • D.I.C Head

Reputation: 85
  • View blog
  • Posts: 117
  • Joined: 10-August 13

Re: Programming Language for Game Development

Posted 01 September 2013 - 06:03 PM

Absolute beginners don't start at in low level programming, but highest possible. Period. This is why my advice can be utilized by any beginner, and learn successfully if they want to, and get to understand lower level faster.

With C# I made my first game in XNA 10 days after starting to learn it (everyone knows how easy it is). And my first 3D game in XNA, about more than around a month. This is very motivating, and helps you learn so fast. I don't think you understand how education should work properly. When I was in high school, barely anyone could handle Trigonometry, yet Calculus. It's the same with programming. Barely anyone could handle Pascal (lol), yet C++.

It's easy to see it from a perspective when you already understand it, than recommending do someone who's an absolute beginner.
Was This Post Helpful? 0
  • +
  • -

#11 macosxnerd101  Icon User is online

  • Games, Graphs, and Auctions
  • member icon




Reputation: 12146
  • View blog
  • Posts: 45,156
  • Joined: 27-December 08

Re: Programming Language for Game Development

Posted 01 September 2013 - 06:29 PM

Quote

Absolute beginners don't start at in low level programming, but highest possible. Period. This is why my advice can be utilized by any beginner, and learn successfully if they want to, and get to understand lower level faster.

I'm not sure I completely agree with this. I think for middle-school kids wanting to do game development, something like Pygame or a drag-and-drop tool would be fairly appropriate. Much beyond that though, I think there is a balance between not killing people while not coddling them. For better or worse, a lot of people try and delve into programming to make games, thinking it will be easy. Programming isn't easy, and game programming is substantially more difficult.

I'm a big fan of having the expectation that one knows how to program before getting into games of any real complexity (well-beyond rock-paper-scissors, the guessing game, pong, etc.). Once people are at that point, I think it's fair to tell them what the higher quality tools are, as well as the learning curves that come with them. Some struggle is a good thing, as it means one is thinking and trying. If they aren't, then perhaps they're just not cut out for it. Plus, that's why we're here! Everyone was in that boat at one point, and we're here to give people the help they need.
Was This Post Helpful? 1
  • +
  • -

#12 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 2
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: Programming Language for Game Development

Posted 01 September 2013 - 07:32 PM

View Posttraxix, on 01 September 2013 - 10:03 PM, said:

Absolute beginners don't start at in low level programming, but highest possible. Period. This is why my advice can be utilized by any beginner, and learn successfully if they want to, and get to understand lower level faster.

With C# I made my first game in XNA 10 days after starting to learn it (everyone knows how easy it is). And my first 3D game in XNA, about more than around a month. This is very motivating, and helps you learn so fast. I don't think you understand how education should work properly. When I was in high school, barely anyone could handle Trigonometry, yet Calculus. It's the same with programming. Barely anyone could handle Pascal (lol), yet C++.

It's easy to see it from a perspective when you already understand it, than recommending do someone who's an absolute beginner.

And this is the reason why you are a beginner and likely to be for a while. I was after learning things thoroughly, and I knew from playing games like Quake III that OpenGL was used because of the system requirements, so I took the time to learn OpenGL from the ground up.

Giving yourself a pat on the back for developing a game where the tool did all the grunt work for you is no credit at all in my opinion. End of story.
Was This Post Helpful? 1
  • +
  • -

#13 BBeck  Icon User is offline

  • Here to help.
  • member icon


Reputation: 792
  • View blog
  • Posts: 1,886
  • Joined: 24-April 12

Re: Programming Language for Game Development

Posted 01 September 2013 - 08:55 PM

View PostButchDean, on 01 September 2013 - 06:27 PM, said:

You are assuming your path is suitable for everyone. I was once a total beginner who started out with C++ and OpenGL immediately. Don't assume your advice is the 'best advice'.


Not to give you a hard time, but OpenGL was 100 times easier back in the day when you started out. OpenGl 4.0 took a major leap forward.

For those who started out in OpenGL 2.0 or DX9, there was all kinds of stuff built into the fixed function pipeline that made it 100 times easier to understand everything. Now in OpenGL 4.0 or DX11 people tend to avoid them because there's such an enormous learning curve due to the fact that you immediately have to get into HLSL or GLSL, which is WAY beyond the capabilities of most beginners.

Basically, it has just gotten much more difficult since the days when we first got started.
Was This Post Helpful? 0
  • +
  • -

#14 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 2
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: Programming Language for Game Development

Posted 01 September 2013 - 09:18 PM

And not to give you a hard time, how did you work out that OpenGL was easier 'back then'?! That is a ridiculous proposition. The principles of OpenGL in terms of the graphics pipeline remain essentially the same, bar replacing the fixed-function pipeline with shaders. If you genuinely did proper research you would understand that shading languages were created to remove the complexities of the fixed-function pipeline.

For the record shading languages make development a lot easier - just try creating similar effects that would be compatible across not only a variety of platforms, but compatible with the specific chipset and driver versions.

Ridiculous.

This post has been edited by ButchDean: 01 September 2013 - 09:19 PM

Was This Post Helpful? 0
  • +
  • -

#15 BBeck  Icon User is offline

  • Here to help.
  • member icon


Reputation: 792
  • View blog
  • Posts: 1,886
  • Joined: 24-April 12

Re: Programming Language for Game Development

Posted 01 September 2013 - 09:30 PM

View PostButchDean, on 01 September 2013 - 11:18 PM, said:

And not to give you a hard time, how did you work out that OpenGL was easier 'back then'?! That is a ridiculous proposition. The principles of OpenGL in terms of the graphics pipeline remain essentially the same, bar replacing the fixed-function pipeline with shaders. If you genuinely did proper research you would understand that shading languages were created to remove the complexities of the fixed-function pipeline.

For the record shading languages make development a lot easier - just try creating similar effects that would be compatible across not only a variety of platforms, but compatible with the specific chipset and driver versions.

Ridiculous.



I totally disagree with you on that one. Shading languages are all but impossible unless you have a solid understanding of Linear Algebra which is generally taught after college calculus.

To expect someone that does not have a degree in mathematics, computer science engineering, or some other engineering degree to have the prerequisite knowledge is just laughable.

Granted, you can get there if you're self motivated enough, but I don't think you can expect people to be that capable of teaching themselves. And even if they are, it's going to take them the better part of a decade to acquire that information without a university or someone to teach it to them.

The whole issue is the replacement of the fixed function pipeline with shaders. Shaders did not simplify things at all. They extended the capabilities of what could be done, but they certainly did not make anything easier.

Before you could simply draw a sprite to the screen. Now you have to have a deep understanding of 3D graphics to even draw a simple 2D sprite to the screen.

Granted, it's impossible to create the effects of today with the fixed function pipeline that was available back then. Not just more difficult, but actually impossible. But for doing the basics, it's far more difficult in OpenGL 4.0 or DX11 because the fixed function pipeline is not there to do all that work for you; you're going to have to dig into shaders and do it the hard way from day one. Again, even a simple sprite requires a shader that is beyond the grasp of most people starting out.
Was This Post Helpful? 1
  • +
  • -

  • (4 Pages)
  • +
  • 1
  • 2
  • 3
  • Last »