Игровой движок для мобильных устройств/планшетов на Linux (Plasma Mobile, postmarketOS и др.)

Вопрос или проблема

Ищу и нуждаюсь в:

  • Работает на большинстве или всех Linux мобильных/планшетных устройствах, кроме Android (может работать и на Android), поддерживает сенсорные экраны, например, Plasma Mobile или postmarketOS

  • Можно программировать с помощью языка

  • Обработка сенсорного ввода

  • Возможности чтения и записи файлов, включая то, где находится домашняя директория (может быть как “создать свой собственный поиск домашней директории”)

  • Отрисовка в некоторой форме

  • Отрисовка текста, даже если это как имя приложения

  • Может знать, когда закрыть/завершить приложение

Хотелось бы, но можно и без этого:

  • Безплатное использование

  • Поддержка шейдеров для градиентов на GPU (очень хочется)

  • Вычислительные шейдеры на GPU

  • Ввод текста с помощью программной клавиатуры (очень хочется)

  • Аудиовыход, например, через динамики

  • Знание плотности пикселей во время выполнения

  • Многопоточность в программах, например, конкурентность

  • Почти один исходный код для всех платформ

  • Действительно не нужно, но доступ к нативным устройствам и датчикам

Существует ли что-то подобное? Это будет для игр, не могли бы вы направить меня туда, где указывается, что ваше предложение может быть тем, что мне нужно?

.

Ответ или решение

Когда речь идет о разработке игр для мобильных устройств на основе Linux, например, Plasma Mobile или postmarketOS, выбор подходящего игрового движка становится критически важным для успешного выполнения проекта. В контексте вашего описания, у вас есть определенные требования и желания относительно функциональности и возможностей, которые должен предоставить движок. Рассмотрим потенциальные варианты, которые соответствуют вашим критериям.

Теория

Идеальный игровой движок для платформ, подобных Plasma Mobile или postmarketOS, должен поддерживать следующее:

  1. Совместимость с различными Linux-платформами и возможность запуска на Android.
  2. Программирование на каком-либо языке.
  3. Обработка вводов с тачскрина.
  4. Работа с файловой системой для чтения и записи данных, включая определение домашней директории.
  5. Поддержка рендеринга, включая текстовый рендер.
  6. Управление состоянием приложения, включая завершение работы.

Дополнительно желаемые, но необязательные функции включают:

  • Бесплатное использование.
  • Поддержка шейдеров для рендеринга градиентов и вычислительных шейдеров.
  • Ввод текста с помощью экранной клавиатуры.
  • Аудиовывод.
  • Восприятие плотности пикселей на устройстве во время выполнения.
  • Поддержка многопоточности.
  • Единый исходный код для всех платформ.
  • Доступ к сенсорам и устройствам, если необходимо.

Примеры

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

  1. Godot Engine:

    • Совместимость: Один из наиболее универсальных движков с поддержкой различных платформ, включая Linux. Может компилироваться для Android.
    • Программирование: Использует собственный язык GDScript, а также поддерживает язык программирования C++ и VisualScript.
    • Обработка тачскринов: Имеет встроенную поддержку ввода с тачскрина.
    • Работа с файлами: Предоставляет API для чтения и записи файлов.
    • Рендеринг и текст: Возможности рендеринга 2D/3D и текстов.
    • Добавочные функции: Поддержка шейдеров, аудио, мультитрединг, и т.д.
    • Лицензия: Полностью бесплатен и открыт с лицензией MIT.
  2. LÖVE (Love2D):

    • Совместимость: Поддерживает основные настольные операционные системы, а также может быть адаптирован для работы на Linux-устройствах.
    • Программирование: Использует язык программирования Lua.
    • Функции рендеринга и текстовая поддержка: Имеет хорошие возможности для 2D-рендеринга и рендеринга текста.
    • Удобство использования: Прост в освоении и разработке.
    • Дополнительно: Поддержка аудио, базовая поддержка обработки ввода с тачскрина через платные и бесплатные плагины для мобильных устройств, работа с файловой системой.
  3. Unreal Engine:

    • Совместимость: Известен своей мощью и кросс-платформенностью, поддерживая Linux и мобильные устройства.
    • Программирование: C++ и собственная система визуального программирования Blueprints.
    • Особенности рендеринга: Современные функции рендеринга и работа с шейдерами.
    • Обработка ввода: Поддержка тачскрина и ввода с клавиатуры.
    • Лицензирование: Бесплатен до достижения определенного объема дохода.

Применение

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

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

Кроме того, для адаптации Godot под Linux устройства может потребоваться определенная настройка и работа с сообществом, поскольку Plasma Mobile и postmarketOS, возможно, не покрыты полноценно. Несмотря на это, открытая архитектура и активные форумы поддержки облегчают решение таких вопросов.

Заключение

В результате, существует несколько движков, которые могут удовлетворить ваши целевые потребности. Владение такими инструментами, как Godot или LÖVE, с их способностью работать кроссплатформенно и поддерживать основные игровые функции, даст вам важное преимущество в разработке игр для Linux-устройств. Все зависит от степени вашей готовности адаптироваться и экспериментировать с доступными инструментами.

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

Капча загружается...