Немного информации о игровых движках и библиотеках.
Игровые движки
Unity
Подходит для создания 2D и 3D игр. Языки программирования: C# и JavaScript.
Плюсы:
- Легко начать работу с 3D
- Огромное сообщество, дружественное к новичкам
- Самый огромный Asset store
Минусы:
- Asset store отстает от Unreal Engine по качеству графики и т. п.
- Большое количество устаревших руководств для новичков
Android Studio
Подходит для создания 2D и 3D игр на Android устройства. Языки программирования: Java(преимущественно) и C++ (опционально).
Плюсы:
- Очень простая публикация на обширном рынке
- Лёгок в освоении для новичков
Минусы:
- 3D-игры, вероятно, не для начинающих
- Сложно быть замеченным в магазине приложений Google Play
CryEngine
Подходит для создания 3D игр на PC и на консоли. Языки программирования: C++ и Lua.
Плюсы:
- Очень легко начать создавать 3D-миры, но собирать полноценные игры по кусочкам со временем становится сложно.
Минусы:
- Маленькое количество учебных пособий и документации по сравнению с Unity и Unreal Engine
UnrealEngine
Подходит для создания 2D и 3D игр для любых платформ. Языки программирования и не только: C++ и Blueprint visual scripting.
Плюсы:
- Бесплатный и полнофункциональный для обучения и развития
- Возможно, самый лучший и быстрый 3D-движок
- Прост в освоении
- Множество актуальных руководств для начинающих
- Простая визуальная скриптовая альтернатива программированию на C++
Минусы:
- C++ в контексте Unreal Engine предназначен не для начинающих, возможно, даже не для программистов среднего уровня
- Завершение полноценной 3D-игры - это серьезно большая работа
Godot
Подходит для создания 2D и 3D игр. Языки программирования и не только: GDScript, Visual Scripting, C# и C++.
Плюсы:
- Идеально подходит для 2D-игр
- Наличие подробной документации в сообществе
Минусы:
- 3D-движок не может конкурировать с более мощными альтернативами
- Не поддерживает консоли
Библиотеки для создания игр
SFML
Подходит для создания 2D игр на PC. Языки программирования: в основном C++, а также C, C#, .Net, D, Java, Python, Ruby, OCaml, Go и Rust.
Плюсы:
- Невероятно быстрые и плавные 2D-игры для настольных компьютеров
Минусы:
- Маленькое количество руководств для начинающих
- C++ один из самых сложных языков для изучения
SDL
Подходит для создания 2D и 3D игр на PC и мобильные устройства. Язык программирования: C
Плюсы:
Огромное количество руководств (если вы уже знаете C)
Минусы:
- Использует устаревший язык программирования
- Мобильная разработка - неподходящее место для начинающих из-за дополнительной сложности по сравнению с опциями LibGDX, Android Studio
LibGDX
Подходит для создания 2D и 3D игр на PC и мобильные устройства. Язык программирования: Java
Плюсы:
- Абсолютно бесплатный и кроссплатформенный
Минусы:
- 3D-опции примитивны по сравнению с Unity, Unreal и т.д.
- Нужно знать Java
- Возможно, более низкая производительность на iOS
- Бесспорно более низкая производительность на PC по сравнению с SDL или SFML
- Мало документации для разработки 3D игр
Эта статья не является истиной в конченой инстанции.