VR Point Cloud Rendering via CPU-GPU Occlusion Culling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current virtual reality systems face a tradeoff between frame rate and point cloud resolution when rendering large point cloud volumes, often requiring a reduction in point density to maintain a desired frame rate, which compromises the viewing experience.
Innovation Solution
A virtual reality system that uses a CPU-based rendering engine to select a subset of points within the current field-of-view using occlusion culling, transferring these points to a GPU for rendering, allowing the GPU to operate at a higher frame rate without reducing image resolution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If the number of points displayed by the VR viewer is increased to maintain high point cloud resolution, then the manufacturing precision of the point cloud representation is improved, but the frame per second rate decreases
Solution Approach 1:
The system divides the point cloud rendering task into two segments: the CPU performs occlusion culling to select visible points from the full point cloud, and the GPU renders only those selected points. This segmentation allows each processor to operate optimally - the CPU filters out hidden points, and the GPU renders visible points at high frame rates without processing unnecessary data.
Solution Approach 2:
Instead of rendering all points in the point cloud, the system performs partial action by rendering only the subset of points that are visible from the current viewpoint. The CPU determines which points are occluded and excludes them from rendering, allowing the GPU to process fewer points and achieve higher frame rates while maintaining visual quality.
2Manufacturing precision
If all points in the point cloud are rendered to maintain high resolution, then the manufacturing precision is improved, but the device complexity and processing load increase
Solution Approach 1:
The CPU performs preliminary action by conducting occlusion culling before the GPU rendering process. It determines in advance which points are visible and which are occluded, preparing a filtered subset of points for GPU processing. This preliminary filtering reduces the complexity of the subsequent rendering operation.
Solution Approach 2:
The CPU acts as an intermediary between the full point cloud data and the GPU rendering process. It processes the complete point cloud to determine visibility, then passes only the necessary visible points to the GPU. This intermediary step simplifies the GPU's workload and optimizes the overall rendering pipeline.
Data Source
AI summary
A virtual reality (VR) system that includes a three-dimensional (3D) point cloud having a plurality of points, a VR viewer having a current position, a graphics processing unit (GPU), and a central processing unit (CPU). The CPU determines a field-of-view (FOV) based at least in part on the current position of the VR viewer, selects, using occlusion culling, a subset of the points based at least in part on the FOV, and provides them to the GPU. The GPU receives the subset of the plurality of points from the CPU and renders an image for display on the VR viewer based at least in part on the received subset of the plurality of points. The selecting a subset of the plurality of points is at a first frame per second (FPS) rate and the rendering is at a second FPS rate that is faster than the first FPS rate.


