Проект Qt объявил (http://blog.qt.io/blog/2017/10/11/qt-3d-studio-source-code-p.../) о публикации исходных текстов (https://codereview.qt-project.org/gitweb?p=qt3dstudio/qt3dst...) и формировании первого предварительного выпуска продукта Qt 3D Studio, предназначенного для создания трёхмерных интерфейсов пользователя. Изначально продукт был разработан компанией NVIDIA и получил известность как NVIDIA Drive Design. В феврале NVIDIA передала проект в руки сообщества Qt и одобрила его перевод в разряд свободного ПО. Инструкции по сборке Qt 3D Studio подготовлены (https://codereview.qt-project.org/gitweb?p=qt3dstudio/qt3dst...) для Linux, Windows и macOS.
Система предоставляет инструменты для быстрого создания прототипов интерфейса и включает в себя в том числе редактор со шкалой времени, позволяющий создавать эффекты с анимацией и по ключевым кадрам. Поддерживается импорт ресурсов из таких популярных пакетов, как Photoshop, Autodesk Maya и The Foundry MODO. В состав также входит обширная библиотека готовых материалов и эффектов.Создаваемые в Qt 3D Studio макеты интерфейса могут быть интегрированы с Qt Quick и другими модулями фреймворка Qt. Поддерживается два метода работы: интеграция подготовленных 3D-сцен в приложения на Qt Quick и отрисовка окон Qt Quick на 3D-элементах в виде текстур. Во время работы с 3D-сценой поддерживается бесшовное редактирование элементов Qt Quick в Qt Creator Designer. Приложения могут отслеживать изменения состояния 3D-интерфейса через штатный API Qt Quick.
Задержка в восемь месяцев с момента передачи проекта в руки Qt объясняется проведением значительной работы по превращению переданного кода в кросс-платформенный продукт. Полученный от NVIDIA код поддерживал работу только в Windows и был завязан на фреймворке MFC, что потребовало проведения портирования на Qt перед размещением кода в публичном репозитории. Попутно была проведена чистка привязок ко многим внешним библиотекам, так как их функциональность могла быть воспроизведена силами Qt.
Также выполнена работа по оптимизации производительности кода отрисовки в 3D, внесены мелкие модернизации в интерфейс, расширен API для интеграции с проектами на Qt/QML и подготовлен новый C++ API. В просмотрщик моделей Qt 3D Studio Viewer добавлена поддержка удалённой отладки, дающая возможность на внешнем устройстве (например, Android-планшете) динамически в live-режиме наблюдать все вносимые в проект изменения.
Первый официальный релиз планируется выпустить в конце ноября. На весну следующего года намечен второй выпуск, в котором ожидается полная замена движка отрисовки 3D, который будет заменён на новый движок, работающий поверх API Qt 3D (https://doc.qt.io/qt-5/qt3d-index.html).URL: http://blog.qt.io/blog/2017/10/11/qt-3d-studio-source-code-p.../
Новость: http://www.opennet.me/opennews/art.shtml?num=47372
Прикольно конечно, но зачем?
Ты не поверишь, но> для создания трёхмерных интерфейсов пользователя
Так зачем нужны трехмерные интерфейсы? Двухмерная графика проще для человеческого восприятия.
Дополненная реальность, например.
Вам нравиться ходить с кастрюлей на морде?
А тебя будут спрашивать?
Кстати - зачем ходить? Виси себе в коконе ... ;-)
Намёк: компьютеры со времём ENIAC слегка поуменьшились.
КПД уж точно уменьшился.
Она проще для восприятия на 2D-мониторе. И дело тут не в восприятии как таковом, а именно в мониторе.
А где написано что можно использовать только с обычным монитором?
Видимо, где-то между строк. Не знаю, где ещё ты мог это увидеть.
> И дело тут не в восприятии как таковом, а именно в мониторе.!в мониторе!
А есть еще смартфоны/планшеты, 3D телики, очки виртуальной реальности, проекционные экраны...
> Она проще для восприятия на 2D-мониторе. И дело тут не в восприятии
> как таковом, а именно в мониторе.Дело далеко не только в мониторе. Двумерный объект мы можем увидеть сразу целиком и понять его структуру — он весь развернут перед нами, трехмерный же объект наш мозг восстанавливает либо из плоской проекции (2D-монитор, бумага и др.), либо из стереоизображения (обычное зрение, так называемые "3D"-очки, системы виртуальной реальности). Если визуализируемая информация не является трехмерной по существу, выходить в третье измерение нет смысла. И даже для трехмерных данных часто удобнее показывать третье измерение каким-то другим способом (например, цветом или изолиниями), т. к. это опять же дает возможность увидеть все сразу без необходимости рассматривать объект с разных сторон.
> И даже для трехмерных данных часто удобнее показывать третье измерение каким-то другим способом (например, цветом или изолиниями), т. к. это опять же дает возможность увидеть все сразу без необходимости рассматривать объект с разных сторон.Свет/тень и перемещение дают возможность сразу оценить размеры и расстояния, в отличие от изолиний, в которые нужно вникать и представлять, как выглядит объект или поверхность в реальности.
Когда это действительно нужно. Но зачем это в пользовательском интерфейсе, кроме непосредственной визуализации трехмерного объекта, с которым работает пользователь (например, в какой-нибудь САПР)? Зачем могут быть нужны трехмерные элементы управления? Какой смысл в 3D-спидометре, изображенном в посте, если плоский можно сделать более компактным, хорошо читаемым и с меньшим количеством ненужного визуального шума?
А в трёхмерный можно всунуть больше свистелок! И это, то чего пипл хавает! (С)
В видеоиграх HUD.
> В видеоиграх HUD.Ща и покруче развлечения бывают, в темном помещении и даже на улице вечером можно мощным проектором дорисовать интерьер или кусок пейзажа. Вписанный в имеющуюся геометрию и дополняющий ее. Особый шик - анимированное 3D. А знаешь, круто выглядит. Нормальное такое дополнение реальности, без шлемов и очков. И если в паре метров от тебя "обвалится" стена, поначалу ты можешь серануть кирпичей если дизайнер не халтурил.
Это ты так порнуху с понями и аниме-хентай описал?
где ты видел светящиеся ночные пейзажи и светящиеся стены?
> увидеть все сразу без необходимости рассматривать объект с разных сторон.Не всегда нужно видеть всё сразу. В грамотно спроектированном 3D-интерфейсе это не нужно, — достаточно видеть с двух точек, для чего тебе и дадены два глаза.
Смотря для чего проще. Заходишь в магазин машину купить, тебе дают планшет где ты выбираешь ее и крутишь вертишь, меняешь цвета, пока консультант занят. Это уже готовое решение и не тянет за собой, что-то тяжелое типа Unreal, и справиться с такой задачкой может и не опытный в графике программист.
Ну и конечно, как отписались, ВР, который в том или ином виде со веременем войдет в обиход. С одной стороны не скоро, а с другой уже все будут знать, что на Qt это можно реализовать и ктому времени они его хорошо обкатают, и будут использовать его. Как говорится, кто первый того и тапки.
ну вот тут ребята пилят автомобильные интерфейсы чтоб крутить их на нвидия драйвпехе.. результат сомнительный в машинах вся эта анимация вообще не в тему.. ну может для очков виральности сгодится..
> Двухмерная графика проще для человеческого восприятия.Что заставляет тебя так думать? То, что школьная геометрия начинается с планиметрии, или что-то ещё?
Вообще-то, хронологически, трёхмерная графика появляется в жизни человека раньше двумерной: первые опыты работы человека с входным сигналом от сетчаток глаз -- это опыты построения трёхмерной картинки. И потом он постоянно работает с трёхмерными объектами. Некоторые "гениальные" создатели детских развивающих игр пытаются изменить это, и делают развивающие двумерные игрушки, но они так делают, скорее всего, потому что разделяют твои заблуждения. Реально же, человек сталкивается с двумерной графикой тогда, когда впервые пытается изобразить трёхмерный объект на бумаге, и у него из этого ничего не выходит. Точнее выходит, но иногда в результате получается полупрозрачный объект, типа рисунка человека, в котором сочетается тело человека и поверх тела нарисованная одежда, иногда объект оказывается нарисованным в развёртке, то есть дом у которого видны все четыре стены. Потом давление культуры и социума одолевает, и человек научается думать двумерными образами. Но более естественными для него остаются трёхмерные образы, человек мыслит ими, и представляя дом, представляет сразу все четыре стены, прям как тот ребёнок, который пытался этот образ изобразить на двумерной бумаге, взрослый человек отличается только тем, что привык не замечать того, что он мыслит трёхмерными образами.
Вообще-то глаза не видят 3D и это всего лишь иллюзия создаваемая мозгом. Как и тот факт что картинка не перевернута. И первое что человек учится по поводу зрения - не видеть мир кверху ногами, для начала.
> Вообще-то глаза не видят 3D и это всего лишь иллюзия создаваемая мозгом.
> Как и тот факт что картинка не перевернута. И первое что
> человек учится по поводу зрения - не видеть мир кверху ногами,
> для начала.Ты предлагаешь по-старинке использовать 2-D интерфейсы и рисовать их вверх ногами, чтобы не утруждать мозг?
> Ты предлагаешь по-старинке использовать 2-D интерфейсы и рисовать их вверх ногами, чтобы
> не утруждать мозг?2D интерфейсы неплохо справляются с многими задачами. Хотя и 3D наверное сможет быть лучше в чем-нибудь. Только тогда надо нормальные 3D средства ввода (они где?) и в конце концов - есть шанс заметить что то что ты считаешь 3D не такое уж трехмерное. А ты знаешь что человек видит 2 плоских картинки, и по ним мозг очень приблизительно реконструирует 3D? На основе этого есть полно оптических обманов, когда ты можешь посмотреть на правильно подготовленную картинку и видеть абсолютную чертовщину. В том числе физически-невозможные объекты и прочие лулзы.
> Вообще-то глаза не видят 3D и это всего лишь иллюзия создаваемая мозгом.Какая разница, что "видят" глаза, если мозг при этом оперирует трёхмерными образами? Можно ли вообще говорить о том, что глаза "видят" хоть что-то, ведь "видеть" -- это значит извлекать полезную нагрузку из зрительной информации. А то ведь можно сказать, что камень тоже видит, поскольку на него падают фотоны, кодирующие информацию об окружающем мире.
> Так зачем нужны трехмерные интерфейсы? Двухмерная графика проще для человеческого восприятия.Эээ.... вообще изначально мы живем в трехмерном мире, еще и время есть 4-й координатой.
В примере явный намек на автомобильный интерфейс.
Скорее всего Qt как раз займёт нишу во встраиваемой технике, пример с приборкой авто как раз.
Определенно. У меня на предприятии вся встраиваемая техника с QML интерфейсом поставляется уже 2 года как.
Уже заняла.
Это всё, конечно же, замечательно, но их не смущает, что фреймворку уже 22 года, а для GUI на Qt Quick и этой штуке нет Accessibility API для разработки автоматизированных тестов? Потому что убогий MSAA поддерживается только классическими QtWidgets, UIA не поддерживается вообще, а своё API для тестирования Qt не разрабатывают. Cisco делали открытый WebDriver для Qt, но проект заглох. В итоге, есть глюкавый HP UFT и Ranorex, оба проприетарные и получают доступ к Qt GUI через dll-injection и грязные хаки. А без нормального автоматизированного регрессионного тестирования о каких серьёзных проектах на Qt может идти речь.
Привели бы пример, где это автоматизированное регрессивное тестирование есть.
Например wine. А что без тестов это правильно?
В огороде бузина...
В коммерческом коде, и то не всяком. Потому что пилить его - дело адски скучное и сравнительно дорогое, так что убедить в необходимости сложно. Хотя в итоге штука на редкость полезная.
> нет Accessibility API для разработки автоматизированных тестовЧтобы автотесты могли писать даже инвалиды? Найми лучше программиста.
И это только лишнее доказательство, что Qt - король фреймворков! 22 года, а ничего лучше так и не сделали.
... а ничего хорошего не сделали.Поправил. Не благодари.
Сами юзаем куты, и что он волшебный на всю голову написано в каждом первом коммит-коменте :-)
Так остальные еще хуже :) Независимо от языка.
Тут вопрос вообще можно обобщить: существует ли не кривой GUI?
Зря вы на него накинуись. Проект уже достаточно взрослый и этим уже пора было давно обзавестись.
Это что за window/desktop manager/environment? Прикольно выглядит
Это, конечно, может быть шокирующим, но это виндекс.
Интерфейса командной строки хватит всем.
Как-то расточительно...1wire
> 1wireМорзянка — наше всё.
>> 1wire
> Морзянка — наше всё.Не, таки 1wire. Для морзянки уже "2wire" надо, ведь ключ что-то с чем-то замыкать должон! ;)
>> 1wire
> Морзянка — наше всё.свист же
> Поддерживается импорт ресурсов из таких популярных пакетов, как PhotoshopКак насчет текстовых слоёв в PSD? Можно импортировать и редактировать текст?
nVidia как всегда впереди!
Особенно в области продвижения тиринга в массы
KDE7 будут на этом делать?
> KDE7 будут на этом делать?Очередной шанс все переписать, вместо скучного тестирования.
Когда я писал что я хочу такое, меня поднимали на смех. Когда NVIDIA сделала такое, все говорят "нужно".
Вот когда Торвальдс покажет тебе средний палец, тогда и тебя зауважают :)
Мелодия понравилась из ролика )
> Мелодия понравилась из ролика )Прикольно, коммент про то, что это и есть "суть опеннета" потёрли, а саму суть оставили. Это говорит нам о конфликте самоидентичности у опеннета: он думает о себе не то, чем он на самом деле является.
Ты считаешь что суть ОпенНета в ненависти к музыке? Человеку понравилась мелодия и он посчитал желательным обратить на неё внимание других, которые иначе могли бы проигнорировать ролик. Что в этом плохого?
Дальше про конфликты и вовсе хрень какая-то нелогичная.
> Ты считаешь что суть ОпенНета в ненависти к музыке?Нет, я не знаю, в чём суть опеннета. Ну, или ладно, у меня есть своё понимание, но я не хочу говорить на эту тему. Могу сказать лишь, что это понимание не содержит слова "музыка".
> Человеку понравилась мелодия и он посчитал желательным обратить на неё внимание других, которые иначе могли бы проигнорировать ролик. Что в этом плохого?
Я где-то говорил, что это плохо? Или может быть тот потёртый коммент говорил о том, что комменты о музыке -- это плохо? Я не говорил точно, тот коммент, насколько я его помню, тоже не высказывал никакого определённого отношения к тому, что он назвал "сутью опеннета".
Деление всего на "плохое" и "хорошее" -- это вообще дурная детская привычка, корнями уходящая в возраст лет трёх-четырёх (или даже раньше), от которой следовало бы устойчиво избавиться к 19 годам. Лет до двенадцати абстракия "хороший/плохой" полезна, чтобы сформировались устойчивые и определённые представления о мире, а дальше надо целенаправленно работать на постепенный уход от неё. Вообще забыть эти слова, или употреблять их исключительно в кавычках.
> Дальше про конфликты и вовсе хрень какая-то нелогичная.
Чего тут непонятного? Если декларации о музыкальных предпочтениях -- это суть опеннета, то что плохого в вербализации этой сути? Если эти декларации не свойственны опеннету, то почему бы их не потереть? То есть, модератор считает комментарии о музыке уместными, но вербализацию этой уместности он считает неуместной? Это отказ принимать опеннет таким, какой он есть. Это конфликт между идеализированным представлением об опеннете и реальным положением дел. Причём не просто конфликт -- конфликт сам по себе ни "хороший", ни "плохой" -- это конфликт прикрытый психологическими защитами, то есть вытесняемый из сознания конфликт. А вот это уже вредно -- вытесняемые конфликты ведут к неврозам, или даже к психозам в запущенных случаях, и к очень странному поведению. Эта странность с алогичным удалением комментов -- это безобидные цветочки на фоне того, что ждёт в будущем.
А что же https://code.qt.io/cgit/qt-labs/qt3d-editor.git/ ?
думал от 3д интерфейсов еще в 80х отказались
> думал от 3д интерфейсов еще в 80х отказалисьНадо же поколению спиннеров впиндюрить новую игруху.