-
Notifications
You must be signed in to change notification settings - Fork 34
osgQtQuick 2.0 Russian
English | Русский
Это оригинальная статья. Она написана на Русском. Если кто-то хочет перевести на другие языки, то милости просим.
Встречайте osgQtQuick 2.0!
// Qt
import QtQuick 2.0
// OpenSceneGraph
import osg 2.0 as OSG // Core types
import osgGA 2.0 as OSGGA // GUI Abstraction
import osgViewer 2.0 as OSGViewer // Viewer functionality
// Root item - 3D scene view
OSGViewer.View {
// Default view size
width: 640; height: 480
// Set favorite camera manipulator
cameraManipulator: OSGGA.TrackballManipulator {}
// Set scene for rendering
sceneData: OSG.Geode {
OSG.ShapeDrawable {
color: Qt.rgba(1, 1, 0, 1)
shape: OSG.Box {
halfLengths: Qt.vector3d(0.5, 0.5, 0.5)
}
}
}
}
Тестовый sokoban.qml скрипт.

Первые попытки интеграции OpenSceneGraph в Qt Quick были предприняты в далеком 2013 году. Они привели к появлению первой реализации и демонстрационного приложения. О нем я уже писал в wiki здесь. Демонстрация получилась очень даже не плохой и вызвала некоторый интерес. Будем считать, что это была версия 1.0.
Убедившись в работоспособности технологии и получив некий задел в знаниях Автор (Я) взялся за рефакторинг проекта с целью получить osgQtQuick 2.0.
На данный момент проект уже достиг определенных результатов. Зрелость проекта оценивается как Бета (для некоторых платформ).
Уже есть частичное отражение OpenSceneGraph С++ API модулей osg, osgDB, osgGA, osgViewer (и даже osgEarthUtil) в qml модули.
Развивается qml документация модулей.
Главный репозиторий доступен на хостинге Автора или через git:
git clone git://podsvirov.pro/osg/osgqtquick.git
Активное зеркало на github:
http://github.com/podsvirov/osgqtquick
Автор будет рад вашим PRам.
Пожалуй, лучше чем qdoc документировать qml коде еще никто не умеет.
С актуальной версией документации можно ознакомиться здесь.
Руки чешутся попробовать, но лень собирать. Не расстраивайтесь.
Если вы пользователь Windows по вам поможет ПаПочка!
Если вы сидите под Linuxом, то сами сможете собрать и установить.