Разработка на Godot, или Как я наступил на грабли

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
| Статья | ИИ, сервисы и приложения

Переход на новый движок с крутыми свистелками не всегда лучшее решение, даже для новых проектов. А особенно это касается кросс-платформенной разработки.

История моего вхождения в геймдев началась три года назад, с просьбы жены сделать так, чтоб старая игрушка заработала на телефоне. После нескольких месяцев, я поддался и начал думать на эту тему. Неожиданно для себя понял, что тема на самом деле интересная. Анализировал движки, библиотеки.

Нативную разработку под целевую платформу отмёл сразу, так не интересно и это старый подход и времени столько нет. Какой движок выбрать тогда? по итогу выбор встал между Unity, Godot, MonoGame.

Unity

Всё началось с Unity. Да, без дохода движок бесплатный, но проприетарная лицензия, что они там будут менять, не понятно. Но не предсказуемое прекрасное далёко становится предсказуемым, когда речь идёт о жадных корпорациях. А ещё скачивать очень много, долго и нудно. Несколько гигабайт, чтоб делать простенькие игры. Вы сурьёзно?! Да, они это очень-очень сурьёзно! Так что, Unity, мимо. Хоть это стандарт индустрии (пока ещё).

Да, они это очень очень сурьёзно!
Автор: andruhex, south park

MonoGame

MonoGame это фреймворк для написания игр на C#. MonoGame поддерживает кучу платформ. Но это не движок. а фреймворк. Изначально я начал разработку на нём. Но это не то, чего мне хотелось: наглядности и простоты. Через пару недель, после появление полурабочего прототипа на Monogame. Я решил попробовать Godot. И говорю сразу, мне понравилось! Разработка на Monogame заняла бы слишком много моего времени. У меня было ощущение, что изобретаю свой велосипед на костылях. Если вы понимаете о чём я:

Превозмогая трудности
Автор: Неизвестен Источник: pikabu.ru

Godot

И так, качаю Godot3. Какая-то сотня мегабайт, ни в какое сравнение с Unity. Система нод ощущается простой в сравнении со структурами Monogame. Логика работы схожа с Unity. Имеется встроенный редактор кода, 2d игра сделалась буквально за пару недель. Gdscript не строго типизированный, что тоже ускоряет прототипирование. Pet Labirint портировался за пару кликов на все доступные мне платформы. Windows, Linux, Android и HTML5.

С разработкой для iOS и Mac всё не просто, надо оплачивать лицензию каждый год, нужны свежие устройства. Портирование на HTML5 оказалась хорошей альтернативой, одним портом на все платформы. Это в дальнейшем и сыграло злую шутку.

Грабли

Сообщество Godot выпустило четвёртую версию. Внимательно почитав список улучшений, я был воодушевлён, теперь Godot казался серьёзным движком для работы с 3d графикой. Улучшен рендеринг, изменён способ работы с 3d редактором Blender, можно сказать, что Godot4 и Blender созданы друг для друга. Добавлена поддержка WebGL2.

Я решил: «Хватит разврата! Теперь использую новую стабильную версию!»

3d Демка
Автор: Wojtek Pe Источник: www.youtube.com

После реализации очередного проекта, я портировал его в HTML5. Но, оказалось порты Godot4 в HTMl5 не совместимы с устройствами Apple. И я сейчас нахожусь в замешательстве подождать пока обновятся Apple устройства и плотно заняться 3d либо откатиться к версии для Godot3.

Вывод

Всё получилось как в анекдоте:

Упал самолет на необитаемый остров. Спаслись только командир, штурман и стюардесса. Через неделю командир сказал: «Хватит разврата!» и они убили стюардессу. Еще через неделю командир сказал: «Хватит разврата!» и они закопали стюардессу. А еще через неделю командир сказал: «Хватит разврата!» и они откопали стюардессу обратно.

Старый анекдот

Лучшее — враг хорошего. Если в проекте не предусмотрено использование новых фич, новая версия тебе не нужна.

Автор не входит в состав редакции iXBT.com (подробнее »)
Об авторе
«У самурая нет цели, есть только путь»
Duobricks двойной тетрис на Android

8 комментариев

Добавить комментарий

1
А какой у вас опыт в IT, если разработка заняла 2 недели? Думаю, что это довольно короткий срок, интересно, с какой базой вы стартовали
И можно, пожалуйста, название этой старой игрушки
andruhex
А в айтишке уже наверное лет 10.
1
Там сейчас как раз это должны будут пофиксить вскоре. Хотя конечно хотелось бы, чтобы Apple всё-таки добавили поддержку этой технологии
GennDALF
Вывод поддерживаю.
По самим инструментам хочется больше подробностей – думаю, многие были бы весьма признательны за развёрнутый рассказ погулявшего по граблям человека.
andruhex
А что интересно, процесс создания проекта, как делать шейдеры в godot?
Этот пост скорее про конкретные грабли. Про которые не пишут красными буквами, чтоб узнать надо уйти в документацию. А зачем её читать, если там описан процесс экспорта в HTML5. А я его уже знал с третьей версии)
andruhex
Но видимо я продолжу цикл. Не очень очевидные вещи.

Добавить комментарий

Сейчас на главной

Новости

Публикации

Обзор Bluetooth-наушников Ugreen Studio Max5s с активным шумоподавлением и поддержкой LDAC

UGREEN уже не первый год выпускает бюджетную периферию, но с наушниками бренд заходит на территорию, где привыкли рубиться Sony, Bose и иже с ними. Studio Max5s — это полноразмерные...

Обзор внешнего аккумулятора Ugreen Wavy 45W (PB603): TFT-экран с кучей датчиков и полная телеметрия ячеек

UGREEN уже давно закрепилась на рынке зарядных аксессуаров как бренд, предлагающий продукты с хорошим балансом цены и качества, и новая линейка Wavy — попытка компании выйти на...

✦ ИИ  Как спастись от жары без кондиционера: 9 простых способов охладить квартиру и легче пережить зной

  • Тематическая подборка
  • Оффтопик
Когда дома становится душно, а кондиционера нет, не обязательно мириться с раскаленной квартирой. Есть несколько простых приемов, которые помогают не дать помещению сильно нагреться днем, быстрее...

Обзор 4K-дисплея для художников и дизайнеров: XPPen Artist Pro 27 (Gen 2) с сенсорным управлением, подставкой

Огромный интерактивный графический 4K-дисплей с диагональю 27 дюймов: появилась возможность попробовать новый XPPen Artist Pro 27 (2-го поколения) не только для базового рисования и ретуши, но и...

Что не так с роботами-мойщиками окон — 7 сюрпризов после покупки

Робот обещает мыть окна почти без участия человека, но после покупки всплывают детали, о которых редко говорят заранее. Семь нюансов, способных сильно испортить впечатление.

Быстрая и тонкая. USB-C зарядка на 65Вт. Обзор Ugreen Nexode Air Slim

65W мощность, складывающийся плоский корпус, который прячется вдоль стены и три разъёма USB. Ugreen выпустили компактную GaN-зарядку. Предлагаю посмотреть на неё поближе и узнать что же она может...