Портирование Приложений Opengl Es В Магазин Windows

Если у вас есть готовое приложение, разработанное с использованием OpenGL ES, и вы задумались о том, чтобы разместить его в Магазине Windows, то у меня для вас хорошие новости.

Команда Microsoft Open Technologies в последнее время работает над адаптацией проекта.

УГОЛ для Магазина Windows и Магазина Windows Phone. Это означает, что уже написанный вами код на основе OpenGL ES 2.0 можно повторно использовать, и ваше приложение для Магазина Windows может быть выпущено быстрее.



Что такое УГОЛ.

Почти родной графический движок — это разработанная Google оболочка OpenGL ES поверх DirectX 9-11. ANGLE используется в качестве основного бэкэнда WebGL для Google Chrome и Mozilla Firefox на платформе Windows. Chrome также использует ANGLE для всех операций рендеринга в Windows, включая аппаратное ускорение Canvas2D и поддержку графических операций Native Client.

ANGLE для приложений Магазина Windows

Основным API для работы с графикой на платформе приложений Windows Store и Windows Phone Store является DirectX. Этот API является ядром платформы, стал частью операционной системы и зарекомендовал себя во многих приложениях.

Но если у вас уже есть приложение, разработанное с использованием OpenGL ES, то его перевод на DirectX потребует очевидных затрат. Чтобы облегчить эту задачу, команда Microsoft Open Technologies подготовила вилка УГОЛ (вероятно, скоро он станет частью основной ветки ANGLE), что позволяет большей части кода OpenGL ES оставаться в Windows RT и Windows Phone 8.0. С помощью этого порта библиотека уже успешно перенесена на Windows RT. Кокос2D-X .



С чего начать и некоторые технические моменты

Исходные файлы форка расположены по адресу https://github.com/stammen/angleproject .

После загрузки откройте файл \samples\RotatingCube\RotatingCube_winrt_2013.sln в Visual Studio 2013. Это пример, из которого становятся понятны все аспекты организации инфраструктуры OpenGL-приложения для Магазина Windows. Основной точкой входа для WinRT является класс Windows::ApplicationModel::Core::IFrameworkView, как и для приложений DirectX. Метод RotatingCube::Run() — это основной цикл обработки и рендеринга сообщений.

Класс CubeRenderer — основной класс для работы с графикой; он реализует методы инициализации (CreateResources()) и отображения кадров изображения на экране (Update()).

Также следует учитывать, что Windows 8.0 и Windows Phone 8.0 не имеют API для компиляции шейдеров во время выполнения приложения.

Необходимо заранее подготовить шейдерные блобы.

В Windows 8.1 таких ограничений нет и вы можете использовать динамические шейдеры.

Если у вас еще нет общего представления о разработке для Магазина Windows, настоятельно рекомендую начать с изучения архитектуры приложений И пример приложения для DirectX .

Теги: #OpenGL ES #Windows 8.1 #windows phone 8 #Разработка игр

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.