Multi-GPU Rendering Depth Occlusion Culling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In existing 3D graphics rendering systems, when multiple GPUs are used, pixels rendered by different GPUs that are occluded during composition are discarded, leading to unnecessary processing as they do not appear in the final output, particularly when rendering one screen across multiple GPUs.
Innovation Solution
A rendering device that optimizes processing by classifying rendering ranges based on depth values and allocating them to multiple GPUs, where each GPU performs rendering only for pixels not previously rendered by other GPUs closer to the viewpoint, using identifying information to determine which pixels require rendering, thereby reducing unnecessary calculations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple GPUs are used to render one screen by dividing the rendering range based on z-value, then rendering speed is improved, but unnecessary processing occurs because pixels rendered by some GPUs are discarded during composition
Solution Approach 1:
The patent applies preliminary action by having the first GPU render a cover mask and depth information before the second GPU performs rendering. This pre-rendered depth information is used to cull occluded pixels in advance, preventing unnecessary rendering operations by the second GPU. The cover mask and depth buffer are prepared beforehand to guide the rendering process, ensuring that only visible pixels are rendered by subsequent GPUs.
2Productivity
If the rendering range is divided among multiple GPUs without considering occlusion, then device utilization is improved, but rendering accuracy deteriorates because occluded pixels are incorrectly rendered
Solution Approach 1:
The patent implements feedback by using the depth information and cover mask rendered by the first GPU to control the rendering process of the second GPU. The second GPU references the pre-rendered depth buffer to determine which pixels are occluded and should not be rendered. This feedback mechanism ensures that rendering accuracy is maintained while still utilizing multiple GPUs effectively, as each GPU's output is guided by information from previous rendering stages.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A first GPU of a rendering apparatus, after rendering by a second GPU that renders a second depth range that is closer to the viewpoint than a first depth range that the first GPU renders is performed, receives the image rendered by the second GPU and the identifying information that identifies the pixels for which rendering objects are rendered in the image. After the reception, the first GPU, when rendering a rendering object included in the first depth range in accordance with the viewpoint, performs rendering of pixels, from the image rendered by the second GPU, that are not identified by the identifying information, and does not perform rendering of pixels identified by the identifying information.