mafulechka
mafulechka30 апреля 2020 г. 6:36

Представляем приложение Qt Quick 3D Benchmarking

Почему именно бенчмарк приложение?

В предстоящем выпуске Qt 5.15 и улучшенной версии Qt Quick 3D разработчики хотели предложить своим клиентам и другим пользователям возможность легко протестировать возможности их аппаратного обеспечения. Так началось создание демонстрационного бенчмарк приложения.


Что можно с этим сделать?

Основная цель демонстрационного бенчмарк приложения состоит в том, чтобы пользователи могли без труда опробовать все поддерживаемые функции Qt Quick 3D 5.15. Это включает в себя, помимо прочего, изменение типа и количества света, сложности и количества модели, размера текстуры, материалов, а также метода и качества сглаживания.

Пользователи могут быстро проверить, если, например, количество нарисованных моделей оказывает большее влияние на производительность их оборудования, чем количество треугольников в модели. Это можно сделать, изменив настройки между рисованием моделей треугольников 100 x 10k и моделей треугольников 2 x 500k. То же самое можно сделать со светом. Попробуйте, если, например, использование 1 точечного источника света оказывает большее влияние на производительность, чем использование 3 направленных источников света.

Все поддерживаемые эффекты пост-обработки могут быть легко протестированы с заданными разумными значениями. Следует отметить, что не все эффекты будут работать на всех видах оборудования. Если устройство поддерживает хотя бы OpenGL ES3.2, то все должно работать. Если это не так, то у вас могут быть проблемы с драйверами устройств.

Имеется встроенный счетчик FPS, который позволяет пользователю непосредственно видеть эффект изменения любых функций сразу после внесения изменения в них.

До сих пор только говорилось о включении и отключении функций, но где бенчмарк тест?

Режимы работы

В приложении 3 режима работы.

Нормальный режим

Приложение запускается в обычном режиме по умолчанию. В обычном режиме вы можете отрегулировать все необходимые настройки, используя swipe view на правом краю экрана. Сначала вы увидите маленький значок на краю. Щелкнув по нему или перетащив, вы получите меню настроек. Перетаскивая снова, вы также получите меню эффектов.

Вы можете запустить бенчмарк из обычного режима, нажав кнопку Start Measuring («Начать измерение») в левом нижнем углу. Это запустит бенчмарк один раз и вернется в нормальный режим.
Существует также другой способ запуска бенчмарк, если у вас есть устройство, которое не поддерживает сенсорные или другие устройства ввода.

Бенчмарк режим

Вы можете включить бенчмарк режим, запустив приложение с параметром --mode benchmark в качестве аргумента командной строки. В режиме бенчмарка отображается только 3D-сцена. На экране нет счетчика FPS, меню и кнопок. Это делается для того, чтобы убедиться, что измеряется производительность рендеринга детали Qt Quick 3D без дополнительных затрат на отрисовку компонентов пользовательского интерфейса Qt Quick Controls.

Режим бенчмарк выполняет 60-секундный прогон измерения, после чего приложение выводит файл бенчмарк результатов в папку, из которой запускается приложение, и завершает работу. Эта же информация выводится и на консоль. В результате бенчмарка производительности выводятся все включенные/отключенные функции и измерения производительности рендеринга, как показано ниже.

Эти примеры приведены для Windows 10 Home 64-bit с процессором Intel® Core ™ TM i7-6700 @ 3,40 ГГц (8 процессоров) и NVIDIA GeForce GTX 1080, работающими в бенчмарк режиме по умолчанию.

Screen Size: (1920x1061)
Average FPS: 59.800664451827245
Minimum FPS: 60
Maximum FPS: 60
Minimum Frame Time: 16.257699966430664
Maximum Frame Time: 19.12350082397461
Minimum Render Time: 0.1941986083984375
Maximum Render Time: 0.5038013458251953
Minimum Sync Time: 0.0214996337890625
Maximum Sync Time: 0.11910057067871094
Model: High (100k) (#10)
Light Type: Point [brightness 500] (#1)
Shadows: OFF
IBL lighting: OFF
Render Mode: Offscreen
Ambient Occlusion: OFF
Skybox: OFF
Antialiasing: Multisample AA (High)
Temporal AA: OFF
Textures: ON
Texture Size: 2048x2048
Material: Default Material
Effects: None

Если приложение работает в Android, то этот режим недоступен, как автономный. Бенчмарк можно запустить только с помощью кнопки Start Measurement («Начать измерение») , и результат будет отображен в текстовом поле.

Чтобы сделать бенчмарк режим более удобным для широкого спектра устройств, есть три предустановочных уровня оборудования и две разные настройки для целевой среды. С помощью аргумента командной строки --preset уровень производительности оборудования может быть установлен на entrylevel, midrange (по умолчанию) или highend . Аргумент командной строки --target может быть установлен на desktop (рабочий стол) (по умолчанию) или embedded (встроен) . Вы можете попробовать их комбинацию, чтобы получить представление о возможностях вашего оборудования.

Демонстрационный режим

Демонстрационный режим включается передачей --mode demo в качестве аргумента командной строки. Демо-режим будет работать в цикле бесконечно, так как он предназначен для работы на стендах или витринах. Демонстрационный режим поддерживает комбинацию аргументов --preset midrange/highend и --target . Нет отдельной поддержки для оборудования начального уровня, так как не имеет смысла запускать демонстрационный режим без освещения IBL и скайбокса, например.

Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.

Вам это нравится? Поделитесь в социальных сетях!

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
SH
  • Sak Hax
  • 26 апреля 2024 г. 0:00

C++ - Тест 001. Первая программа и типы данных

  • Результат:33баллов,
  • Очки рейтинга-10
г
  • ги
  • 24 апреля 2024 г. 1:51

C++ - Тест 005. Структуры и Классы

  • Результат:41баллов,
  • Очки рейтинга-8
l
  • laei
  • 23 апреля 2024 г. 19:19

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:10баллов,
  • Очки рейтинга-10
Последние комментарии
k
kmssr9 февраля 2024 г. 5:43
Qt Linux - Урок 001. Автозапуск Qt приложения под Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Анатолий Кононенко5 февраля 2024 г. 12:50
Qt WinAPI - Урок 007. Работаем с ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
EVA
EVA25 декабря 2023 г. 21:30
Boost - статическая линковка в CMake проекте под Windows Ошибка LNK1104 часто возникает, когда компоновщик не может найти или открыть файл библиотеки. В вашем случае, это файл libboost_locale-vc142-mt-gd-x64-1_74.lib из библиотеки Boost для C+…
J
JonnyJo25 декабря 2023 г. 19:38
Boost - статическая линковка в CMake проекте под Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
G
Gvozdik19 декабря 2023 г. 8:01
Qt/C++ - Урок 056. Подключение библиотеки Boost в Qt для компиляторов MinGW и MSVC Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Сейчас обсуждают на форуме
G
Gar22 апреля 2024 г. 15:46
Clipboard Как скопировать окно целиком в clipb?
DA
Dr Gangil Academics20 апреля 2024 г. 17:45
Unlock Your Aesthetic Potential: Explore MSC in Facial Aesthetics and Cosmetology in India Embark on a transformative journey with an msc in facial aesthetics and cosmetology in india . Delve into the intricate world of beauty and rejuvenation, guided by expert faculty and …
a
a_vlasov14 апреля 2024 г. 16:41
Мобильное приложение на C++Qt и бэкенд к нему на Django Rest Framework Евгений, добрый день! Такой вопрос. Верно ли следующее утверждение: Любое Android-приложение, написанное на Java/Kotlin чисто теоретически (пусть и с большими трудностями) можно написать и на C+…
Павел Дорофеев
Павел Дорофеев14 апреля 2024 г. 12:35
QTableWidget с 2 заголовками Вот тут есть кастомный QTableView с многорядностью проект поддерживается, обращайтесь
f
fastrex4 апреля 2024 г. 14:47
Вернуть старое поведение QComboBox, не менять индекс при resetModel Добрый день! У нас много проектов в которых используется QComboBox, в версии 5.5.1, когда модель испускает сигнал resetModel, currentIndex не менялся. В версии 5.15 при resetModel происходит try…

Следите за нами в социальных сетях