Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/gravitygamesinc/gamedev-101.md

This repo is for anyone new to game development. It covers key roles, concepts, and tools in the industry.
https://github.com/gravitygamesinc/gamedev-101.md

2d 3d art audio education engines game game-development game-engine gamedev indie indie-games learning-resources resources sound starter tools tutorials unity unreal

Last synced: 3 days ago
JSON representation

This repo is for anyone new to game development. It covers key roles, concepts, and tools in the industry.

Awesome Lists containing this project

README

        

![GameDev101](https://github.com/gravitygamesinc/gamedev-101.md/blob/main/gamedev_101.png)

# 🎓 Game Development 101

Welcome to *Game Development 101*! This repo is designed for anyone who is new to game development and wants to get started with the basics.
Here, you'll find an overview of the key roles in game development, along with essential concepts and tools used in the industry. Whether you're looking to create your first indie game or just curious about how games are made, this guide will help you understand the different aspects of the game development process.

Didn't find what you were looking for? Check out our other repos!

[//]: #Repos


Free Assets
Free Platforms
GameDev 101
Learning Resources
GameDev News

### Table of Contents

|Summary|
|:----------------------------------|
|🖌 [Development Stages](https://github.com/gravitygamesinc/gamedev-101.md#-development-stages)|
|🦾 [Development Team](https://github.com/gravitygamesinc/gamedev-101.md#-development-team)|
|👀 [Get to know more](https://github.com/gravitygamesinc/gamedev-101.md#-get-to-now-more)|

## 🖌 Development Stages

There are many ways to develop a game, and each studio/developer has its own process, but they can be classified into 3 stages:

![Imagem](https://github.com/gravitygamesinc/gamedev-101.md/blob/main/ProductionPhases.png)

## 🖌 Pre-production
Pre-production is where your game truly begins. During this phase, you’ll develop the game's core concept, define its mechanics, and outline the overall structure. You’ll also make important decisions like which technology stack to use (e.g., Unity, Unreal Engine), assign roles within your team, and start creating early prototypes. This is the foundation of your game, and the more thorough your planning here, the smoother the production phase will be.

**Common Steps**
- Concept development and brainstorming.
- Defining the game’s mechanics, story, and design.
- Creating a game design document (GDD) to guide the development.
- Assembling the team and choosing tools/technologies.
- Prototyping and testing initial concepts.

## 🖌 Production
Production is where your ideas come to life. During this phase, your team will be busy creating the game’s assets—programming gameplay features, designing characters and environments, producing animations, and crafting sound effects. This stage is all about executing the plan set during pre-production while keeping an eye on deadlines and potential challenges. Collaboration between designers, developers, and artists is key to ensuring that the project stays on track.

**Common Steps**
- Coding and development of gameplay mechanics.
- Asset creation (2D/3D art, animations, sound effects, music).
- Level design and environment creation.
- Regular playtesting and bug fixing.
- Collaboration between design, development, and QA teams.

## 🖌 Post-production
Post-production is all about refining your game for release. At this stage, your team will focus on polishing the gameplay, fixing bugs, and ensuring the game runs smoothly across platforms. This phase also includes preparing for the game’s marketing, launch strategies, and ongoing support after release. A successful post-production phase ensures your game reaches its full potential when it finally hits the market.

**Common Steps**
- Bug fixing and quality assurance (QA).
- Performance optimization for different platforms.
- Finalizing marketing materials (trailers, screenshots).
- Planning the game’s release strategy (platforms, regions).
- Post-launch support, including patches and updates.

# 🦾 Development Team
Each member plays a critical role in bringing the game to life, from initial concept to final release. This section outlines the key positions within the development team, detailing their responsibilities and the tools they typically use to ensure a seamless production process.

## 🔊 Audio Designer
Audio designers create and mix sounds for everything from ambient background music to character dialogues, environmental sounds, and action effects, ensuring that the game’s audio aligns with the visual and narrative components.

**Common Tools**
Digital Audio Workstations (DAWs), sound libraries, and audio editing software like Audacity and Wwise.

**Beginner guide**
- [Game Audio Learning](https://www.gameaudiolearning.com/learningroadmap) - Fundamentals of how game audio works, the tools we use to record, synthesize and manipulate it as well as the actual process of doing so.
- [Game Audio 101](https://www.youtube.com/watch?v=Rx9VhOaa8N8) - Fundamentals of how interactive audio works to develop the right mindset and foundation to learn technical sound design.
- [Wwise Fundamentals](https://www.audiokinetic.com/en/learning/learn-wwise/wwise-fundamentals) - All you need to get started with Wwise.
- [Interactive Music](https://www.audiokinetic.com/en/learning/learn-wwise/interactive-music/) - 8 lessons that cover the essentials of the Wwise music system.
- [Performance Optimization & Mobile Considerations](https://www.audiokinetic.com/en/learning/learn-wwise/wwise-performance-optimization/) - 8 lessons that cover a series of performance optimization techniques using Wwise.
- [Wwise Unity Integration](https://www.audiokinetic.com/en/learning/learn-wwise/wwise-unity-integration/) - 9 lessons that cover everything you need to know about the Wwise Unity Integration.
- [Start Learning Audacity](https://www.udemy.com/course/start-learning-audacity-for-free/) - Learn the basics of the free audio editing software Audacity and tricks to enhance both your audio and your learning!

## ⚒ Producer
The producer is primarily responsible for project management. They coordinate the team’s efforts to ensure the game development stays on schedule, within budget, and meets quality requirements. The producer also handles communication between internal and external teams, keeps the team focused on goals, and resolves issues that may arise during production.

**Common Tools**
To oversee the entire project, producers may use project management software such as Asana, Monday, or Trello.

**Beginner guide**
- [Udemy: An Introduction To Video Game Production](https://www.udemy.com/course/an-introduction-to-video-game-production/) - This course goes beyond the technical aspects, offering an introduction to video game production as a whole.
- [Introduction to Asana for Absolute Beginners](https://www.youtube.com/watch?v=yyn7FfHKO90) - Walk through setting up a project and the project management features you can use to help you move your work forward more efficiently.

## 💻 Developer
Game developers are responsible for coding and implementing the game’s systems and functionalities. They work to turn the design vision into functional code, handling technical aspects such as physics, AI, gameplay, and performance optimization.

**Common Tools**
Developers commonly use integrated development environments (IDEs) such as Visual Studio to code and a game engine, like Unity and Unreal Engine to gather all assets and build the game.

**Beginner guide**
- [3D Beginner: John Lemon](https://assetstore.unity.com/packages/essentials/tutorial-projects/unity-learn-3d-beginner-john-lemon-tutorial-resources-143848) - A Unity learning resource for 3D beginners, likely featuring tutorials on creating the character John Lemon.
- [Epic Games: Game Development and Prototyping](https://www.coursera.org/learn/game-development-and-prototyping) - Learn the fundamentals of game development and rapid prototyping with Epic Games.
- [Epic Games: Unreal Engine Fundamentals](https://www.coursera.org/learn/unreal-engine-fundamentals) - Get started with Unreal Engine through this foundational course by Epic Games.
- [How to use Godot](https://www.youtube.com/watch?v=VeCrE-ge8xM&list=PLda3VoSoc_TSBBOBYwcmlamF1UrjVtccZ) - Explore using the Godot game engine through YouTube videos.
- [Introduction to Game Development](https://www.codecademy.com/learn/introduction-to-game-development) - Explore video game development, including game design, gameplay development, and asset creation.
- [Udemy: Create your first game in Unreal](https://www.udemy.com/course/creating-your-first-game-in-unreal-engine-5/) - This course gets you started creating your first game using the Unreal Engine 5.
- [Udemy: Basics of C# and Unity for Complete Beginners - Part 1](https://www.udemy.com/course/free-part1-alexdev/) - The first part of a free course teaching C# programming basics and their application in Unity for game development.
- [Udemy: Basics of C# and Unity for Complete Beginners - Part 2](https://www.udemy.com/course/free-part2-alexdev/) - The second part of the free C# and Unity course for beginners, building upon the first part.
- [Udemy: Unity 3D Newbies: Create a game Fast No Coding Mini Class](https://www.udemy.com/course/unitydemo/) - Learn how to create a simple game in Unity 3D without any coding required, great for beginners.
- [Udemy: Learn to create a Simple Game in Unreal Engine 5](https://www.udemy.com/course/learn-to-create-a-simple-game-in-unreal-engine-5/) - Create a basic game in Unreal Engine 5 with this course.

## 🎨 2D/3D Artist
2D and 3D artists create the game’s visuals, including characters, environments, textures, objects, and special effects. A 2D artist usually creates graphical elements such as sprites, menus, and interfaces, while a 3D artist models and animates characters and environments in three dimensions.

**Common Tools**
2D artists often use software like Adobe Photoshop, Illustrator, or Krita for creating sprites and UI elements. 3D artists typically work with tools such as Blender, Maya, or 3ds Max for modeling and animation. Both roles might use Substance Painter for texturing and Unity or Unreal Engine to integrate their assets.

**Beginner guide**
- [Blender Beginner Guide Part 1](https://www.youtube.com/watch?v=jnj2BL4chaQ&list=PLn3ukorJv4vuU3ILv3g3xnUyEGOQR-D8J) - Playlist is a beginner guide to learning Blender, a powerful 3D modelling and animation software.
- [Cuphead's Animation Process and Philosophy](https://www.youtube.com/watch?v=RmGb-jU3uVQ) - Very interesting knowledge but not as transferrable to our work. Still a very interesting watch.
- [Pixel Art Tutorial](https://www.deviantart.com/gasara/art/Pixel-Art-Tutorial-Basics-for-Beginners-356743783) - Pixel art for beginners. It discusses what pixel art is and how to make it.
- [Udemy: 2D Game Art for Non-Artists](https://www.udemy.com/course/2d-game-art-for-non-artists/) - If you're not a seasoned artist but want to create 2D game art, this course can help you get started.
- [Udemy: Blender Basics](https://www.udemy.com/course/blender-basics/) - Introduction to Blender, this Udemy course covers the fundamental functionalities of the software.
- [Udemy: Create Character in Blender](https://www.udemy.com/course/create-your-own-character/) - This course dives into character creation in Blender, guiding you through the process of building your own character model.
- [Udemy: Digital paint series](https://www.udemy.com/course/digital-painting-series-ep0-dragon-bust/) - Digital painting techniques, potentially useful for creating game art.
- [Udemy: Easy way to create 2d game art](https://www.udemy.com/course/draw-the-sword-easy-way-to-create-2d-game-art-in-30-minutes/) - A quick course on creating basic 2D game art in just 30 minutes.
- [Udemy: Getting started in 3D Animation](https://www.udemy.com/course/learn-3d-animation-in-just-2-weeks/) - This course aims to get you started with 3D animation in just two weeks.
- [Udemy: Maya - Character Head Modeling for Beginners](https://www.udemy.com/course/learn-maya-character-head-modeling-for-beginners/) - Learn the basics of modelling character heads in Maya, a 3D animation software.
- [Udemy: Substance Painter Basics for Beginners](https://www.udemy.com/course/substance-painter-basics-for-beginners/) - Learn the fundamentals of texturing 3D models using Substance Painter in this beginner-friendly Udemy course.

## 🕹 Game Designer
The game designer is responsible for creating the game’s concept and mechanics. They define the rules, progression, levels, reward systems, and gameplay balance, always aiming to provide a fun and challenging experience for players.

**Common Tools**
Game designers often use tools like Unity or Unreal Engine for prototyping, along with software like Figma or Miro to map out game flow and UI design. They may also rely on narrative design tools such as Twine or Articy Draft. For collaborative design documentation, Notion or Google Docs are commonly used.

**Begginer guide**
- [Epic Games: Fundamental of Level Design with Unreal](https://www.coursera.org/learn/level-design) - Course on creating engaging levels in games using Unreal Engine by Epic Games.
- [Epic Games: Introduction to Game Design](https://www.coursera.org/learn/introduction-to-game-design) - Starter course on game design concepts by Epic Games.
- [The Art of Game Design](https://www.inventoridigiochi.it/wp-content/uploads/2020/07/art-of-game-design.pdf) - A free PDF copy of the book "The Art of Game Design" by Jesse Schell.
- [The Basics of Level Art & Level Design](https://www.youtube.com/watch?v=AfyPRIrCozk) - Introduction to the concepts and processes of level art and level design.
- [Udemy: Introduction to Game Design Theory](https://www.udemy.com/course/welcome-to-game-design-introduction-to-game-theory/) - Explore the theoretical foundation of game design in this introductory course.

## 🐞 Quality Assurance (QA)
The QA team ensures the game works correctly by testing it for bugs, glitches, and performance issues. They document any problems and work with developers to fix them before the game’s release.

**Common Tools**
QA teams frequently use bug-tracking software such as JIRA or even creating a specific board view on Project Management software such as Asana.

**Beginner guide**
- [Ultimate Guide for Testers](https://www.udemy.com/course/software-testing-guide/) - Learn software testing basics. Introduction to the process, bugs, different lifecycles, test strategy & planning.
- [What is QA?](https://www.youtube.com/watch?v=oBipFAVwTWs&list=PLNvmTlrQ-tBUrtqZ7T29KIS7lu8IPdOOG) - Playlist of videos that show what is QA in the gaming industry and what are different types of testing!
- [Game QA/Testing Short Course](https://www.udemy.com/course/game-qatesting-short-course/) - This course is a conference-level detailed short course, for complete coverage of Game Testing and Game QA details.

###

[//]: #Buttons


Back home
Back top