3D View Rendering with Object Cache Buffering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing BIM technology faces challenges in rendering 3D models smoothly and efficiently, particularly for large construction projects, leading to user-perceived lags and object dropouts due to the high number of detailed objects within the view frustum.
Innovation Solution
The software technology identifies visible objects within a view frustum and utilizes an object cache to determine objects for rendering, reducing the number of objects processed in each frame, thereby optimizing rendering efficiency and user experience.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If all objects within the view frustum are rendered in each frame, then the completeness of the 3D model display is improved, but the processing time and computational resources increase significantly
Solution Approach 1:
The system performs preliminary actions by identifying and caching object identifiers within the view frustum before the actual rendering process. The object cache stores identifiers of objects that are likely to be visible, allowing the rendering system to quickly retrieve and process only relevant objects rather than all objects in the scene, thus reducing processing time while maintaining display completeness
Solution Approach 2:
The rendering process is segmented into distinct phases: object identification, caching of object identifiers, and actual rendering. This segmentation allows the system to separate the computationally intensive object identification phase from the rendering phase, enabling optimization of each phase independently and reducing overall processing time
2Measurement precision
If all detailed objects within the view frustum are processed, then the visual accuracy and detail are improved, but the power requirements and computational load increase
Solution Approach 1:
The system extracts only the essential information needed for rendering by caching object identifiers rather than processing complete object data structures. This extraction approach retrieves minimal necessary data (identifiers) from the object cache, reducing computational load and power requirements while maintaining visual accuracy by ensuring all visible objects are identified and rendered with their full detail when needed
3Reliability
If the rendering system processes every object in each frame, then no object dropouts occur, but user-perceived lags increase
Solution Approach 1:
The system implements feedback through the object cache mechanism that learns from previous frame rendering results. By caching object identifiers from previously rendered frames and using this cached information to guide current frame rendering, the system receives feedback about which objects are consistently visible, allowing it to optimize rendering decisions and maintain object visibility continuity while improving rendering efficiency
Data Source
AI summary
A computing platform is configured to: initialize a three-dimensional (3D) model of a given construction project and thereby determine a first set of objects; cause a first frame of the 3D model to be displayed at an end-user device from a first viewpoint having a first view frustum; receive an indication of a command to display a second frame of the 3D model from a second viewpoint having a second view frustum; identify at least a subset of objects that are contained within the second view frustum; apply one or more object processing techniques and thereby identify one or more additional objects that are contained within the second view frustum; render, as an array of pixels, a second set of objects comprising (i) the subset of objects and (ii) the one or more additional objects; and based on the second set of objects, cause the second frame to be displayed.


