Skip to main content
3 answers
3
Updated 4094 views

What is currently the best programming language for designing videogames?

I'm in high school and really interested in game design. I'm just a little curious to know what language is the best or most used. #programming #video-games #computer-programming

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you

3

3 answers


3
Updated
Share a link to this answer
Share a link to this answer

Eric’s Answer

Best of the Village

No one language is "best," to start with. Trying to get people to pin down which one is best will easily lead you into useless arguments.


There are languages that are good for certain things, but even "videogames" is broad enough that there are multiple possible answers.


If you want to make Android apps, use Java (very high-performance games use C/C++, but I wouldn't recommend starting with that, it is much harder).


If you want to make iOS apps, use Objective C or Swift.


If you want to make Web games, which may be able to run on Android and iOS as well as desktop browsers, you'll have to use HTML for the layout, and the language powering it would probably be JavaScript (you might be able to use Dart, but it's newer and there's probably more help around on the Internet for JavaScript)


If you want to make games that run on desktop or laptop computers, then you have a lot more options. Many games are written in C/C++, though they are complicated. Python is an option, with the library pygame (though it is getting older and I'm not sure if it still a good option).


I haven't done any programming for consoles like the XBox or PlayStation series, but I believe they often use variations on C/C++.


My personal favorite at the moment is writing Web games with HTML and JavaScript. While they are slower than "native" games (the ones using languages for their specific targets, like Java for Android), they have a reasonable chance of running on a larger number of devices. In particular, being able to write and test out your game on a desktop computer, and then show it off on smartphones and tablets, is really cool (though you have to make sure the controls adapt to a touch screen instead of keyboard and mouse).


In addition to choosing a language, you will have to figure out how you are going to actually write the pieces of the game. This usually involves one or more "libraries," which are pieces of code other people have written that give you tools to do important things like draw pictures on the screen or advance the player from one level to the next. Each language will have its own sets of libraries, so you'll have to find ones that do what you want.


Sometimes libraries are called "frameworks", that specify what they are for. So, when I want to make a Web game, I look for JavaScript game frameworks. It is valuable, as you learn over time, to learn the basics, and how you would do things like draw individual pixels to the screen, how to use static pixels to create the illusion of movement, and so on, and a framework can hide this from you, so do be careful with them. Still, for any large-scale game, you probably won't want to write all of the logic yourself, so these come in very handy.


If you're interested in JavaScript for games, I recommend starting, depending on your programming level, with codeacademy.com as an introduction, and the Mozilla Developer Network, developer.mozilla.com, to learn enough HTML (HTML5, to be specific), CSS, and JavaScript so you can start to search the Web for game writing tutorials and pick out ones that you like.

Thank you comment icon Well said. To reinforce what you said and to provide my own thoughts, I just want to say that learning programming languages is no where near as important as learning programming concepts. I would highly recommend starting with a user friendly language and using that start learning programming concepts. You don't need to worry about picking up the best language right away. Eventually you can learn other languages and pretty soon you'll realize that you can pick up any language you want relatively quickly. So learning the right language is not as important. Coding concepts, however, take a lifetime to master and it is best to start learning those early so that you can write clean and efficient code. Kenneth Smith
Thank you comment icon Thank you for also answering my question! Alex
3
0
Updated
Share a link to this answer
Share a link to this answer

Mike’s Answer

To echo Eric's point, there is no end all best language to use. Each language has their pros and cons and a lot of the time you are restricted to using a specific language for a specific platform like Java on Android and Objective-C on iOS.


One trend I see happening in the games industry at least on mobile, is the use of languages that can be deployed on many platforms. Arguably the most popular tool for this right now is Unity (https://unity3d.com/unity). It is free to download and play with, and it is incredibly powerful. Most importantly it can be deployed to a ridiculous amount of platforms; iOS, Android, Xbox, PS3, PS4, Oculus Rift. I recommend any aspiring game developer with a basic understanding of programming to download it and play around.

0
0
Updated
Share a link to this answer
Share a link to this answer

Rajesh Kumar’s Answer

When it comes to designing video games, there isn't a single "best" programming language that fits all scenarios. The choice of programming language depends on various factors, such as the type of game, target platforms, personal preferences, and the game development tools you plan to use. However, here are a few popular programming languages commonly used in game development:

C++: This language is widely used in the game industry due to its performance and flexibility. It allows for low-level control and optimization, making it suitable for large-scale game development.

C#: C# is a versatile language used in game development with the Unity game engine. Unity is a popular choice for creating 2D and 3D games across different platforms, including PC, consoles, and mobile devices.

JavaScript: JavaScript is commonly used for web-based games or browser games. It is supported by HTML5 and can be used with game development frameworks like Phaser or Pixi.js.

Python: Python is known for its simplicity and readability, making it a good choice for beginners. It can be used with game development libraries like Pygame or Godot Engine.

Lua: Lua is often used as a scripting language in game engines such as Corona SDK or Love2D. It offers ease of use and is suitable for smaller-scale games.

Remember that the choice of programming language will vary depending on your goals and the specific requirements of your game project. It's also worth considering the game development tools and engines available for each language. Exploring these languages and their associated tools will provide you with a better understanding of which one aligns best with your needs and preferences

When developing games for iOS and Android platforms, there are specific programming languages and tools commonly used:

Swift: Swift is the primary programming language for developing iOS applications. It is powerful, modern, and designed specifically for iOS and macOS development. Using Swift, you can create games for iPhones, iPads, and other Apple devices.

Objective-C: While Swift has become the preferred language for iOS development, Objective-C is still used in some legacy projects. It's worth noting that learning Objective-C can provide a deeper understanding of iOS development.

Java/Kotlin: For Android game development, Java has traditionally been the primary programming language. However, Kotlin has gained popularity as a modern and more concise alternative. Both languages are used to create games for Android smartphones, tablets, and other devices.

Unity and Unreal Engine: Unity and Unreal Engine are powerful game engines that support multi-platform game development, including iOS and Android. With these engines, you can write game logic using C# (Unity) or C++ (Unreal Engine) and deploy your games to multiple platforms.

Cocos2d-x: Cocos2d-x is an open-source game development framework that supports iOS and Android platforms. It is based on C++ and provides a range of features and tools to create cross-platform games.

Remember, when targeting iOS and Android platforms, it's important to consider the specific requirements and guidelines of each platform. Additionally, using game development frameworks or engines can simplify the development process and provide built-in tools for multi-platform deployment.
0