• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
Brick

Most Widely Used Programming Language (for games)

45 posts in this topic

Why do you presume I was talking about you?

My statement stands: most people who like C++ don't know any better.

There are occasional people who like C++ and do have wide experience, which is fine. Some people also like having hot wax poured on their genitals. To each his own, but don't ask me to participate with a smile on my face ;-)
0

Share this post


Link to post
Share on other sites

The sad truth is C++ has many benefits when compared to many other languages and we are sort of "forced" to use it if we want to have fast programs that can run on any hardware and we know will still be around in 20+ years. I would love if C# ruled the world myself, but sadly it doesn't.

Edited by rpiller
1

Share this post


Link to post
Share on other sites

I don't believe any language is truly superior to the other. That's unless, you start talking about targeted platforms and design paradigms. This is because you're also now talking about frameworks. The biggest void I find in debates like this is the confusion between what works better versus what is more convenient, practical and cost efficient to code with.  With that said, I completely agree with ApochPiQ. People who like C++ typically are the ones lacking experience in other languages and development paradigms. 

 

Moving to something more personal, I would favor Java. With so much mobility, I feel that .NET and the JVM rain dominant as a mobile developmental option. However, Java is free, as is learning it and having access to all Java SE APIs. Also, Java is practically the preferred language for developing standard programs on the Android OS as their are not one, but two very powerful APIs for it (Oracle's Java ME and Google's Android SDK). If Java had a 3D framework that was by far more competitively scalable, economically efficient, simpler, and maintainable, there would be a lot more threads about gaming in Java in comparison to C#. Think about it: Java has it's roots well planted in network scalability and mobility, while C# has it's roots well planted in mobile presentation. They both can perform just as good as their counterpart, but Java lacks in presentation. That's why when you compare game engines like Unity versus jMonkey, it doesn't take much to figure out that Unity looks a hell of a lot nicer. However, start talking about business logic with Apache Hadoop, Oracle Weblogic, IBM Websphere, what ever SAP uses, or the Android SDK, and you pretty much talking about Java.

0

Share this post


Link to post
Share on other sites
Most commonly used language for games ... i would say c++. Yes it's hard to use and has problems, even its creator admits that but it doesn't change the fact that even if it can make you want to shoot your foot, many companies still use it fort their games.
Comparing the language used in most games you've spent your money buying and you should see that c++ was used in someway.
You saying that c++ is used by those who don't know any better sounds like either you've never used the language or you couldn't learn it or you were looking for something easier.
Looking at the name of this thread sounds like the op knows the answer but is looking for doubt to feel his mind (kinda like what i did when ... ).
-1

Share this post


Link to post
Share on other sites


The part of C++ that I feel makes that language shine is it's ability to be a low level, mid level and high level programming language

 

But we're talking about video games and I don't believe the reason you listed is why it's used in most (maybe just most AAA) video games. I was trying to list why most video games use it.

 

 

However, start talking about business logic with Apache Hadoop, Oracle Weblogic, IBM Websphere, what ever SAP uses, or the Android SDK, and you pretty much talking about Java.

 

I think business uses Java because

 

A) It came first as the write once run everywhere, which is what all these businesses were looking for, so when they got it they all jumped on it

B) It actually directly supports other OS's where MS doesn't directly write it's VM for other OS's (which I think they are missing the mark on personally)

 

The company I work for favors .NET but we have many of the apps that you speak of. I don't mind the Java language but I think the slow startup for Java just kills it for me. That's just my opinion through my experience though.

0

Share this post


Link to post
Share on other sites

Why do you presume I was talking about you?

My statement stands: most people who like C++ don't know any better.

There are occasional people who like C++ and do have wide experience, which is fine. Some people also like having hot wax poured on their genitals. To each his own, but don't ask me to participate with a smile on my face ;-)

 

Your statement does not stand, and is extremely judgemental.  C++ is a great language with many strengths that make it a great choice (and sometimes the best choice) for a wide variety of projects, and there are many great programmers who enjoy using it, some of which I work with every day.  Of course it has weaknesses too, but so does everything man-made.  You can say the reason I like C++ is because I don't know it, and I'd respond by saying the more I learn about C++, the more I do like it.  And no, I don't like having hot wax poured on my genitals tongue.png .

 

 

People who like C++ typically are the ones lacking experience in other languages and development paradigms.

 

Translation: "It is a fact that what I don't like is terrible, and everyone who likes what I don't like is stupid".

Edited by metsfan
0

Share this post


Link to post
Share on other sites


People who like C++ typically are the ones lacking experience in other languages and development paradigms.


Translation: "It is a fact that what I don't like is terrible, and everyone who likes what I don't like is stupid".

Perfect :)
0

Share this post


Link to post
Share on other sites

 

 

After 2 years of consecutive C++ the other languages (except ASM) are extremely easy to understand.
So go with C++.

 
... and it'll only be another 8 years or so, until you start to understand C++! tongue.png

 

I learned C++ in under 2 years, and it was my first programming language tongue.png

 

 

Heh, how much do you really know it, though?  I use C++ and have for about a decade, but on a general scale of knowledge of C++, there are still corners I rarely touch.

2

Share this post


Link to post
Share on other sites

After 2 years of consecutive C++ the other languages (except ASM) are extremely easy to understand.
So go with C++.

 
... and it'll only be another 8 years or so, until you start to understand C++! tongue.png

I learned C++ in under 2 years, and it was my first programming language tongue.png

 
Heh, how much do you really know it, though?  I use C++ and have for about a decade, but on a general scale of knowledge of C++, there are still corners I rarely touch.

I'd say I'm about intermediate-advanced, however, people from Digipen have to learn it within one year, and then do a whole game project for the next few years. Edited by Solid_Spy
0

Share this post


Link to post
Share on other sites

There are of course many who keep telling everybody at games development conferences that the future of games is going to be JavaScript and HTML5.

Yeah... And IBM didn't impose the requirement that lead to the myth of Bill Gates quoting that no one would come close to using more than 640kb of memory in the DOS age. [http://en.wikiquote.org/wiki/Talk:Bill_Gates]. Yet, here we are again confining one of the most fastest growing technologies in a web browser and calling it the future. No punts directed at you Buster2000 as I've hard this too.

 

Let me tell you what will happen with this future of HTML5 and JavaScript:

 

1) User credentials will be heavily vulnerable to 3rd party interceptions. 

2) Customer support will have no clear scope of support because the game is in a browser that doesn't belong to the developing company.

3) Confusion of responsibility for some issues (browser development or game development).

3) Changes to web browsers via updates (and their are many of them) may inject compatibility conflicts, resulting in higher maintenance costs.

4) Web Browsers will increase the need for minimal specifications, reducing sale volumes.

5) A potential of reaching a maximum specification scope defined by a web browser.

 

In HTML5/Javascript, all a web browser does is provide a very inefficient way to get around either .NET or the JVM to make use of WebGL and other associated frameworks. It's practically like making a game inside a pipe. Unlike .NET or the JVM, you can't exceed the support limits of a web browser. If you do, you'll crash the browser along with your game.

 

And since a web browser is also used for practically everything else, you'll be running into tool bar conflicts, plug in conflicts, spyware, viruses, antivirus conflicts, etc... There's just way too much liability for any serious financial investment.

 

 

 

 

SIDE NOTE: Thanks TheChubu for the clarification on Bill Gates.

Edited by Subtle_Wonders
1

Share this post


Link to post
Share on other sites

 

 

 

 

After 2 years of consecutive C++ the other languages (except ASM) are extremely easy to understand.
So go with C++.

 
... and it'll only be another 8 years or so, until you start to understand C++! tongue.png

 

I learned C++ in under 2 years, and it was my first programming language tongue.png

 

 
Heh, how much do you really know it, though?  I use C++ and have for about a decade, but on a general scale of knowledge of C++, there are still corners I rarely touch.

 

I'd say I'm about intermediate-advanced, however, people from Digipen have to learn it within one year, and then do a whole game project for the next few years.

 

 

Very few digipen graduates actually know C++ when they graduate though. heck, very few professional programmers really know C++, i made my first proper game using C++ and OpenGL 13-14 years ago (When i was 16-17,i had allready made a few simpler games using Basic, Pascal and x86 assembly) and back then i considered myself to be on the intermediate->advanced level, i was a programming god in my own mind biggrin.png

Today after having spent several more years using C++, going to university, working as a professional programmer and using over 15 other languages i'd consider myself to be on the intermediate level at best and i know that the 16-17 year old me really was a clueless beginner.

 

I still use C++ alot since i enjoy writing low level code and that doesn't leave all that many options but for real work it is never my first choice. If there was a better language that covered the full low->high level range that had the same level of compiler and library support as C++ i would ditch C++ completely without hesitation.

 

Oh, and i would claim that x86 assembly is easier to learn than C++ (it is far more painful to use and harder to read but easier to learn since it is very straight forward and reasonably consistent)

Edited by SimonForsman
2

Share this post


Link to post
Share on other sites

 

There are of course many who keep telling everybody at games development conferences that the future of games is going to be JavaScript and HTML5.

Yeah... And Bill Gates also conveyed that no one would come close to using more than 640kb of memory in the DOS age

http://www.computerworld.com/s/article/9101699/The_640K_quote_won_t_go_away_but_did_Gates_really_say_it_

 

In other words: [citation please]

0

Share this post


Link to post
Share on other sites

Yeah, I went to digiPen, and trust me, lots of folks there programmed in C++, but ranged in skill levels from barely able to code to incredibly competent.  But I'd still peg very few of them as knowing all of C++.  It's kind of like how everyone knows how to drive a car, but not everyone knows how to race an F1 car.

 

They've had lots and lots of very, very knowledgeable instructors though.

Edited by ferrous
0

Share this post


Link to post
Share on other sites

C++ is without a doubt one of the worst languages ever created.

 

Duplicate functionality:  Should I use puts or std::cout, printf or std::putf?  FILE or fstreams?  0, NULL, nullptr, or std::nullptr_t?  C-style cast, dynamic_cast, static_cast, reinterpret_cast, or const_cast?  If a language has duplicate standard library features, 4 different ways to express null, and 5 different ways of casting, then it was poorly designed.

 

Pitiful OOP: No base Object, multiple inheritance, getters/setters are not automatically generated, class declarations force developers (unless PIMPL is used) to expose private methods and variables in the public header, no way of "opening" or extending an existing class (except via inheritance).  Its minor, but having to prefix every member function implementation with ClassName:: is lame - instead one should be able to wrap all the member functions with a ClassName { } block like with a namespace.

 

Over-complex Grammar: It is fact that the language grammar is not context free - it requires arbitrary lookahead.  If you, as a language designer, have designed a grammar so complicated that it can't be parsed using standard parsers, your have failed.

 

Community: C++ means different things to different people: Is it procedural, OO, functional, or something else?  Low level or high level?  Is the code still C++ if you use malloc instead of new?  The answer to all those questions is Yes.  I can't tell you how often I've seen, "That's not C++ that's C with Class".  C++ means too many things to too many developers.  If you, as a language designer, have designed a language so complex that it causes as much community division as C++ has, then you have failed.

 

In addition, the C++ community seems to have a bad case of Not Invented Here syndrome.  I've seen more reinventing within the C++ community than I have any other.  If you, as a language designer, have designed a language were many developers choose to reinvent their own (for example) string class (whether it be QString, Ogre::String, irr::core::string, etc...) rather than using the standard string, you have failed at some level.

 

Many problems with C++ are simply a result of features not being well thought-out the first time.  For example, nullptr (a new feature in C++11), was added to fix an edge case with function overloading.  If said feature had been well thought-out the first time, it wouldn't need a work-around later.  There is no question that C++11 will introduce problems yet to be realized but will be undoubtedly "fixed" in the next C++ revision.

 

The C++ community isn't critical enough of the language.  For example, one of the biggest complaints about D1 was how it had 2 standard libraries, Tango and Phobos.  But, by contrast, how often do you hear devs complain about all the duplicate functionality C++ has?  How often do you hear them say how lacking the OO features are?  Instead, C++ purists grumble to themselves and develop idioms and "design patterns" to work around said deficiency - hence you get things like PIMPL.  A language can't get better unless the community is willing to be critical of it.

 

If you want an object oriented C done right, learn Objective-C.

 

To the OP: Use the language you feel comfortable with.  Any touring complete language can be used for game development.  If you want to get into the nitty gritty, I'd recommend C with SDL.  If you want something higher level, I'd recommend Lua with Love2d.

 

I know some people are suggesting C++, but I'd shy away from it unless your really dying to work in the game industry.  Also, don't confuse C for C++, people often lump them together (even writing them as C/C++ in various message boards), but they are very different languages.  Unlike C++, C is small, simple, and focused.  In terms of community, it doesn't suffer anywhere near the level C++ does, e.g. NIH syndrome, bickering over proper language subset, and over-designed solutions are not a problem with the C community in my experience.

Edited by scarypajamas
1

Share this post


Link to post
Share on other sites

 

 

I know some people are suggesting C++, but I'd shy away from it unless your really dying to work in the game industry.  Also, don't confuse C for C++, people often lump them together (even writing them as C/C++ in various message boards), but they are very different languages.  Unlike C++, C is small, simple, and focused.  In terms of community, it doesn't suffer anywhere near the level C++ does, e.g. NIH syndrome, bickering over proper language subset, and over-designed solutions are not a problem with the C community in my experience.

 

Well said. In fact, if I need to use native code rather than my traditional C# -- I move all the way to C and skip the C++ step.

1

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  
Followers 0