Дата: 2024 год

Привет! Я инди разработчик, занимающийся созданием игр на Godot 4 и Unreal Engine 4. Мне всего 15 лет, но я уже активно изучаю и работаю с различными игровыми движками. Моя цель - поделиться с вами своими знаниями и опытом в области выбора и использования движков для 2D разработки игр. Давайте вместе погрузимся в мир 2D разработки игр и найдем самые крутые и эффективные инструменты для воплощения ваших идей в жизнь! (Запомните у каждого движка свои плюсы и минусы, и лучше выбирать по своим потребностям.)

DEFOLD

Defold - это бесплатный движок для создания 2D игр и других интерактивных приложений. Он разработан компанией King (известной по игре Candy Crush) и предлагает простой и эффективный способ создания кроссплатформенных проектов.

  1. Графика и анимация: Defold предоставляет инструменты для работы с 2D спрайтами и анимациями. Вы можете импортировать спрайты в форматах PNG, JPEG и других, а также настраивать их свойства, такие как масштабирование, поворот и прозрачность. Для создания анимаций используется система "Анимационных кривых", которая позволяет определить изменение свойств объекта со временем.

  2. Физика: Defold использует библиотеку Box2D для моделирования физики в 2D играх. Box2D обеспечивает реалистичное поведение объектов, учет коллизий, силы тяжести, трение и другие физические эффекты.

  3. Технология рендеринга: Для рендеринга 2D графики Defold использует OpenGL ES 2.0, что обеспечивает высокую производительность и качество визуальных эффектов. Технология поддерживает текстуры, спрайты, шейдеры, освещение и другие важные аспекты визуализации.

  4. Аудио: Defold предоставляет возможности для добавления и управления звуковыми эффектами и музыкой в 2D играх. Вы можете импортировать звуковые файлы различных форматов (например, WAV, MP3) и управлять их воспроизведением через API движка.

  5. Управление ресурсами: Defold обеспечивает удобное управление ресурсами, такими как спрайты, звуки, шрифты и анимации. Вы можете организовывать ресурсы в папки, настраивать их свойства (например, фильтры текстур), а также оптимизировать загрузку ресурсов для улучшения производительности.

  6. Интеграция с анимационными инструментами: Defold поддерживает импорт анимаций из популярных инструментов, таких как Spine и Spriter. Это облегчает работу с сложными анимациями и позволяет использовать мощные инструменты для создания персонажей и объектов.

  7. Мобильная разработка: Defold обеспечивает возможность разработки 2D игр для мобильных устройств под управлением iOS и Android. Вы можете оптимизировать проект для различных разрешений экранов, управлять жизненным циклом приложения и использовать специфические функции устройств.

  8. Инструменты для разработки игрового процесса: Defold предоставляет API и инструменты для создания игрового процесса, такие как управление состояниями игры, обработка пользовательского ввода, коллизии, анимации и другие аспекты игровой логики.

  9. Сообщество и поддержка: Вокруг Defold существует активное сообщество разработчиков, которое предоставляет множество ресурсов, включая форумы, уроки, обучающие материалы и примеры кода. Также есть официальная документация и поддержка со стороны разработчиков Defold.

  10. Гибкость и масштабируемость: Defold предоставляет гибкие инструменты для создания разнообразных 2D проектов – от простых аркад до сложных платформеров или стратегий. Вы можете настроить параметры проекта (такие как физика, графика, звук) под свои потребности и масштабировать проект по мере необходимости.

Unreal engine 4

Unreal Engine - это мощный и популярный игровой движок, разработанный компанией Epic Games. Он изначально создавался для разработки 3D игр, но также поддерживает создание 2D проектов.

  1. Графика и анимация: Unreal Engine предоставляет возможности для работы с 2D спрайтами и анимациями. Вы можете импортировать спрайты в форматах PNG, JPEG и других, а также настраивать их свойства, такие как масштабирование, поворот и прозрачность. Для создания анимаций используется встроенный редактор анимаций с поддержкой кадровых анимаций и скелетной анимации.

  2. Физика: Для моделирования физики в 2D играх Unreal Engine использует свой собственный физический движок, который обеспечивает реалистичное моделирование коллизий, силы тяжести, трения и других физических эффектов в 2D пространстве.

  3. Технология рендеринга: Unreal Engine использует мощный движок рендеринга, который обеспечивает высокую производительность и качество визуальных эффектов. Технология поддерживает текстуры, спрайты, шейдеры, освещение и другие важные аспекты визуализации.

  4. Аудио: Unreal Engine предоставляет инструменты для добавления и управления звуковыми эффектами и музыкой в 2D играх. Вы можете импортировать звуковые файлы различных форматов (например, WAV, MP3) и управлять их воспроизведением через API движка.

  5. Управление ресурсами: Unreal Engine обеспечивает удобное управление ресурсами, такими как спрайты, звуки, шрифты и анимации. Вы можете организовывать ресурсы в папки, настраивать их свойства (например, фильтры текстур), а также оптимизировать загрузку ресурсов для улучшения производительности.

  6. Интеграция с анимационными инструментами: Unreal Engine поддерживает импорт анимаций из популярных инструментов, таких как Spine и Adobe Animate. Это облегчает работу с сложными анимациями и позволяет использовать мощные инструменты для создания персонажей и объектов.

  7. Мобильная разработка: Unreal Engine обеспечивает возможность разработки 2D игр для мобильных устройств под управлением iOS и Android. Вы можете оптимизировать проект для различных разрешений экранов, управлять жизненным циклом приложения и использовать специфические функции устройств.

  8. Инструменты для разработки игрового процесса: Unreal Engine предоставляет API и инструменты для создания игрового процесса, такие как управление состояниями игры, обработка пользовательского ввода, коллизии, анимации и другие аспекты игровой логики.

  9. Сообщество и поддержка: Вокруг Unreal Engine существует активное сообщество разработчиков, которое предоставляет множество ресурсов, включая форумы, уроки, обучающие материалы и примеры кода. Также есть официальная документация и поддержка со стороны разработчиков Unreal Engine.

  10. Гибкость и масштабируемость: Unreal Engine предоставляет гибкие инструменты для создания разнообразных 2D проектов – от простых аркад до сложных платформеров или стратегий. Вы можете настроить параметры проекта (такие как физика, графика, звук) под свои потребности и масштабировать проект по мере необходимости.

Godot engine 4

Godot 4 - это бесплатный и открытый игровой движок, который предоставляет мощные инструменты для создания как 2D, так и 3D игр.

  1. Графика и анимация: Godot Engine 4 предоставляет возможности для работы с 2D спрайтами и анимациями. Вы можете импортировать спрайты в форматах PNG, JPEG и других, а также настраивать их свойства, такие как масштабирование, поворот и прозрачность. Для создания анимаций используется встроенный редактор анимаций с поддержкой кадровых анимаций и скелетной анимации.

  2. Физика: Для моделирования физики в 2D играх Godot Engine 4 использует свой собственный физический движок, который обеспечивает реалистичное моделирование коллизий, силы тяжести, трения и других физических эффектов в 2D пространстве. В новой версии движка улучшена поддержка жесткости и мягкости объектов, что позволяет создавать более реалистичные физические эффекты.

  3. Технология рендеринга: Godot Engine 4 использует собственный движок рендеринга, который обеспечивает высокую производительность и качество визуальных эффектов. Технология поддерживает текстуры, спрайты, шейдеры, освещение и другие важные аспекты визуализации.

  4. Аудио: Godot Engine 4 предоставляет инструменты для добавления и управления звуковыми эффектами и музыкой в 2D играх. Вы можете импортировать звуковые файлы различных форматов (например, WAV, MP3) и управлять их воспроизведением через API движка.

  5. Управление ресурсами: Godot Engine 4 обеспечивает удобное управление ресурсами, такими как спрайты, звуки, шрифты и анимации. Вы можете организовывать ресурсы в папки, настраивать их свойства (например, фильтры текстур), а также оптимизировать загрузку ресурсов для улучшения производительности.

  6. Интеграция с анимационными инструментами: Godot Engine 4 поддерживает импорт анимаций из популярных инструментов, таких как Spine и Adobe Animate. Это облегчает работу с сложными анимациями и позволяет использовать мощные инструменты для создания персонажей и объектов.

  7. Мобильная разработка: Godot Engine 4 обеспечивает возможность разработки 2D игр для мобильных устройств под управлением iOS и Android. Вы можете оптимизировать проект для различных разрешений экранов, управлять жизненным циклом приложения и использовать специфические функции устройств.

  8. Инструменты для разработки игрового процесса: Godot Engine 4 предоставляет API и инструменты для создания игрового процесса, такие как управление состояниями игры, обработка пользовательского ввода, коллизии, анимации и другие аспекты игровой логики.

  9. Сообщество и поддержка: Вокруг Godot Engine существует активное сообщество разработчиков, которое предоставляет множество ресурсов, включая форумы, уроки, обучающие материалы и примеры кода. Также есть официальная документация и поддержка со стороны разработчиков Godot Engine.

  10. Гибкость и масштабируемость: Godot Engine 4 предоставляет гибкие инструменты для создания разнообразных 2D проектов – от простых аркад до сложных платформеров или стратегий. Вы можете настроить параметры проекта (такие как физика, графика, звук) под свои потребности и масштабировать проект по мере необходимости.

Cocos creator

Cocos Creator:

  1. Графика и анимация: Cocos Creator предоставляет инструменты для работы с 2D спрайтами и анимациями. Вы можете импортировать спрайты в форматах PNG, JPEG и других, а также настраивать их свойства, такие как масштабирование, поворот и прозрачность. Для создания анимаций используется встроенный редактор анимаций с поддержкой кадровых анимаций и скелетной анимации.

  2. Физика: Cocos Creator предоставляет интеграцию с движком физики Box2D, который обеспечивает реалистичное моделирование физики в 2D играх. Этот движок обеспечивает учет коллизий, силы тяжести, трение и другие физические эффекты.

  3. Технология рендеринга: Для рендеринга 2D графики Cocos Creator использует свой собственный движок рендеринга, который обеспечивает высокую производительность и качество визуальных эффектов. Технология поддерживает текстуры, спрайты, шейдеры, освещение и другие важные аспекты визуализации.

  4. Аудио: Cocos Creator предоставляет возможности для добавления и управления звуковыми эффектами и музыкой в 2D играх. Вы можете импортировать звуковые файлы различных форматов (например, WAV, MP3) и управлять их воспроизведением через API движка.

  5. Управление ресурсами: Cocos Creator обеспечивает удобное управление ресурсами, такими как спрайты, звуки, шрифты и анимации. Вы можете организовывать ресурсы в папки, настраивать их свойства (например, фильтры текстур), а также оптимизировать загрузку ресурсов для улучшения производительности.

  6. Интеграция с анимационными инструментами: Cocos Creator поддерживает импорт анимаций из популярных инструментов, таких как Spine и DragonBones. Это облегчает работу с сложными анимациями и позволяет использовать мощные инструменты для создания персонажей и объектов.

  7. Мобильная разработка: Cocos Creator обеспечивает возможность разработки 2D игр для мобильных устройств под управлением iOS и Android. Вы можете оптимизировать проект для различных разрешений экранов, управлять жизненным циклом приложения и использовать специфические функции устройств.

  8. Инструменты для разработки игрового процесса: Cocos Creator предоставляет API и инструменты для создания игрового процесса, такие как управление состояниями игры, обработка пользовательского ввода, коллизии, анимации и другие аспекты игровой логики.

  9. Сообщество и поддержка: Вокруг Cocos Creator существует активное сообщество разработчиков, которое предоставляет множество ресурсов, включая форумы, уроки, обучающие материалы и примеры кода. Также есть официальная документация и поддержка со стороны разработчиков Cocos Creator.

  10. Гибкость и масштабируемость: Cocos Creator предоставляет гибкие инструменты для создания разнообразных 2D проектов – от простых аркад до сложных платформеров или стратегий. Вы можете настроить параметры проекта (такие как физика, графика, звук) под свои потребности и масштабировать проект по мере необходимости.

Комментарии (40)


  1. viruseg
    13.01.2024 06:42
    +10

    Зачем размещать статью в хабе Unity, если внутри статьи нет ни слова о Unity?


    1. GameD_Dobry Автор
      13.01.2024 06:42

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


  1. DanilinS
    13.01.2024 06:42
    +5

    GameMaker забыли. Но вставили Cocos Creator. Который в основном только в Китае популярен.

    И описания продуктов - как под копирку написано. Нет внятного и адекватного сравнения продуктов между собой.


    1. GameD_Dobry Автор
      13.01.2024 06:42

      GameMaker довольно хороший, но он платный, и в бесплатной версии, он не доступен для коммерческих проектов.


      1. DanilinS
        13.01.2024 06:42

        100$ единообразно за коммерческую лицензию это много?

        Тем более все разработку можно вести на бесплатной версии.


        1. GameD_Dobry Автор
          13.01.2024 06:42

          Вы абсолютно правы. В следущий раз я постараюсь сделать статью получше. Прошу прощения за не удобства. Спасибо, что не прошли мимо, и сделали замечание!


    1. GameD_Dobry Автор
      13.01.2024 06:42

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


  1. ParaMara
    13.01.2024 06:42
    -1

    Чтобы правильно понять статью, нужно быть специалистом по геймдеву знакомому со всеми движками, скорее всего. А я не специалист, просто немного посматриваю в эту сторону. Отсюда вопросы.

    Разве Unreal не ушёл, единолично, в высшую лигу со своими нанитами? Разве Defold не заявляет с гордостью что в 2023 году началась разработка 3D игр и в 2024 году она взлетит?

    Мобильная разработка как отдельный пункт выглядит странно, ну как отколовшийся кусок списка поддерживаемых платформ, которых пять - Windows, Мак, i(Pad)OS, Андроид, HTML5.

    Заодно отвечу на коммент выше. В хабе Unity самое место статье без единого слова о Unity если в названии есть слово «лучшие».


    1. GameD_Dobry Автор
      13.01.2024 06:42

      Извините, но Unreal 4 не использует наниты, таковым является Unreal 5, наниты были разработаны специально для Unreal 5, не желе для 4. В Defold, пока не вижу смысла о нем говорить про 3D, он пока ориентирован под 2D разработку, и у меня про 2D статья.


      1. ParaMara
        13.01.2024 06:42

        Но мы же говорим о движках вообще, а не о Unreal 1, Unreal 2, Unreal 3, Unreal 4, Unreal … О движках - отдельно, об истории движков - отдельно.


        1. GameD_Dobry Автор
          13.01.2024 06:42

          Нет, в моей статье указана Unreal 4, и про 2D разработку. наниты для 3D не желе для 2D.


          1. ParaMara
            13.01.2024 06:42

            Почему слов 2D нет в заголовке? И проблем с восприятием не было бы.


            1. GameD_Dobry Автор
              13.01.2024 06:42

              Загляните под заголовок.


              1. ParaMara
                13.01.2024 06:42

                Поймите разницу между в заголовке и под ним. Факт перед Вами…


                1. GameD_Dobry Автор
                  13.01.2024 06:42

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


                1. GameD_Dobry Автор
                  13.01.2024 06:42

                  Спасибо, что написали и навели на ошибку, эта моя первая статья, так что он требует доработок. Буду стараться лучше. Спасибо еще раз.


          1. Maks_K2
            13.01.2024 06:42

            Раз вы пишете только про Unreal 4, забыв про Unreal 5

            Тогда не стоит обзывать статью Лучшие движки 2024, что Unreal 5 в лучшие не входит????


            1. GameD_Dobry Автор
              13.01.2024 06:42

              Unreal 5 достаточно молодой движок, он слишком не оптимизирован, и в статье идет речь про 2D, пожалуйста загляните под заголовок, где я подробно описал, что статья про 2D. Unreal 5 использовать для 2D разработки нецелесообразно.


              1. SIISII
                13.01.2024 06:42
                +2

                Вообще-то, UE5 -- прямое продолжение UE4, и 95% кода у них идентичны. Номер версии UE меняют больше из маркетинговых, а не технических соображений, и между UE 4.1 и 4.26 разницы куда больше, чем между 4.26 и 5.0.

                Ну и русский язык стоит подтянуть. "Не желе" -- это в каком смысле, "не желе, а холодец"?


                1. GameD_Dobry Автор
                  13.01.2024 06:42

                  Спасибо за уточнение относительно связи между Unreal Engine 4 и Unreal Engine 5. Действительно, они имеют общий кодовую базу, и многие основные технологии и инструменты сохраняются между версиями. Извините за возможное недопонимание в моем предыдущем ответе. Что касается русского языка, вы абсолютно правы. В моем предыдущем ответе была допущена ошибка. "Не желе" не имеет смысла в контексте, который я использовал. Извините за путаницу. На данный момент Unreal Engine 5 находится в стадии раннего доступа, и хотя он уже обладает многими возможностями, некоторые разработчики могут столкнуться с проблемами оптимизации и стабильности. Извините ещё раз за недопонимание.


  1. ksotar
    13.01.2024 06:42
    +5

    "Мне всего 15 лет и я уже пишу статьи через ChatGPT" - ай-ай.


    1. GameD_Dobry Автор
      13.01.2024 06:42
      +1

      :)

      Я сам читал, и написал текст, и дал ChatGPT его дополнить, но недавно узнал много других движков, и расскажу об этом в следующем статье. я боялся, что моя статья не понравиться многим, и пойдет огромный хейт в мою сторону, из-за этого я попросил ChatGPT поработать с моими словами, и с форматом моего текста.


  1. savostin
    13.01.2024 06:42

    Вся эта вода прекрасно помещается в табличку.


    1. GameD_Dobry Автор
      13.01.2024 06:42

      Извините, если вам кажется, что моя статься имеет много воды. Постараюсь в следующий раз лучше.


  1. wl2776
    13.01.2024 06:42

    В UE4 используется не собственный физический движок, а PhysX от nVidia.

    Свой движок Chaos Destruction вместо PhysX они только в пятой версии начали использовать.


    1. GameD_Dobry Автор
      13.01.2024 06:42

      Physx, эта технология для 3D разработки, моя статья ориентирована изначально для 2D разработки.


      1. wl2776
        13.01.2024 06:42
        +1

        https://docs.unrealengine.com/4.27/en-US/AnimatingObjects/Paper2D/HowTo/Physics/

        Судя по официальной доке, это всё тот же PhysX, но с залоченной одной пространственной осью.

        Да и PhysicsCore плугин ничего другого не содержит.

        Вот Вам идея для эксперимента: попробовать реализовать одну и ту же игровую механику на PhysX и на Chaos и рассказать о результатах и полученном опыте.

        В исходниках UE4 есть отдельные ветки 4.26-chaos и 4.27-chaos. Я не заглядывал туда, но названия подсказывают, что там другая физика.

        Chaos тоже не идеален. Я в прошлые пару лет участвовал в проекте по созданию аналога Gazebo на UE, так там несколько раз пытались переехать на UE5, но так пока и остались на 4.26 из-за бага в Chaos, который рушил всю симуляцию.

        Еще интересная идея: https://www.stevestreeting.com/2020/07/26/using-bullet-for-physics-in-ue4/


        1. GameD_Dobry Автор
          13.01.2024 06:42

          Unreal engine 4 использует множество инструментов физики для 2D разработки, но основным инструментом paper 2D. PhysX в основном заточен под 3D. И на счет предложения попробовать реализовать одну и ту же игровую механику на PhysX и на Chaos меня заинтересовала.


          1. wl2776
            13.01.2024 06:42
            +1

            RTFS (read those f...ine sources). Открываем какой-нибудь исходник из плугина Paper2D и видим там ссылку на PhysicsEngine.

            // Copyright Epic Games, Inc. All Rights Reserved.
            
            #pragma once
            
            #include "CoreMinimal.h"
            #include "PaperSprite.h"
            #include "ComponentAssetBroker.h"
            #include "PaperSpriteComponent.h"
            #include "PhysicsEngine/BodySetup.h"   // <<---
            
            //////////////////////////////////////////////////////////////////////////
            // FPaperSpriteAssetBroker
            ....

            Файл BodySetup.h находится в Engine/Source/Runtime/Engine/Classes/PhysicsEngine/ и там нет ссылок ни на что, кроме PhysX и Chaos.

            Так что да, всё та же PhysX (или Chaos) с заблокированной одной пространственной осью. Т.е. в 2D-играх объектам просто не позволяют перемещаться в направлениях, выводящих за плоскость, в которой происходит гемплей.


  1. Randomly
    13.01.2024 06:42

    На самом деле отличная статья для новичков! Но не хватает таких движков как GameMaker а также хотелось бы знать все плюсы и минусы движков сразу а не находить минусы за работой уже.


    1. GameD_Dobry Автор
      13.01.2024 06:42

      Спасибо, что написали. В будущем я планирую написать больше о движках, и про много интересных движках подробно, так-как мне это нравиться. Спасибо вам за хороший отзыв!


  1. nodebrothers
    13.01.2024 06:42

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


    1. GameD_Dobry Автор
      13.01.2024 06:42

      В будущем я напишу про движки которые я использую, и буду делать это с удовольствием. Спасибо, что написали!


  1. Darling666
    13.01.2024 06:42

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


    1. GameD_Dobry Автор
      13.01.2024 06:42

      Прошу прощения. Мне самому кажется, что статья суховато выглядит, так-как эта моя первая статья, в будущем я напишу статью уже поинтереснее и по лучше. Спасибо, что не прошли мимо!


  1. Lekret
    13.01.2024 06:42

    Мне во интересно, статья про "лучше движки". Откуда тогда здесь Unreal, и если есть Unreal, то почему тут нет Unity? По-моему брать Unreal под 2D игры это оверкилл в принципе, потому что это не 2D движок изначально, но раз уж добавили, то чем Unity так отстаёт? Даже если вся статья строится только на личном опыте, то тогда откуда такой заголовок?


    1. GameD_Dobry Автор
      13.01.2024 06:42

      Извините за недопонимание. В статье про "лучшие движки" можно встретить различные мнения и предпочтения, и это действительно зависит от личного опыта каждого разработчика. Unreal Engine и Unity - оба отличные движки, и выбор между ними зависит от конкретных потребностей проекта. Unreal Engine изначально разрабатывался для создания 3D игр, но он улучшил свои возможности для разработки 2D игр. Он предлагает мощные инструменты для создания как 2D, так и 3D игр, включая поддержку Blueprint, которая делает процесс разработки более доступным для новичков. Unity, с другой стороны изначально был ориентирован на разработку 2D и 3D игр, и имеет широкую популярность среди разработчиков 2D проектов. Unity обладает простым интерфейсом, а также обширной документацией и сообществом. Оба движка имеют свои преимущества и недостатки, и выбор между ними зависит от конкретных потребностей проекта, опыта разработчика и других факторов. Поэтому важно проанализировать требования проекта, изучить возможности каждого движка и принять решение на основе этой информации.


      1. GameD_Dobry Автор
        13.01.2024 06:42
        +1

        Я ещё планирую написать статью в будущем, и уже про другие движки, но мне требуется много свободного время для этого. Спасибо, что не прошли мимо!


  1. HexGrimm
    13.01.2024 06:42
    +2

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


    1. GameD_Dobry Автор
      13.01.2024 06:42
      +2

      Благодарю! Спасибо, что не прошли мимо, и дали советов, я их учту, и усовершенствую свои следующие статьи! Спасибо еще раз!