aboutsummaryrefslogtreecommitdiffstats
path: root/src/xr/quick3dxr/qquick3dxractionmapper.cpp
diff options
context:
space:
mode:
authorChristian Strømme <[email protected]>2025-04-30 15:36:43 +0200
committerChristian Strømme <[email protected]>2025-05-30 09:32:42 +0200
commitf525940cd5432e4e40d6767a22ca881a175a4b91 (patch)
tree38cc59f87d3bed3cc0906ea09b8996235d659dc6 /src/xr/quick3dxr/qquick3dxractionmapper.cpp
parente98926608818498046dbc55ae561cbed87b6e126 (diff)
Improve node collection and frame prepHEADdev
Improves the collection of nodes and rendering data during the preparation phase by: - Only traversing and collecting nodes when the node tree changes. - Assigning a unique ID to each node in the tree for fast access to its associated rendering data. - Having a single root node for the entire window. If there are multiple views within a window, they all operate on their respective sections of the tree. - Storing rendering data separately which avoids collecting and copying in addition to make it more feasibly to just uploading the data in bulk when needed. - Proper separation of data allows for the calculation of non-dependent data in parallel, once the global state has been updated. This is merely the initial step towards a more advanced storage solution. However, some adjustments are still necessary to transition a significant portion of the preparation phase to the GPU. Our somewhat contrived benchmark demonstrates a 6x improvement, which is also applicable to the worst case scenario when nodes are dynamically added. Change-Id: I1dd12734f6a043ca8145cb1c667921bb664aa3db Reviewed-by: Christian Strømme <[email protected]>
Diffstat (limited to 'src/xr/quick3dxr/qquick3dxractionmapper.cpp')
0 files changed, 0 insertions, 0 deletions