Довольно долгое время думал: “яжпрограммист, почему бы мне игру не написать?” В итоге, попробовал несколько движков:
Unity 3D. Довольно интересная штука. Много халявных ассетов, удобный интерфейс, отличный туториал. Можно прям взять игру из туториала, и там расставлять стены, полы, строить лабиринты, втыкать готовых монстров. Минусы: C#. Раньше ещё поддерживались UnityScript и Boo (питон курильщика), но их благополучно выкинули, потому что несерьёзно. Ещё из минусов то, что часто ассеты жёстко заточены под определённую версию редактора, и открыть в другой версии не получится. Соответственно, и в одном проекте некоторые ассеты не совместить.
Unreal Engine 4 я не пробовал. Если кратко про различия: UE4 сложнее и в основном для AAA игр, тогда как Unity для инди. В UE4 графика получше, но на мобильные платформы не затянуть. А ещё UE4 программировать на C++. Что лучше, C# или C++, я не уверен.
Godot. Неплохой движок, набирает популярность потому что полностью бесплатный и опенсурсный. Если Unity заберёт 10% прибыли от игры, то игра на Godot полностью ваша. Но там всё тот же C#, GDScript (очередной Python курильщика) и VisualScript (ну там квадратики расставлять, линиями их соединять). Я почему-то думал, что GOdot написан на Go, но нет.
Ну и, в общем, захотелось мне на Go игры писать, а то от C# как-то больно. В общем, в Go из более-менее живого есть 2 небольших 2D движка: ebiten и pixel. Ebiten, как будто, пожирнее, но мне Pixel больше понравился, я решил на нём писать. Его основная фишка в том, что он не изобретает велосипеды, где возможно, и активно поддерживает примитивы из стандартной библиотеки. Это не Unity, конечно: ни магазина ассетов, ни редактора. Только ты и код. В целом, мне нравится. Правда, мой рогалик проседает по FPS где-то на рендеринге самого подземелья, и я пока что не уверен, это в моих руках дело или всё-таки в движке.