The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Компания Nokia выпустила Qt 3D 1.0 для работы с 3D-контентом в Qt-приложениях

11.04.2012 16:44

После трёх лет разработки представлен первый стабильный релиз проекта Qt 3D, в рамках которого подготовлены библиотеки, добавляющие в Qt кроссплатформенные средства для работы с 3D-контентом. При помощи Qt 3D разработчики могут добавить в свои программы трехмерные объекты, используя методы, аналогичные тем, что используются при работе с изображениями и битовыми картами.

Поддерживается как интеграция простых 3D-функций в обычные 2D-программы, так и создание специализированных 3D-приложений, манипулирующих сложными трёхмерными сценами, содержащими большие 3D-модели и применяющие эффекты, создаваемые при помощи шейдеров. Например, Qt 3D может быть задействован для создания пользовательского интерфейса систем трёхмерного моделирования. В будущем планируется реализация таких возможностей как формирование стереоскопического вывода, использующего специальное оборудование для вывода разных изображений для каждого глаза. Для демонстрации возможностей Qt 3D подготовлена серия примеров.

В состав Qt 3D входят две базовые библиотеки:

  • Qt3D - C++ API для выполнения таких функций, как рендеринг трёхмерных моделей, управление размещением объектов на сцене, загрузки файлов с моделями. Qt3D также может быть использован в качестве альтернативы прямому использованию OpenGL, предоставляющей полноценную С++ реализацию вместо Си-стиля кодирования OpenGL.
  • Qt3DQuick - QML-биндинг к API Qt3D для работы с 3D-контентом и создании трёхмерных анимационных эффектов на языке QML с использованием декларативного описания при определении логики работы с 3D-объектами;

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

Для работы с 3D-моделями в комплект включено специализированное приложение Asset Viewer, позволяющее наглядно сконфигурировать модели, используемые в программах на базе Qt 3D. Загрузка моделей и текстур в приложение производится в многопоточном режиме. Qt 3D 1.0 поставляется в виде надстройки над Qt 4.8.1. Для Qt 5 код Qt 3D развивается в рамках основного цикла разработки и поддерживает все доступные в Qt5 платформы (в Qt4 поддерживается только OpenGL).



  1. Главная ссылка к новости (http://labs.qt.nokia.com/2012/...)
  2. OpenNews: Началось альфа-тестирование Qt 5
  3. OpenNews: Разработчики Qt представили инструментарий для сборки проектов qbs
  4. OpenNews: Релиз Qt SDK 1.2 и Qt Creator 2.4.1. Проект по созданию визуальных эффектов для Qt
  5. OpenNews: Nokia перевела Qt на открытую модель разработки и управления проектом
  6. OpenNews: Релиз Qt 4.8
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/33580-qt
Ключевые слова: qt, 3d, opengl, graph
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (29) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, ололош (?), 17:33, 11/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Давно пора.
     
  • 1.2, Зенитар (?), 17:33, 11/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –6 +/
    Рамочка окна "Пластик". Она из KDE 3, или в KDE 4 так же выглядит?
     
     
  • 2.3, NicK (?), 17:38, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    какую захочешь рамочку такую и поставишь
     
  • 2.15, ach (ok), 21:22, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Также.
     

  • 1.4, Аноним (-), 17:41, 11/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ох... скоро мы будем смотреть на соревнования 3D-движков основанных на QML и WebGL
     
  • 1.5, Аноним (-), 17:57, 11/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Не, ну что за детский сад? Это просто не серьёзно.
     
     
  • 2.6, Lain_13 (?), 18:17, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Зато в кедах вы скоро увидите настоящие трёхмерные контролы. Вот радости-то вам будет…
     
     
  • 3.7, Vkni (ok), 18:22, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Зато в кедах вы скоро увидите настоящие трёхмерные контролы. Вот радости-то вам
    > будет…

    Вы знаете, я уже похоже не увижу. Только если на скришнотах.

     
     
  • 4.8, vlrv (ok), 18:27, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +5 +/
    В Ваших словах столько обречённости и тоски...
     
     
  • 5.9, Vkni (ok), 19:02, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Ну обречённость есть, а тоски нет. :-)

    Всё не могу новый WMaker в Sisyphus отправить, а надо бы. Но сперва i3 запакую. :-)

     
  • 4.13, Аноним (-), 21:03, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Только если на скришнотах

    Скорее на слайдшоу

     
  • 2.10, СуперАноним (?), 19:22, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    В чём детский сад, в том, что, например, LibreCAD сможет из 2D превратиться в 3D CAD ?
     
     
  • 3.11, Vkni (ok), 19:25, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ну вот в этих ожиданиях и есть детский сад.
     

  • 1.14, Аноним (-), 21:22, 11/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Qt очень продуманный фреймворк. Я рад что появился модуль Qt 3D.
     
  • 1.16, guest (??), 22:10, 11/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Еще один костыль ? Зачем тратить 3 года на ЭТО вместо помощи уже существующему OpenGL ?
     
     
  • 2.17, grondek (?), 22:16, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Это высокоуровневая обертка для OpenGL. Ну не хочу я, например, возиться с функциями OpenGL и прибивать гвоздями к нему свой код. Зато хочу относительно простым способом нарисовать крутящийся кубик на окошке или кнопочку типа трехмерную.
     
     
  • 3.24, Vkni (ok), 12:39, 12/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Зато хочу относительно простым способом нарисовать крутящийся кубик на окошке или кнопочку типа трехмерную.

    Объясните, пожалуйста, какой в этом сакральный смысл? В этих крутящихся кубиках или трёхмерных кнопках? Вот Direct3D, о котором тут говорят, существует уже очень много лет. Но вот в обычных программах Win32, которыми я пользуюсь, как-то ни кубов, ни трёхмерных кнопок нет.

     
     
  • 4.25, aikus (?), 14:00, 12/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >Объясните, пожалуйста, какой в этом сакральный смысл?

    Есть смысл, когда ты пишешь софтину, например, для проектирования мебели, и этой софтине вменяют 3-х мерное моделирование результатов.

    Это один из примеров, задач, где подобное может пригодиться много и со временем их количество и важность будет только расти.

     
     
  • 5.26, guest (??), 17:00, 12/04/2012 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Все кому нужен был такой функциона УЖЕ использовали его спомощью OpenGL, а не ждали у моря погоды на протяжение 3 лет(+ сколько его там еще до ума доводить будут)
    Вы же не хотите сказать, что ВНЕЗАПНО все разработчики ринутся переписывать 3Д софт под это ? А для начальных проектов врядли станут сужать заведомо малую аудиторию, кроме just_for_fun или мелких проектов - а это уже частный случай ради которого использовать новый велосипед = выкинуть кучу полезного времени, потому как если программа станет популярной всеравно ПРИДЕТСЯ переписывать чтоб работало шустрее и не тащила за собой КДЕ(мы все понимаем что это будет там гвоздями прибито).
     
     
  • 6.28, Аноним (-), 17:49, 12/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Упертость гномеров непреодолима. Если чего-то нет в гноме - значит нужно.
     
     
  • 7.30, Аноним (-), 17:55, 12/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >значит нужно.

    значит не нужно.

     
  • 6.32, aikus (?), 07:27, 13/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >Все кому нужен был такой функциона УЖЕ...

    А вы учли тех, кому нужен такой софт будет только завтра или через год?
    >Вы же не хотите сказать, что ВНЕЗАПНО все разработчики ринутся переписывать 3Д софт под это ? А для начальных проектов врядли станут сужать заведомо малую аудиторию...

    Внутрифирменные проекты вы тоже не рассматриваете? Для них заведомое сужение, QT-библиотека проблемой не являются.

    Блин, вообще не понимаю в чём проблема, появился инструмент. Если он для Вашей задачи не подходит, это значит, что он не подходит для Вашей задачи, и Вам надо подобрать другой инструмент. Не надо тролить тех, кому он помогает.

    Лично я в своё время пользовался другим инструментом, т.к. этого ещё не было. А сейчас есть и можно к нему присмотреться и сравнить.

     
  • 6.37, Олег (??), 15:14, 03/05/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Это Вы так троллите? При чем здесь кеды, когда там чистый Qt? А по уровню оно выше openGL и может использовать хоть direct3d -  программист работает не с загрузкой вершин/нормалей или компиляцией шейдеров, а с моделями и сценой, т.е. это уже аналог графического движка
     
  • 5.27, Vkni (ok), 17:49, 12/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Есть смысл, когда ты пишешь софтину, например, для проектирования мебели, и этой
    > софтине вменяют 3-х мерное моделирование результатов.

    Может быть я не прав, но этих софтин с 3-х мерным моделированием мебели сейчас хоть попой ешь.

    > Это один из примеров, задач, где подобное может пригодиться много и со
    > временем их количество и важность будет только расти.

    Ну вот экспериментальный факт - Direct3D появился достаточно давно, а большая часть народу его не использует.

    То есть, я не против того, что над OpenGL сделали удобную обёртку. Мне не нравится, что эта обёртка почему-та впихнута в библиотеку Qt - библиотеку управляющих компонент средней хреновости.

     
     
  • 6.29, Аноним (-), 17:54, 12/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Может быть я не прав, но этих софтин с 3-х мерным моделированием мебели сейчас хоть попой ешь.

    Тебе пример привели. Ты хотел чтобы перечислили все варианты?

    > Ну вот экспериментальный факт - Direct3D появился достаточно давно, а большая часть народу его не использует.

    Ссылку дай.

    > Мне не нравится, что эта обёртка почему-та впихнута в библиотеку Qt - библиотеку управляющих компонент средней хреновости.

    Нууу конечноооо! С этого сразу бы и начал. Надо было сишный OpenGL обернуть на сишном гтк.

     
  • 2.18, добрый дядя (?), 23:01, 11/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Еще один костыль ? Зачем тратить 3 года на ЭТО вместо помощи уже существующему OpenGL?

    прежде чем такое писать, я советую ознакомиться с этим Qt3D... я пробовал эту штуку еще на ранних стадиях, это реально аналог direct3d, очень приятный API

     
     
  • 3.38, Vova (??), 02:13, 23/05/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >> аналог direct3d
    > очень приятный API

    что?

     

  • 1.21, Sauron (??), 00:12, 12/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Шикарная либа, использовал начиная с tpшки для одной софтины. Благодаря этому время на разработку вьювера в разы сократилось.
     
  • 1.22, ProfX (ok), 08:36, 12/04/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Очень радует что наконец можно обойтись без прямых вызовов OpenGL.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру