According to glassdoor, Game developers make between $42,000 and $80,000 a year with the average base pay being $50,923 a year. Larger studios such as LucasFilms and Sony appear to pay in the higher range between $80,000 and $120,000 a year. The vast majority of Game Developer jobs fall into medium size shops that work with major studios or produce smaller titles. A larger proportion of these jobs are stationed on the US’s west coast where the cost of living is higher than some of the smaller cities along the east coast.
If your goal is to become a game developer, then there are many pathways to get there. Some pathways come with built in backup plans, e.g. C# developer, just in case you find yourself in a different place a few years down the road. Others are more specific to game development, e.g., game designer. Additionally, each of these roles can lead to very different potential salaries.
Game programmers come in a variety of flavors. These differences come from the language and tools they develop with, often referred to as software stack. A programmer may be more familiar with using Unreal Engine and C++ or C# and Unity. If a company is utilizing Unreal Engine to build their games, then it is possible they hire someone that only has experience with C# and Unity, but they are more likely to prefer someone who has C++ experience.
The benefit of learning a programming language while learning to make games or in pursuit of a game development career, is that the skill is transferable. You can take the skill outside of the games industry and still be employable. Or you could change roles within the company, from game programmer to building out backend systems for connected web and mobile apps for instance. Many roles can utilize the programmatic thinking that you develop as a programmer.
Once again, Glassdoor lists C++ developers as earning around $77,000 in the United States. C++ Game Programmers are most associated with the use of Unreal Engine, CryEngine, and Gadot. If you are just starting out learning C++ and Unreal Engine, it is recommended that you spend some time learning how C++ is used outside of the engine. This ensures that you understand the programming language instead of just learning the game engine.
The primary tool you will need for working with C++ is an IDE (integrated development environment) or code editor.
Rider is a feature rich editor created by JetBrains. The main selling point for this editor is the ability to run everything from code testing to refactoring to debugging right in the editor. All of these features come at a high price of $139.00 for the first year. This might be a little much if you are just starting out. Luckily, it is free for students and teachers. So, if you fall into one of those categories or are an experienced developer then Rider might be the right choice for you.
This is a lightweight code editor that is easily extendable through the use of the extension market. Here you can find almost any modification to the editor to suit your development needs. This versatile tool is absolutely free, making it a top choice for many programmers.
Eclipse is an open-source IDE mainly know for its popularity with Java. They also offer a popular version built specifically for C++. This makes it a great alternative to paid IDE’s while being more powerful than basic code editors.
W3Schools C++ tutorials offer a great starting point for beginners or a refresher for more experienced developers.
If you are looking for more hands-on tutorials check out the C++ tutorials by Learn-CPP.
There are tons of subreddits dedicated to game development but if you want a place to ask C++ specific code questions check out the Learn C++ subreddit.
freeCodeCamp.org is a great place to start learning code fundamentals and they offer tutorials and write ups on a ton of C++ related content.
If you are looking for books to pick up, then the number one offering for any programming language is Game Programming Patterns. Learning design patterns will allow you to solve seemingly complex problems that are common to all game development. Implementing these patterns saves you time and keeps you from beating your head against the wall.
The average base pay for a C# developer is around $69,000 according to Glassdoor estimates. C# game developers will most likely be using the Unity game engine but there are a few other popular choices out there such as Gadot or CryEngine. If you are self-taught, this has the same pitfalls as learning C++ with Unreal. Make sure to building core fundamentals when programming or you are likely to learn some bad habits or be learning Unity programming instead of C# programming.
Rider makes an appearance again when looking at the top IDE’s for C#. This is the exact same IDE so if you program in both C# and C++ you will only need this one editor and the cost stays the same at $139 for the first year or free for students and teachers.
Visual Studio Community is a free full featured IDE created by the same people behind VSCode. This is a great alternative to the paid C# IDE’s that are available while providing more power than simple code editors.
VSCode’s extensions once again make this a great option for developing with C#. You can even find some plugins to aid in the development of Unity games.
This is another open-source IDE available for C#.
W3Schools offers a great introduction to the key concepts behind C#.
LearnCS again has a ton of hands-on tutorials that allow you to solve code challenges around C#.
TutorialsPoint is another great resource for understanding and practicing the fundamentals of the language.
For a place to ask questions and get programming advice check out the C# subreddit.
A great starter book for C# is O’Reilly’s Head First C#. Check it out to learn the fundamentals of the language.
Game Programming Patterns is again a fundamental book for any game programmer.
Python developers make around an average of $77,000 a year. If you are a python game developer you are most likely using an engine like Cocos2D, Panda3D, Arcade, or Pygame. The benefit of developing with python is that you are more likely to be learning a lot more of the base language while creating your games. Python is also extremely useful for building automations for things like smart home devices or creating backups of your workstation.
JetBrains makes another appearance on the IDE list. This time with their python editor. PyCharm is another yearly cost editor but comes packed with features. It will run you $89 for the first year but is again free for students and teachers.
VSCode offers a ton of extensions specifically for python, making it, once again, a solid choice for a free editor.
Atom is an open-source editor created by the people at GitHub. It is extremely similar to VSCode in that you can extend its functionality through the use of packages. It is hard to argue for one or the other but if you are a fan of open-source projects then Atom is definitely worth checking out.
freeCodeCamp offers a machine learning, data analysis, and scientific computing certificate all based in python.
The official python site offers a comprehensive set of tutorials and documentation on the language perfectly suitable for beginners.
LearnPython offers interactive tutorials and the chance to practice what you learn.
Another free web book offering is Automate the Boring Stuff with Python – Practical Programming for Total Beginners. This is a great resource for moving repetitive tasks to code. If you want a copy of the book for your shelf or kindle library, you can purchase Automate the Boring Stuff on Amazon.
Again, Game Programming Patterns. Cannot recommend learning patterns enough, as they will save you time.
Java developers are averaging $79,000 a year salary. If you are developing games with Java, you are most likely using JMonkeyEngine or a game development framework such as LibGDX or LWJGL. One of the world’s most popular games, Minecraft, was created with Java. Learning game development with Java can also lead you down the path of mobile app development. The Android operating system is famously built on Java and you can use it to create the applications that run on it.
As mentioned above, Eclipse is one of the most popular editors for writing Java. It is a full featured IDE that is open source. Run your code, debug, set up code testing, and more all from one program.
I bet you are not surprised that JetBrains as an editor specifically for Java at this point. This is one of the more expensive IDEs that JetBrains offers at $149 for the first year, but again they do give it away free for students and teachers.
If you are going to be writing apps for Android, then you will most definitely need Android Studio. This is a full development environment even offering Android OS emulation if your PC can handle it. The editor itself on IntelliJ’s features and toolset. Best of all, it is free.
LearnJavaOnline offers interactive tutorials and lessons for beginners.
W3Schools is a great place to start learning the basics of Java.
TutorialsPoint offers beginner level tutorials on Java.
Big Java: Early Objects is a great book for learning the basics and how to work with an object-oriented programming language.
Game Programming Patterns works for Java too.
The average salary of a 3D artist is roughly $60,000 a year but can be higher, up to $120,000, based on where the job is located and years of experience. 3D art is widely used across the entertainment industry as well as for businesses that want to design and model products before manufacturing. This leaves you a ton of career opportunities other than creating game art.
This is a completely free and open-source tool for creating 3D models. Blender is the best way to get started with 3D modeling. With the low cost there are tons of examples and tutorials to help you use the tools it provides.
ZBrush offers several packages for its 3D sculpting tool. Ranging from free feature-lite offering to their $895 one-time fee. ZBrush makes it extremely easy to start learning and grow the tool as your skill set grows.
Substance Painter is an Adobe offering for painting and texturing your 3D models. The indie license will run you $19.90 a month or $219 for a year but if you are a student or educator you can access the Substance tools for free.
The best way to learn how to create things is to make something you like or try to copy someone else’s art. That does not mean duplicating the art and trying to sell it. No, it means to find something you find appealing or matches your style and learn to remake it on your own. Check out this 100 day project on learning to 3D model for more inspiration.
If you want to learn the specifics of the tool you are using check out the vendor’s website. For instance, Blender offers a ton of tutorials on their site.
If you want more motivation to create 3D models, then try to create something you can print in the real world. 3D printers are relatively inexpensive now and you can print your 3D artwork or create useful household items.
The majority of game designers make between $40,000 and $100,000 a year with the average pay being $69,000. Game designers are the ones that come up with captivating stories, characters, and thematic elements that drive the game world. They are also responsible for gameplay elements such as rules, mechanics, and level design. Game designers may play a less technical role, especially on larger teams, often relying on developers and artists to bring their ideas to life but they are responsible for fitting the pieces together.
Game Designers will need to learn tools to help pull the project together. This sometimes means they will be acting as a project manager. If you are working on a smaller team then your coworkers will definitely appreciate it if you gain some knowledge on various tools of the trade.
Kanban boards offer a great way to manage projects and tasks. You can easily divide up work and if you use a proper engineering framework, like Agile or Kanban, you can even make the development process faster. You can find a ton of free online boards like Trello or you could create your own from sticky notes and a wall.
Getting your ideas across to developers and designers is key if you want to bring your vision to life. For that purpose, diagrams and flow charts can be an extremely useful tool. DrawIO offers the ability to quickly create these diagrams and pass them out. The tool is completely free and can even be used inside of code editors like VSCode.
Since you will be responsible for putting all the pieces together you will need to fully understand how to use the game engine you have selected for the game’s development. Do not rely on programmers to show you how to move objects around or keep a clean project structure.
Learning any of the tools listed for the other developers will be key for communicating requirements, knowing limitations, or stepping in to help out during crunch times.
Learning how the player sees your game or mechanic is a key part of creating something fun and endearing to the player. The Art of Game Design: a book of lenses offers perspective to game design through the various “lenses” talked about in the book.
Learn how to create a process around game development and design with Level Up! The Guide to Great Video Game Design.
A Theory of Fun for Game Design teaches designers how to add fun to their games through adding challenge to your game for your players to learn and master.
Thank you for stopping by. Stick around and check out more of our tutorials or posts like our piece on Tips And Tricks: Unity Spawn A Prefab. Also, leave a comment telling us what you liked or did not like about the article. Was it easy to follow along? What do you want to learn next? As always check out some of our published apps below.