Skip to main content

Что такое игровой движок OpenGL®?

Игровой движок Open Graphics Library® (OpenGL®) представляет собой программную библиотеку или другую коллекцию программного обеспечения, предназначенную для облегчения создания видеоигр путем предоставления полностью реализованной среды, которая может быть создана для создания пользовательского приложения. Основой любого игрового движка OpenGL® является интерфейс между логикой программирования более высокого уровня и библиотеками OpenGL®, которые, в свою очередь, обращаются к низкоуровневому графическому оборудованию. Некоторые движки в первую очередь ориентированы на легкий доступ к специальным графическим функциям и алгоритмам, включая оптимизированные функции для таких эффектов, как размытие, карты освещения или пользовательские шейдеры. Чаще всего игровой движок OpenGL® добавляет различные уровни функциональности через библиотеки более высокого уровня, языки сценариев или даже пользовательские среды разработки. Некоторые функции различных игровых движков OpenGL® включают процедуры пользовательского ввода, рендеринг теней, структуру графического пользовательского интерфейса (GUI), поддержку сети, физику и усовершенствованные механизмы синхронизации для плавной анимации.

При создании игр, использующих OpenGL®, будь то двумерные (2D) или трехмерные (3D), необходимо написать достаточное количество программного кода, чтобы интегрировать в основном статические библиотеки кода OpenGL® в динамическую игровую среду, в которой объекты изменяются и перемещаются, и пользователи могут взаимодействовать с виртуальным миром. Основная цель игрового движка OpenGL® состоит в том, чтобы устранить необходимость переписывать этот тип стандартного кода и вместо этого предоставлять согласованную и структурированную структуру для построения игры. OpenGL® содержит только функции для отображения или визуализации графики на устройстве, поэтому всю игровую логику необходимо обернуть вокруг этого ядра, включая разработку способа интеграции объектов, которые перемещаются в пределах сцены или которые можно добавлять или удалять из сцены. Структура, которая использует OpenGL® для динамических графических объектов, обычно называется графом сцены и является основой для многих реализаций игрового движка OpenGL®.

Еще одна причина, по которой разработчики игр могут использовать игровой движок OpenGL®, состоит в том, чтобы устранить необходимость объединения нескольких разнородных элементов игры в единую структуру, что может занять много времени для правильной работы. Пользовательский ввод с клавиатуры, элементы графического интерфейса, такие как окно для выбора параметров «да» или «нет», и даже оптимизации для некоторых популярных видеокарт могут быть включены в игровой движок OpenGL®, поэтому разработчикам не нужно разбираться в спецификациях оборудования для написания сам код. В качестве компромисса, движки, которые имеют такие сложные возможности, обычно очень дороги или имеют очень ограниченные лицензии для коммерческого использования, хотя некоторые игровые движки с открытым исходным кодом существуют.

Термин «игровой движок OpenGL®» также может относиться к законченной компьютерной игре, в которой удалено большинство или все файлы пользовательских данных, оставив только скомпилированный программный код. Это позволяет пользователю создавать пользовательскую графику, карты и иногда скриптовые события, которые загружаются игровым движком. В этом типе игрового движка игровой процесс обычно не может быть изменен в какой-либо степени и вместо этого служит платформой для пользователей для создания пользовательских уровней и контента, а не для отдельно стоящей оригинальной игры.