Назад в библиотеку

Первоисточник: https://psv4.userapi.com/s/v1/d2/.../preprints202511_1981_v1.pdf?dl=1

СРАВНИТЕЛЬНЫЙ АНАЛИЗ UNITY И GODOT
ДЛЯ РАЗРАБОТКИ 2D-ИГР

Источник: 10.20944/preprints202511.1981.v1

Ключевые слова: unity; Godot; разработка 2D-игр; оценка производительности; анализ удобства использования; игровые движки

Информация о платформе Preprints.org

Preprints.org — это бесплатная междисциплинарная платформа, предоставляющая сервис препринтов и предназначенная для того, чтобы ранние версии результатов исследований становились постоянно доступными и могли быть процитированы. Препринты, размещённые на Preprints.org, появляются в Web of Science, Crossref, Google Scholar, Scilit, Europe PMC.

Авторские права и лицензия

Авторские права: эта статья с открытым доступом опубликована по лицензии Creative Commons CC BY 4.0, которая разрешает свободное скачивание, распространение и повторное использование при условии, что автор и препринт будут указаны (процитированы) при любом повторном использовании.


Аннотация

Выбор подходящего игрового движка — особенно для независимых разработчиков — стал ещё более важным, поскольку индустрия видеоигр резко выросла в масштабах. Применительно к созданию 2D-игр данное исследование предлагает сравнительный анализ Unity и Godot. Чтобы оценить три ключевых аспекта — процесс разработки, производительность и удобство использования — в обоих движках был создан базовый прототип 2D-платформера, причём использовались одинаковые ассеты и одинаковый дизайн. В то время как удобство использования оценивалось по качественным признакам (например, простота установки, организация проекта и т.п.), метрики производительности включали частоту кадров (FPS), использование памяти и размер сборки (build). Также рассматривались кривая обучения, поддержка сообщества, ясность интерфейса, качество документации и др. Результаты проясняют преимущества и недостатки каждого движка и дают полезные рекомендации разработчикам — особенно новичкам — при выборе платформы для 2D-разработки.

Ключевые слова: unity; Godot; 2D game development; performance evaluation; usability analysis; game engines

Введение

Независимые создатели становятся всё более важными, задавая оригинальные и творческие идеи, по мере того как индустрия видеоигр в последние годы стремительно расширялась. Выбор правильного игрового движка — крайне важное решение для разработчиков, поскольку он напрямую влияет на то, насколько эффективно они могут работать, а также на то, как работает игра и какое удовольствие получают игроки. Unity и Godot — одни из наиболее часто используемых программ для разработки 2D-игр. Unity традиционно считается одним из самых популярных движков для инди- и профессиональной разработки. Он имеет большой Asset Store, устойчивую экосистему и поддерживает кроссплатформенность. Однако он может быть ресурсоёмким, а для новичков характерна более крутая кривая обучения. Godot, напротив, — движок с открытым исходным кодом, который в последнее время привлекает большое внимание благодаря простоте использования, гибкости и «лёгкости», особенно при создании 2D-игр. Хотя некоторые считают, что ему не хватает сложных возможностей и развитой экосистемы, доступных в Unity, его специализированный 2D-движок и язык сценариев GDScript дают разработчикам понятный и эффективный набор инструментов. Цель данного исследования — сравнить Godot и Unity в контексте разработки 2D-игр. Создав базовый прототип в обоих движках и оценив производительность, авторы помогают разработчикам, особенно начинающим, выбрать оптимальный инструмент под свои потребности.

Методы

В исследовании использовался экспериментальный подход для оценки создания 2D-игр в движках Unity и Godot. Анализ сосредоточился на трёх основных областях: процесс разработки, удобство использования и производительность. Для сопоставимого исследования в обоих движках был создан простой прототип 2D-платформера, причём использовались одинаковые дизайн и ассеты.

Проект 2D-платформера помог сфокусироваться на базовых возможностях, которые инди-разработчику пришлось бы реализовывать в видеоигре. Для разработки прототипа в Unity использовался язык C# вместе со встроенным 2D-физическим движком Unity. В Godot для реализации тех же возможностей применялись GDScript и нативная 2D-система движка. При оценке процесса учитывались: понимание процесса отладки и использование полученных результатов.

Производительность оценивалась по трём параметрам: частота кадров (FPS), память и размер сборки. Два прототипа исследовались на компьютере с Windows 10, процессором Intel Core i5 и 8 ГБ ОЗУ. Встроенные средства профилирования каждого движка использовались для записи частоты кадров (FPS) и использования памяти во время игрового процесса. После трёх повторений вычислялось среднее значение каждого теста, чтобы обеспечить воспроизводимость результатов.

В ходе качественного исследования фиксировались простота установки, организация проекта, интуитивность и ясность пользовательского интерфейса, а также качество документации. Дополнительно рассматривались управление ассетами, поддержка сообщества и кривая обучения. Чтобы обеспечить справедливую оценку, собирались отзывы разработчиков как начального, так и среднего уровня.

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

Примечание/замечание издателя: заявления, мнения и данные, содержащиеся во всех публикациях, принадлежат исключительно отдельным автору(ам) и участникам, а не MDPI и/или редактору(ам). MDPI и/или редактор(ы) не несут ответственности за любой ущерб людям или имуществу, возникший в результате любых идей, методов, инструкций или продуктов, упомянутых в содержании.

Результаты

Анализ показал, что Unity и Godot существенно различаются с точки зрения рабочего процесса разработки, удобства использования и производительности. Хотя прототип 2D-платформера был успешно реализован в обоих движках, наблюдались заметные различия в поведении и в опыте разработчиков.

Сравнение производительности

В таблице 1 перечислены количественные результаты для обоих движков. Тесты показали, что Unity обеспечивала немного более высокую частоту кадров в большинстве игровых сцен, в то время как Godot обычно использовал меньше памяти и давал меньший размер сборки.

Таблица 1. Сравнение метрик производительности Unity и Godot.

Метрика Unity Godot
Средний FPS 118 110
Использование памяти (МБ) 420 310
Размер сборки (МБ) 95 42

Немного более высокая частота кадров достигалась благодаря встроенной оптимизации рендеринга и физики в Unity, однако это преимущество сопровождалось повышенным потреблением памяти и большим размером сборки. Godot оказался «легче» для небольших проектов благодаря специализированному 2D-движку, который эффективно управлял памятью и ассетами.

Удобство использования и кривая обучения

Разработчики отметили, что язык сценариев Godot (GDScript) и интерфейс проще для освоения новичками благодаря Python-подобному синтаксису и общей простоте использования. Unity, несмотря на мощь, требует больше шагов настройки и более глубокого понимания скриптинга на C# и компонентно-ориентированной архитектуры.

Оба движка имеют хорошую документацию, однако у Unity более широкая база пользователей, что обеспечивает больше примеров и материалов. При этом документация Godot получила признание за улучшения, driven сообществом, и за ясность изложения.

Процесс разработки и рабочий процесс

В Unity для создания и отладки прототипа требовалось больше конфигурации, особенно в части настроек проекта и поведения физики. В Godot небольшое время сборки и редактирование сцен в реальном времени улучшали поток разработки и позволяли быстрее проходить цикл итераций.

Прототипирование облегчалось благодаря Asset Store Unity, который давал разработчикам немедленный доступ к большому набору ресурсов для управления ассетами. Хотя открытая природа Godot допускает гибкую кастомизацию, движок всё ещё требует ручной интеграции внешних ассетов.

Сводка результатов

В целом Godot выделился удобством использования, более простой кривой обучения и эффективностью по ресурсам, тогда как Unity доминировала по производительности и зрелости экосистемы. Unity по-прежнему полезна для проектов, которым требуются сложные системы и интеграции со сторонними решениями, либо для профессиональных студий. Godot предлагает практичную и эффективную альтернативу для независимых или учебных проектов, где акцент делается на 2D-геймплее и быстрой разработке.

Выводы

Данное сравнение выявляет уникальные сильные и слабые стороны Unity и Godot в разработке 2D-игр. Unity продемонстрировала более стабильную производительность и предложила устойчивую экосистему с широкой поддержкой сообщества, инструментами индустриального уровня и зрелым магазином ассетов. Эти факторы делают Unity более подходящей для крупномасштабных или коммерческих проектов, которым нужны развитые возможности и долгосрочная масштабируемость.

В то же время Godot оказался проще и менее сложным в использовании, отличаясь удобством, более мягкой кривой обучения и эффективным управлением ресурсами. Благодаря открытым исходным кодам и специализированному 2D-дизайну он особенно подходит для инди-разработчиков, преподавателей и небольших студий, которым важно быстрое прототипирование или проекты, ориентированные на 2D.

В конечном счёте выбор между Unity и Godot зависит от целей проекта и потребностей разработчика. Разработчикам, которым нужны высокая производительность и богатый функционал, стоит выбирать Unity, а разработчикам, которым важны простота, гибкость и развитие на основе open-source, — Godot. Дополнительные исследования могли бы расширить это сравнение, охватив 3D-производительность, экосистемы плагинов и эффективность мобильного развёртывания, чтобы получить ещё более полное понимание обоих движков.

Литература

  1. G. Andrade, G. Ramalho, A. S. Gomes, and V. Corruble, “Dynamic Game Difficulty Adjustment: An Integrated Approach,” in Proc. AIIDE, 2006.
  2. C. Lewis, J. Whitehead, and N. Wardrip-Fruin, “What Went Wrong: A Taxonomy of Video Game Bugs,” in Proc. FDG, 2010.
  3. Unity Technologies, “Unity Performance Optimization Guidelines,” Unity Documentation, 2023.
  4. P. Dickson, “Evaluating the Unity Game Engine for Teaching Game Development,” Journal of Computing Sciences in Colleges, 2015.
  5. A. Ferreira and R. Silva, “Analysis of Performance Issues in Unity 2D Games,” IEEE Latin America Transactions, 2020.
  6. Godot Engine Documentation, “Godot Rendering and Performance Guide,” Godot Docs, 2023.
  7. J. Martinez, “Comparing GDScript and C# Performance in Godot Engine,” Procedia Computer Science, 2022.
  8. R. Paredes, “An Evaluation of Godot Engine for 2D Game-Based Learning Systems,” in Proc. IEEE EDUCON, 2023.
  9. D. Benavides and C. Ruiz, “Comparative Study of Unity and Godot for 2D Game Development,” International Journal of Game Development, 2023.
  10. M. Hasan, “Performance Comparison of Popular Game Engines for Real-Time Rendering,” in ACM SIGGRAPH, 2021.
  11. M. Rusu, “Lightweight vs Complex Game Engines: A Comparative Study,” Computers & Graphics, 2019.
  12. S. Rogers, Level Design: Theory and Practice, 2nd ed., 2014.
  13. A. Bayliss, “Usability Evaluation of Game Engines for Novice Developers,” IEEE Transactions on Games, 2022.
  14. T. Smith, “Open-Source Tools in Game Development: A Systematic Review,” SoftwareX, 2020.

Примечание/замечание издателя

Заявления, мнения и данные, содержащиеся во всех публикациях, принадлежат исключительно отдельным автору(ам) и участникам, а не MDPI и/или редактору(ам). MDPI и/или редактор(ы) не несут ответственности за любой ущерб людям или имуществу, возникший в результате любых идей, методов, инструкций или продуктов, упомянутых в содержании.