|
| 1 | +# Game development tools |
| 2 | + |
| 3 | +There are plenty of tools available for game development. I dont want to cover all of them this is just a brief overview of the most common ones. |
| 4 | + |
| 5 | +The most types of tools for developers are: |
| 6 | + |
| 7 | +- Game Engines |
| 8 | +- Game Development Frameworks / Libraries |
| 9 | +- Programming editors and IDEs |
| 10 | + |
| 11 | +But there are other types of tools that are also important for game development: |
| 12 | + |
| 13 | +- 3D Modeling Tools |
| 14 | +- 2D Art and texture Tools |
| 15 | +- Sound and Music Tools |
| 16 | +- Planning and Management Tools |
| 17 | +- Marketing and Monetization Tools |
| 18 | +- Testing Tools |
| 19 | +- Publishing and Distribution Tools and platforms |
| 20 | +- Analytics, metrics, remote config and A/B Tools |
| 21 | + |
| 22 | +## Game Engines |
| 23 | + |
| 24 | +The powerhouses of game development, game engines are the software that packs lots of tools and features needed to create a game. They are the most important tool in a game developer's arsenal. Ex.: Unity3D, Unreal Engine, and Godot. |
| 25 | + |
| 26 | +You might understand a game engine as the "orchestrator of the game". |
| 27 | + |
| 28 | +!!! note |
| 29 | + |
| 30 | + Not all game engines provides embedded visual editors (ex.: Ogre3D), some of them are just a bunch of libraries and tools nicely integrated that you can use to create your game. |
| 31 | + |
| 32 | +Instead of listing all the game engines, I suggest you to search for the most popular ones and try them out. I suggest going to search engines and type some of these queries: |
| 33 | + |
| 34 | +- "Game engine landscape" |
| 35 | +- "Top game engines" |
| 36 | +- "Game engine market infographic" |
| 37 | +- "Game engine popularity" |
| 38 | +- "Game engine comparison" |
| 39 | + |
| 40 | +If you are a open-source enthusiast, try to explore game engines on github. A nice search query involves the word "game engine" and the word "awesome", but here goes some links to help you: |
| 41 | + |
| 42 | +- [GitHub Collection of Game Engines](https://github.com/collections/game-engines) |
| 43 | +- [Awesome GameEngines](https://github.com/collections/game-engines) |
| 44 | + |
| 45 | +## Game Frameworks / Libraries |
| 46 | + |
| 47 | +Sometimes you don't need a full game engine, or you need to create something that no other one provides. In this case, you can use a game development framework or library. Ex.: SDL3, LibGDX, Phaser, and others. |
| 48 | + |
| 49 | +If you follow this path, you will have more control over your game, but you will need to code more things that are already done in game engines. |
| 50 | + |
| 51 | +I am afraid there are so many frameworks and libraries that I can't list them all here. But you can search for them using the same queries I suggested for game engines, but replacing the word "engine" with "framework" or "library", you will get amazed by the amount of tools available. Try it! |
| 52 | + |
| 53 | +## Assignment |
| 54 | + |
| 55 | +1. Create an account on GitHub. If you don't want to expose yourself publicly, create a new account with a nickname unrelated to your real name. You can use any AI tool to help brainstorm a nickname for you. Extra: [apply to GitHub Student Pack](https://education.github.com/pack). |
| 56 | +2. Create a Repository on GitHub. The name of the repo should have "Awesome" somewhere in the name, and it should be related to game development tools. Ex.: "Awesome-GameDev-Tools". This will optmize SEO and make your repository more visible to others. |
| 57 | +3. Probably the repo will already have a README.md file, if not, create a README.md file on the root of your repo. Write a brief introduction to the repository and list some of the tools you are planning to cover. |
| 58 | +4. You should research and list at least 10 tools that you think are important for game development. Please explore others tools than the main-stream. Describe briefly each tool and provide a link to the tool's website or repository. |
| 59 | +5. You will present some of them in class, so be creative and avoid listing tools that everyone knows. |
0 commit comments