Qt Quick 3D - Beispiel für Reflexionssonden

Demonstriert die Verwendung von Reflexionssonden in Qt Quick 3D.

Dieses Beispiel veranschaulicht die Funktionen der Reflexionssonden. Es bietet dem Benutzer ein Panel zur Auswahl verschiedener Eigenschaften, die sich darauf auswirken, wie die Sonde die Würfelkarte rendert und wie die Modelle diese Würfelkarte verwenden, um ihre Umgebung zu reflektieren.

Die Szene

Die Szene besteht aus einigen Modellen, zwei Partikelsystemen, einer Lichtsonde und zwei Reflexionssonden. In der Mitte der Szene befinden sich drei Kugeln sowie zwei Würfel, die als Boden und Wand fungieren. Die beiden Partikelsysteme in der Mitte der Szene sind standardmäßig deaktiviert und können über das Einstellungsfeld aktiviert werden. Sie können verwendet werden, um zu zeigen, wie die Partikel mit den Reflexionssonden funktionieren. Die erste Reflexionssonde ist am Ursprung positioniert und die andere bewegt sich mit der Kugel in der Mitte. Ein Modell verwendet die Würfelkarte, die von der nächstgelegenen Reflexionssonde erfasst wird, wenn es seine Umgebung reflektiert.

Panel Einstellungen

Einstellungen für die Reflexionskarte

Der Benutzer kann steuern, wie die Reflexionssonde die Reflexionswürfelkarte rendert. Je nach den gewählten Einstellungen variiert die Leistung drastisch.

Mit Time Slicing wird gesteuert, wie oft jede Fläche der Reflexionskarte gerendert wird. Wenn Sie z. B. Einzelne Flächen auswählen, rendert die Reflexionssonde eine Fläche pro Bild. Dies führt zu einer besseren Leistung, allerdings auf Kosten der Qualität.

Der Aktualisierungsmodus steuert, wie oft die Reflexionssonde die gesamte Reflexionskarte rendert. Wenn Sie die Option Erstes Bild wählen, rendert die Reflexionssonde die Reflexionskarte einmal. Dies hat eine bessere Leistung, führt aber zu unerwünschten Effekten, wenn es in einer Szene mit Animationen verwendet wird.

Schließlich steuert Reflection Map Quality die Auflösung der erzeugten Würfelkarte.

Einstellungen der Reflexionssonde

Die Größe der Reflexionssondenbox wird verwendet, um zu bestimmen, welche Objekte innerhalb der Reflexionssonde liegen. Wenn ein Objekt innerhalb der Sonde liegt, wird die von dieser Sonde erzeugte Karte verwendet. Die Boxgröße wird auch bei der Parallaxenkorrektur verwendet. Die Reflexionskarte wird beim Rendern als unendlich weit entfernt betrachtet. Obwohl dies bei Außenszenen funktionieren kann, kommt es bei Innenszenen zu unerwünschten Effekten. Die Parallaxenkorrektur sorgt dafür, dass die Reflexionskarte sowohl die Größe der Box als auch die Kameraposition berücksichtigt. Die Deaktivierung der Parallaxenkorrektur wirkt sich darauf aus, wie der Boden seine Umgebung reflektiert. Bei einer Innenraumszene sollte eine Reflexionssonde verwendet werden, die die gleiche Größe wie der Innenbereich hat.

Die Sondenposition wird verwendet, um die Sonde in der Szene zu bewegen. Sie wirkt sich auch darauf aus, von wo aus die Sonde die Cube-Map rendern wird.

Partikel-Einstellungen

Diese Einstellungen können verwendet werden, um der Szene einige Partikel hinzuzufügen, um zu zeigen, wie Reflexionssonden mit Partikeln arbeiten. Sowohl 3D- als auch Sprite-Partikel erscheinen in den Reflexionskarten, aber nur die 3D-Partikel können die Reflexionskarte verwenden, um ihre Umgebung zu reflektieren.

Modell-Einstellungen

Der Benutzer kann die Rauheit des von der Kugel verwendeten Materials einstellen, die sich auf die von diesem Modell gerenderten Reflexionen auswirken wird. Der Benutzer kann auch wählen, ob das Modell Reflexionen empfangen soll oder nicht, indem er die Kontrollkästchen für die Reflexionen verwendet.

Beispielprojekt @ code.qt.io

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.