mafulechka
mafulechka30. April 2020 06:36

Einführung in die Qt Quick 3D Benchmarking App

Warum eine Benchmark-App?

Mit der bevorstehenden Veröffentlichung von Qt 5.15 und der verbesserten Version von Qt Quick 3D wollten die Entwickler ihren Kunden und anderen Benutzern die Möglichkeit bieten, die Fähigkeiten ihrer Hardware einfach zu testen. So begann die Erstellung einer Demo-Benchmark-Anwendung.


Was kann man dagegen tun?

Der Hauptzweck der Demo-Benchmark-Anwendung besteht darin, Benutzern das einfache Ausprobieren aller unterstützten Funktionen von Qt Quick 3D 5.15 zu ermöglichen. Dies umfasst, ist aber nicht beschränkt auf, das Ändern der Art und Menge des Lichts, der Komplexität und Menge des Modells, der Größe der Textur, der Materialien sowie der Methode und Qualität des Anti-Aliasing.

Benutzer können schnell überprüfen, ob beispielsweise die Anzahl der gezeichneten Modelle einen größeren Einfluss auf die Leistung ihrer Ausrüstung hat als die Anzahl der Dreiecke im Modell. Dies kann durch Ändern der Einstellungen zwischen dem Zeichnen von 100 x 10.000 Dreiecksmodellen und 2 x 500.000 Dreiecksmodellen erfolgen. Dasselbe kann man mit Licht machen. Probieren Sie es aus, wenn beispielsweise die Verwendung von 1 Punktlicht eine größere Auswirkung auf die Leistung hat als die Verwendung von 3 gerichteten Lichtern.

Alle unterstützten Nachbearbeitungseffekte können einfach mit vernünftigen Werten getestet werden. Es sollte beachtet werden, dass nicht alle Effekte auf allen Arten von Geräten funktionieren. Wenn das Gerät mindestens OpenGL ES3.2 unterstützt, sollte alles funktionieren. Wenn dies nicht der Fall ist, liegt möglicherweise ein Problem mit Ihren Gerätetreibern vor.

Es gibt einen eingebauten FPS-Zähler, der es dem Benutzer ermöglicht, die Auswirkungen der Änderung von Funktionen unmittelbar nach einer Änderung an ihnen direkt zu sehen.

Bisher haben wir nur über das Aktivieren und Deaktivieren von Funktionen gesprochen, aber wo ist der Benchmark-Test?

Betriebsarten

Die Anwendung verfügt über 3 Betriebsmodi.

Normaler Modus

Die Anwendung startet standardmäßig im normalen Modus. Im normalen Modus nehmen Sie alle notwendigen Einstellungen über die Wischansicht am rechten Bildschirmrand vor. Zuerst sehen Sie ein kleines Symbol am Rand. Durch Klicken oder Ziehen wird das Einstellungsmenü aufgerufen. Durch erneutes Ziehen erhalten Sie ebenfalls das Effektmenü.

Sie können den Benchmark aus dem normalen Modus heraus starten, indem Sie unten links auf die Schaltfläche Messung starten klicken. Dadurch wird der Benchmark einmal ausgeführt und zum normalen Modus zurückgekehrt.
Es gibt auch eine andere Möglichkeit, den Benchmark auszuführen, wenn Sie ein Gerät haben, das Touch- oder andere Eingabegeräte nicht unterstützt.

Benchmark-Modus

Sie können den Benchmark-Modus aktivieren, indem Sie die Anwendung mit --mode Benchmark als Befehlszeilenargument ausführen. Im Benchmark-Modus wird nur die 3D-Szene angezeigt. Es gibt keinen FPS-Zähler, Menüs oder Schaltflächen auf dem Bildschirm. Dadurch soll sichergestellt werden, dass die Rendering-Leistung eines Qt Quick 3D-Teils ohne den Aufwand für das Rendern von Qt Quick Controls-UI-Komponenten gemessen wird.

Der Benchmark-Modus führt einen 60-sekündigen Messlauf durch, wonach die Anwendung die Benchmark-Ergebnisdatei in den Ordner ausgibt, aus dem die Anwendung gestartet und beendet wird. Dieselben Informationen werden auf der Konsole angezeigt. Der Leistungsbenchmark gibt alle aktivierten/deaktivierten Funktionen und Renderleistungsmessungen wie unten gezeigt aus.

Diese Beispiele gelten für Windows 10 Home 64-Bit mit Intel® Core™ TM i7-6700 @ 3,40 GHz (8 Prozessoren) und NVIDIA GeForce GTX 1080 im Standard-Benchmark-Modus.

Bildschirmgröße: (1920x1061)
Durchschnittliche FPS: 59.800664451827245
Mindest-FPS: 60
Maximale FPS: 60
Minimale Framezeit: 16.257699966430664
Maximale Framezeit: 19.12350082397461
Minimale Renderzeit: 0,1941986083984375
Maximale Renderzeit: 0,5038013458251953
Minimale Synchronisierungszeit: 0,0214996337890625
Maximale Synchronisierungszeit: 0,11910057067871094
Modell: Hoch (100k) (#10)
Lichttyp: Punkt Helligkeit 500
Schatten: AUS
IBL-Beleuchtung: AUS
Rendermodus: Offscreen
Umgebungsokklusion: AUS
Skybox: AUS
Antialiasing: Multisample AA (Hoch)
Temporäre AA: AUS
Texturen: EIN
Texturgröße: 2048x2048
Material: Standardmaterial
Effekte: Keine

Wenn die Anwendung auf Android ausgeführt wird, ist dieser Modus nicht als Standalone verfügbar. Der Benchmark kann nur über die Schaltfläche Messung starten gestartet werden und das Ergebnis wird im Textfeld angezeigt.

Um den Benchmark-Modus für eine Vielzahl von Geräten komfortabler zu gestalten, gibt es drei voreingestellte Hardwarestufen und zwei verschiedene Einstellungen für die Zielumgebung. Mit dem Kommandozeilenargument --preset kann die Hardware-Leistungsstufe auf Entrylevel, Midrange (Standard) oder Highend eingestellt werden. Das Befehlszeilenargument --target kann auf desktop (Desktop) (Standard) oder eingebettet (eingebettet) gesetzt werden. Sie können eine Kombination davon ausprobieren, um sich ein Bild von den Fähigkeiten Ihrer Hardware zu machen.

Demo-Modus

Der Demomodus wird aktiviert, indem --mode demo als Befehlszeilenargument übergeben wird. Der Demo-Modus läuft auf unbestimmte Zeit in einer Schleife, da er für die Arbeit auf Ständen oder Vitrinen konzipiert ist. Der Demomodus unterstützt eine Kombination aus den Argumenten --preset midrange/highend und --target . Es gibt keine separate Unterstützung für Einstiegshardware, da es beispielsweise nicht sinnvoll ist, den Demomodus ohne IBL-Beleuchtung und Skybox auszuführen.

Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Stabiles Hosting des sozialen Netzwerks EVILEG. Wir empfehlen VDS-Hosting für Django-Projekte.

Magst du es? In sozialen Netzwerken teilen!

Kommentare

Nur autorisierte Benutzer können Kommentare posten.
Bitte Anmelden oder Registrieren
Letzte Kommentare
ИМ
Игорь Максимов5. Oktober 2024 07:51
Django – Lektion 064. So schreiben Sie eine Python-Markdown-Erweiterung Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas55. Juli 2024 11:02
QML - Lektion 016. SQLite-Datenbank und das Arbeiten damit in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
k
kmssr8. Februar 2024 18:43
Qt Linux - Lektion 001. Autorun Qt-Anwendung unter Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
Qt WinAPI - Lektion 007. Arbeiten mit ICMP-Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
EVA
EVA25. Dezember 2023 10:30
Boost - statisches Verknüpfen im CMake-Projekt unter Windows Ошибка LNK1104 часто возникает, когда компоновщик не может найти или открыть файл библиотеки. В вашем случае, это файл libboost_locale-vc142-mt-gd-x64-1_74.lib из библиотеки Boost для C+…
Jetzt im Forum diskutieren
J
JacobFib17. Oktober 2024 03:27
добавить qlineseries в функции Пользователь может получить любые разъяснения по интересующим вопросам, касающимся обработки его персональных данных, обратившись к Оператору с помощью электронной почты https://topdecorpro.ru…
JW
Jhon Wick1. Oktober 2024 15:52
Indian Food Restaurant In Columbus OH| Layla’s Kitchen Indian Restaurant If you're looking for a truly authentic https://www.laylaskitchenrestaurantohio.com/ , Layla’s Kitchen Indian Restaurant is your go-to destination. Located at 6152 Cleveland Ave, Colu…
КГ
Кирилл Гусарев27. September 2024 09:09
Не запускается программа на Qt: точка входа в процедуру не найдена в библиотеке DLL Написал программу на C++ Qt в Qt Creator, сбилдил Release с помощью MinGW 64-bit, бинарнику напихал dll-ки с помощью windeployqt.exe. При попытке запуска моей сбилженной программы выдаёт три оши…
F
Fynjy22. Juli 2024 04:15
при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …

Folgen Sie uns in sozialen Netzwerken