Publish durable applications
This commit is contained in:
60
ru/news/2017-05-12_osg-sample.md
Normal file
60
ru/news/2017-05-12_osg-sample.md
Normal file
@@ -0,0 +1,60 @@
|
||||
Title: Приложение OpenSceneGraph
|
||||
Date: 2017-05-12 00:00
|
||||
Category: News
|
||||
Slug: osg-sample
|
||||
Lang: ru
|
||||
|
||||
![Ракета в дали][screenshot]
|
||||
|
||||
|
||||
Эта статья описывает создание самоучителей по сборке приложения OpenSceneGraph на Linux, macOS, Windows и Android в апреле 2017.
|
||||
|
||||
Предыдущие самоучители описывали установку OpenSceneGraph на Linux, macOS, Windows и отображение модели с помощью стандартного инструмента **osgviewer**. На этот раз результатом нашей работы стало [приложение OpenSceneGraph](https://github.com/OGStudio/openscenegraph-cross-platform-guide-application), которое работает на Linux, macOS, Windows и Android.
|
||||
|
||||
Приложение очень простое. Оно умеет следующее:
|
||||
|
||||
1. Создание окна для отрисовки
|
||||
1. Загрузка модели
|
||||
1. Отрисовка модели с помощью простых шейдеров GLSL
|
||||
1. Перемещение модели с помощью мыши на Linux, macOS, Windows и пальца на Android
|
||||
|
||||
|
||||
|
||||
Создать самоучители для Linux, macOS, Windows было настолько простой и понятной задачей, что мы справились с ней за пару недель. Оставшуюся половину месяца мы потратили на создание самоучителя для Android.
|
||||
|
||||
Наша [первая успешная сборка под Android][oct16_article] в прошлом году требовала множество неочивидных телодвижений. В этот раз мы хотели получить более чистый, быстрый и дешёвый подход.
|
||||
|
||||
Нам это удалось. В результате всё, что нужно для работы приложения OpenSceneGraph на Android, уместилось в набор из нескольких файлов и небольших изменений для стандартного проекта Android Studio (с поддержкой C++).
|
||||
|
||||
Краткий перечень файлов:
|
||||
|
||||
1. Поверхность GLES2
|
||||
1. Activity для отрисовки на этой поверхности
|
||||
1. Интерфейс Java для нативной библиотеки
|
||||
1. Реализация нативной библиотеки на C++
|
||||
1. Файл CMake для сборки нативной библиотеки
|
||||
1. Activity layout
|
||||
1. Модель для отрисовки
|
||||
|
||||
|
||||
|
||||
Краткий перечень изменений проекта:
|
||||
|
||||
1. Обновление Android manifest для использования GLES2 и Activity
|
||||
1. Использование файла CMake нативной библиотеки в проектном файле CMake
|
||||
|
||||
|
||||
|
||||
Документация OpenSceneGraph предполагает сборку OpenSceneGraph вне Android Studio с помощью CMake. Такой подход имеет следующие ограничения:
|
||||
|
||||
1. Ручная сборка OpenSceneGraph под каждую платформу
|
||||
1. Ручное копирование собранных библиотек OpenSceneGraph в проект Android Studio
|
||||
|
||||
|
||||
|
||||
Наш подход включает в себя сборку OpenSceneGraph для тех платформ, для которых собирается проект Android Studio. К тому же, OpenSceneGraph используется как часть проекта, поэтому нет никакой дополнительной рутины: достаточно просто пересобрать проект, и всё готово.
|
||||
|
||||
На этом мы заканчиваем описание создания самоучителей по сборке приложения OpenSceneGraph на Linux, macOS, Windows и Android в апреле 2017.
|
||||
|
||||
[screenshot]: ../../images/2017-05_osg-sample.png
|
||||
[oct16_article]: 2016-october-recap.html
|
||||
Reference in New Issue
Block a user