mafulechkaApril 30, 2020, 6:36 a.m.

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

Content

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

В предстоящем выпуске 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 и скайбокса, например.

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
Support the author Donate

Comments

Only authorized users can post comments.
Please, Log in or Sign up
Timeweb

Let me recommend you the excellent hosting on which EVILEG is located.

For many years, Timeweb has been proving his stability.

For projects on Django I recommend VDS hosting

View Hosting
E
  • Egorka
  • Jan. 18, 2021, 12:31 p.m.

C++ - Тест 003. Условия и циклы

  • Result:0points,
  • Rating points-10
J
  • Jenek
  • Jan. 17, 2021, 3:40 p.m.

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:10points,
  • Rating points-10
EK

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:90points,
  • Rating points8
Last comments
r
  • retmas
  • Jan. 17, 2021, 4:09 a.m.

Qt/C++ - Tutorial 074. Generating pseudo-random numbers, using STD library random

Дмитрий, решает. Просто автор, видимо, не сильно озаботился изучением документации QRandomGenerator. Да и в листинге с использованием qrand вызов функции qsrand на каждой итерации цикла нав…
g

Поздравляю всё Сообщество EVILEG с Новым Годом!!!

#include <iostream>using namespace std;int main() { cout << "Happy New Year and Thank you!"; return 0;}
MZ
MZ

Django - Tutorial 003. Model, Template, View on Django

from django.shortcuts import *from django.http import *from django.http import HttpResponseRedirectfrom django.contrib.auth.forms import *from django.urls import reverse_lazyfrom django.views …
Now discuss on the forum

Не получается prefetch_related на M2M полях

join случается, если делать select_related префетч делается в два запроса - сначала изначальный запрос, а потом связанные с ним объекты. мерж этих запросов происходит в рантайме можн…

Проблемы с QTableView

кто-нибуль может подсказать как воткнуть QWidget в tableview header ?

QSqlTableModel - Как добавить картинки в таблицу, чтобы они отражались в диалоговом окне, но не были частью модели

Если у вас модель, в переопределнном методе QVariant data надо привязываться к Qt::EditRole, это если открывающийся диалог редактирования является частью таблицы
t

Работа с потоками в разных версиях Qt

Добрый день, впервые начал проект в котором активно используются потоки и наткнулся на один не очень приятный момент, например: Существует главный поток (GUI) и созданный поток. Связь…
e
  • eviza
  • Jan. 13, 2021, 6:08 a.m.

QSerialPort. Как правильнее проверить сигнал CTS?

Здравствуйте! Есть задача отслеживать изменение сигнала CTS, можно ли это сделать по таймеру методом QSerialPort::pinoutSignals()?
About
Services
© EVILEG 2015-2020
Recommend hosting TIMEWEB