- PVSM.RU - https://www.pvsm.ru -
Привет! Сегодня я хочу рассказать о своём проекте - "Game Engine 3", программной оболочке для создания двумерных игр и приложений.
Game Engine 3 - это инструмент для создания 2D-игр с физикой и анимацией. С открытым исходным кодом, интуитивным редактором визуального программирования на основе нодов и возможностями работы с графикой, физикой и анимацией, он подходит как для новичков, так и для профессионалов. В этой статье разберем, что делает эту оболочку уникальной.
Для создания оболочки Game Engine 3 использовался язык программирования Python, а также язык Cython (который даёт возможность работать с python-подобным языком, при этом имея строго типизированные переменные, вследствие чего более высокую производительность).
Игровой движок, который обеспечивает рендеринг спрайтов, обработку коллизий, физики и анимаций.
Оболочка, позволяющая создовать проекты.
Сайт, в котором находится документация по использованию оболочки.
Игровые движки — это сердце любой современной игры. Они определяют, насколько быстро и удобно разработчики смогут воплотить свои идеи в жизнь. Оболочка Game Engine 3 имеет собственный физический движок, в котором реализована проверка коллизий (соприкосновение) объектов, взаимодействие объектов между собой (возможность одним объектом передвигать другие). Система рендеринга использует возможности Pygame для отрисовки графики на экране. Спрайты и текстуры реализованы с помощью возможностей Pillow.
Оболочка имеет свой редактор объектов (изменение их параметров), сцен (возможность добавлять объекты и добавлять им определённые свойства) и функций (позволяет писать программы с помощью нодов).
На сайте поддержки проекта https://artyom7774.github.io [1] можно найти информацию по оболочке, описание нодов и функций.
Оболочка предназначена для написания приложений на Windows (в эксплуатации) и Linux (в бета тесте). Скачать программу можно на сайте: https://artyom7774.github.io [1]. Для установки распакуйте архив и запустите Game Engine 3.exe, при первом запуске установится Python и необходимые библиотеки.
На начальном экране программы есть 3 вкладки меню: Файл, Проект и Помощь. Во вкладке файл можно создать и открыть проект, также создать проект из шаблона.
После открытия проекта слева нас встречает вкладка с каталогом проекта. В файле project.cfg находятся основные настройки проекта: размер, название и иконка окна, установить. максимальное fps и tps, полноэкранный режим и начальную сцену. В файле collision.cfg можно установить коллизии разных групп объектов.
Программа позволяет создавать объекты, сцены и функции. В объектах можно изменять их параметры, настраивать хитбоксы, спрайты, анимации. Сцена позволяет добавлять объекты и установить объект, на котором будет привязана камера. Также функции - это редактор, написанный на нодах, позволяющий создавать различные алгоритмы.
Существует 2 типа объектов: статический и динамический. В параметрах динамических объектах есть скорость, сила прыжка, гравитация и сила торможения. Также у каждого объекта есть масса, которая используется для взаимодействия объектов между собой. Данные свойства позволяют делать хорошую физику и интересные игры.
Предполагается, что статические объекты не будут передвигаться и участвовать в физике
Остановимся на анимации. В меню для редактирования анимации можно создавать группы. В каждой группе есть свои спрайты, которые будут проигрываться при анимации. А также есть настройки данной группы анимации: будет ли она повторяться, её скорость и будет ли анимация запускаться сразу же при запуске сцены.
Остановимся на функциях, которые представлены в качестве редактора, где можно создавать ноды (узлы) и соединять их входы и выходы для написания различных алгоритмов. Например, можно сделать, чтобы при начале игры выводился в консоль текст "Hello World!". Ноды разделены на категории: события, циклы, работа с текстом, числами, логика, объекты, анимации, другое, работа со списками и словарями. На данный момент реализовано более 50 нодов. Также следует отметить нод, позволящий писать код на Python.
С помощью оболочки Game Engine 3 реализованы несколько простых проектов (Google Dino, Змейка и Платформер), как демонстрация возможностей продукта. Данные примеры опубликованы в отдельном репозитории на github [2].
Возможность создавать игры и приложения без написания текстового кода.
Удобный редактор и простой интерфейс, понятные новичкам.
Сайт, на котором размещена информации про движок и гайд для создания первого проекта.
Возможность написания шейдеров.
Возможность создавать проекты на Linux, IOS, Android, Web.
Новые ноды для увеличения функциональности редактора.
Возможность создавать спрайты внутри движка.
Game Engine 3 — это не просто инструмент, а экосистема для быстрой разработки 2D‑игр. С его нодовым редактором, мощной физикой и гибкой анимацией, он сокращает время на рутину, позволяя сосредоточиться на творчестве. Попробуйте движок в действии — возможно, это ваш новый фаворит.
Автор: artyom7777
Источник [3]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/python/417221
Ссылки в тексте:
[1] https://artyom7774.github.io: https://artyom7774.github.io
[2] опубликованы в отдельном репозитории на github: https://github.com/artyom7774/Game-Engine-3-projects
[3] Источник: https://habr.com/ru/articles/902426/?utm_source=habrahabr&utm_medium=rss&utm_campaign=902426
Нажмите здесь для печати.