1

Представлен релиз кроссплатформенного фреймворка для разработки 3D-приложений PixelLight.

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

Написан на С++. Основными его достоинствами являются гибкость и расширяемость. Это не только 3D-движок, но еще и законченный фреймворк, позволяющий объединить всё, что необходимо разработчику, не беспокоясь о наличии и версиях внешних библиотек («всё свое ношу с собой»), API или используемой операционной системе. Нижележащие особенности систем и библиотек скрыты за мощной системой компонентов, которая существенно упрощает создание приложений для различных платформ. Этот набор компонентов может применяться для таких аспектов приложения, как рендеринг, звук, физика, сеть, скриптинг и прочее.

Разработка была начата в 2002 году, первый опубликованный релиз (0.9) стал доступен в августе 2010. Основное внимание в версии 1.0.0 было уделено исправлению ошибок.

В подсистему визуализации была добавлена поддержка тесселяции, объемного рендеринга и инстансинга геометрии. Благодаря сообществу был существенно переработан установщик SDK для Linux (на данный момент существует только в виде .deb пакета) — по заверениям разработчиков, достигнут уровень «искаробочности». Для приложений, созданных с использованием SDK, написаны shell-скрипты, с использованием которых оно может быть запущено без необходимости каких-либо изменений в системе.

С полным списком изменений можно ознакомиться здесь.

Основные особенности:

  • Поддерживаемые платформы: Microsoft Windows (XP, Vista, 7), Linux, Android, Maemo 5 (экспериментально);

  • Подсистемы визуализации: OpenGL, OpenGL ES 2.0, поддерживается отложенный рендеринг;

  • Плагины:

    • гибкая архитектура плагинов;

    • фронтенды: один для собственного GUI PixelLight, один для Qt, и нулевой фронтенд, который используется, например, при рендеринге в фоновый буфер;

    • вывод звука: OpenAL, FMOD и FMODEx;

    • физика: Newton, ODE и PhysX;

    • поддержка множества устройств ввода, например, SpaceNavigator и WiiMote;

    • интеграция стороннего промежуточного ПО, например, SPARK как альтернативный движок систем частиц, или libRocket для интерфейса на HTML и CSS;

    • поддержка Lua и экспериментальных бекендов для Javascript(V8), Python и AngelScript.

  • Продвинутые системы интроспекции, плагинов и компонентов;

  • Плагин для экспорта из Autodesk 3ds Max.

Источник »
Главная ссылка к новости »