Комментарии 14
Когда-то баловался, чисто любительскими разработками на этой платформе. Припоминаю, что была возможность собирать на веб платформу в html5.
Не в курсе, как оно нынче работает?
LibGDX мой любимый gamedev фрэймворк. Пробовал другие, и всегда возвращался к нему.
Я делаю только 2d игры, 3d мне совершенно неинтересно и для 2d как мне кажется LibGDX лучший. В нём игра именно полноценно програмируется, с продумыванием архитектуры, написанием логики, а не отщелкиванием мышкой в бесчисленных менюшках, как в Unity и ему подобных.
Ключевой момент - я не профессиональный гейм девелопер, это хобби. И как я понимаю, причина того, что фрэймворк незаслуженно забыт именно в том, что студии не хотят разрабатывать игры на инструменте, где потребуются настоящие программисты. Для бизнеса гораздо приятнее, чтобы их сотрудники были просто операторы ЭВМ с опытом работы в Unity. И да, в Unity все делается быстрее. Для бизнеса это критично. Для меня важнее не то, насколько быстро я делаю, насколько сам процесс мне приятен.
Мне кажется причина в плохой интеграции с Ios. Насколько я помню libgdx тащит с собой собственную виртуальную машину. Нет гарантий, что всё будет работать после очередного обновления apple.
libgdx использует MobiVM(RoboVM fork) в качестве виртуальной машины. Последний -- обновляется и не зависит от обновлений apple.
Не совсем понятны сложности интеграции с iOS -- вероятно нет готовых высокоуровневых оберток, но весь cocoa touch имеет биндинги и доступен. Т.е. нужно самостоятельно писать специфичный нативный код, но на java.
Я вас возможно удивлю. Наш средний проект 300тыс+ строк кода. В оболочке Unity3D. Пишем фермовые игры в основном.
И мне сложно представить механику, которая настраивалась бы кликами мышки. Базовые вещи, возможно. Но сделано это для более простого входа в сферу. Шаг влево / вправо и возникают сложные структуры и километры кода.
Да, я наверное неправильно сделал. Я хотел похвалить LibGDX, а зачем то стал критиковать Unity, не имея достаточно опыта работы в нём. Это было глупо с моей стороны.
Это вообще вопрос вкусовщины - попробовал LibGDX, он мне сразу понравился, попробовал остальное, не зашло. То, что Unity очень долго загружается сразу опечалило. Ну и у меня первые впечатления от его бесконечных меню были - хоспадя, тут потребуются годы, чтобы во всем этом разобраться! А ведь можно ещё ставить кучу аддонов, ещё больше дополняющих функционал меню. Наверное надо было сразу забить на меню и просто начать кодить, а я провозился несколько дней с менюшками, мне стало грустно и я просто забросил.
По мне, так дополнительный движок Ashley к LibGDX в разы упрощает понимание игростроя в связке с ООП и дает правильную концепцию деления игровых сущностей, игровых систем и рендеринга. Не знаю насчет Java, но с Kotlin оно спаривается очень хорошо, плюс есть свои ktx на все библиотеки, еще более упрощающие синтаксис.
Можно немного подробней про трудности с iOS? Для работы с нативными (в том числе third party) фреймворками необходимо иметь java биндинги к ним. CocoaTouch покрыт на 99% к third party (Firebase/Facebook etc) есть RoboPods/AltPods -- это все больше из мира MobiVM/RoboVM, который используется как java backend на iOS
Спасибо за статью, многие об этом инструменте и не слышали, а он крутой.
Я сейчас пишу нечто вроде цивилизации, и у меня обилие сложных интерфейсных окон, таблиц, скроллинга. И понял что очень сильно ошибся с движком.
Очень много с чем столкнулся и что сделано криво что и не припомню, но самое главное с чем сталкиваюсь постоянно - система координат акторов, ноль по у снизу вверх. Очень мало реализованных акторов для чуть более сложных элементов, все приходится дописывать самостоятельно. Для чего-то простенького типа сапера сгодится
Чему я научился делая игры на LibGDX