Three-dimensional geologic body rendering method and system
By simplifying and dividing the 3D geological model into blocks, combined with WebGPU parallel rendering and Draco compression algorithm, the problem of low rendering efficiency of massive geological data is solved, efficient rendering and transmission are achieved, and the user experience is improved.
Patent Information
- Application Number
- CN202510610713.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-13
- Publication Date
- 2025-09-12
AI Technical Summary
In the existing technology, the efficiency of three-dimensional geological body rendering based on WebGL and WebGPU is low, especially when facing massive geological body data, which affects the interactive experience, has large computational complexity, and low data transmission efficiency.
The three-dimensional geological model is simplified by using the half-edge collapse algorithm with quadratic error measure. The LOD-level geological block model is generated by plane quadtree partitioning and spatial index tree construction. WebGPU is used for parallel rendering, and the data is compressed by the Draco compression algorithm before transmission.
It improves the rendering efficiency of three-dimensional geological models, reduces the amount of calculation and data transmission time, and enhances the user interaction experience.
Smart Images

Figure CN120635269A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of geographic space information visualization, and in particular relates to a three-dimensional geological body rendering method and system. Background Art
[0002] With the development of geographic information science, the demand for visualization of 3D geological models is growing, and the data volume of large-scale geological models can reach terabytes. However, the visualization of massive multi-scale geological data faces many challenges. For example, the rendering process is time-consuming for complex 3D geological models, especially large-scale geological data, which affects the interactive experience. The rendering of large-scale 3D geological models requires a large amount of calculations, placing high demands on computer hardware performance. Inefficient data transmission is also a bottleneck, as the massive amount of 3D geological model data needs to be transferred from the server to the client for rendering.
[0003] Currently, geological model rendering on the web generally directly loads and renders geological bodies within a certain range of the field of view based on WebGL and WebGPU technologies. This method can meet the basic needs of a limited number of users, but when faced with the need to render massive geological bodies, the rendering efficiency is usually low. Summary of the Invention
[0004] In view of this, an embodiment of the present invention provides a three-dimensional geological body rendering method and system, which are used to solve the problem of low efficiency of current web-based three-dimensional geological body rendering.
[0005] In a first aspect of an embodiment of the present invention, a three-dimensional geological body rendering method is provided, comprising: Obtaining a three-dimensional geological model; The three-dimensional geological model is simplified by using the half-edge folding algorithm based on quadratic error measure; The simplified geological body model is divided into blocks through a plane quadtree, and a spatial index tree is constructed based on the blocks to generate a geological body block model at the LOD level; Obtain the user's viewpoint position and field of view, calculate the screen space error based on the user's viewpoint position and field of view, switch the geological block model of the corresponding LOD level, and prioritize loading high-precision near-view tiles in the geological block model; Parallel rendering of geological block model tiles based on WebGPU compute shader; After the tile data of the rendered geological block model is compressed using the Draco compression algorithm, the geological block model data stream is sent to the client.
[0006] In a second aspect of an embodiment of the present invention, a three-dimensional geological body rendering system is provided, comprising: Model acquisition module, used to obtain three-dimensional geological body model; Model simplification module, used to simplify the 3D geological model using the half-edge folding algorithm based on quadratic error measure; The model block module is used to block the simplified geological body model through a plane quadtree, and build a spatial index tree based on the blocks to generate a geological body block model at the LOD level; The model loading module is used to obtain the user's viewpoint position and field of view, calculate the screen space error based on the user's viewpoint position and field of view, switch the geological block model of the corresponding LOD level, and give priority to loading the high-precision near-view tiles in the geological block model; Model rendering module, used for parallel rendering of geological body block model tiles based on WebGPU compute shader; The compression transmission module is used to compress the tile data of the rendered geological block model through the Draco compression algorithm and send the geological block model data stream to the client.
[0007] In a third aspect of an embodiment of the present invention, an electronic device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable by the processor, wherein the processor implements the steps of the method described in the first aspect of the embodiment of the present invention when executing the computer program.
[0008] In a fourth aspect of an embodiment of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method provided in the first aspect of the embodiment of the present invention are implemented.
[0009] In an embodiment of the present invention, after simplifying and dividing the three-dimensional geological model into blocks, geological block models of different LOD levels are constructed. According to the user's viewpoint position and range, the geological block model of the corresponding LOD level is loaded, and parallel rendering is performed based on WebGPU. The model is compressed and transmitted using the Draco compression algorithm, thereby effectively improving the efficiency of each link such as geological model loading, rendering and transmission, and further effectively improving the rendering efficiency of web-based geological models, ensuring the rendering speed of massive model data in a network environment, and improving the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments or descriptions of the prior art. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0011] Figure 1 A schematic flow chart of a three-dimensional geological body rendering method provided by one embodiment of the present invention; Figure 2 A schematic structural diagram of a three-dimensional geological body rendering system provided by one embodiment of the present invention; Figure 3 The present invention provides a schematic structural diagram of an electronic device according to an embodiment of the present invention. DETAILED DESCRIPTION
[0012] In order to make the purpose, features, and advantages of the present invention more obvious and easy to understand, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the embodiments described below are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0013] It should be understood that the terms "including" and similar expressions in the specification, claims, and drawings of the present invention are intended to cover non-exclusive inclusions. For example, a process, method, system, or apparatus comprising a series of steps or units is not limited to the listed steps or units. Furthermore, the terms "first" and "second" are used to distinguish between different objects and are not intended to describe a specific order.
[0014] See also Figure 1 , a schematic flow chart of a three-dimensional geological body rendering method provided by an embodiment of the present invention includes: S101, obtaining a three-dimensional geological body model; A 3D geological body model is a three-dimensional quantitative model generated by integrating geological and geophysical data and various interpretations. It is a three-dimensional digital representation of underground geological structure, lithologic distribution, and physical properties. It can describe the spatial form, boundaries, and topology of the geological body. Generally, a corresponding 3D geological body model can be constructed based on geophysical data, remote sensing data, and existing geological data.
[0015] In web-based 3D geological body rendering, the 3D geological body model is generally stored on the server side. The server renders the geological body model under the corresponding perspective according to the user request and sends the rendered geological body model to the client for display.
[0016] S102, simplifying the three-dimensional geological model using a half-edge folding algorithm based on quadratic error measurement; The Quadratic Error Metric (QEM) half-edge folding algorithm is based on the Quadratic Error Metric (QEM). It divides the mesh structure into two parts, selecting one part for folding at each iteration and retaining the other part until a termination condition is met. Half-edge folding reduces geometric abrupt changes by restricting the direction of vertex movement, preserving sharp edges and complex topology in the model. The Quadratic Error Metric, as a mesh simplification technique, measures the error in vertex movement during mesh simplification. By calculating the error after vertex movement, it determines which edges should be folded, thereby better preserving the model's geometric features and details during the simplification process.
[0017] This embodiment uses a half-edge folding algorithm based on quadratic error measurement to simplify the model. By controlling the selection of folding edges and the determination of folding vertices, it ensures that the model retains key geometric features and detail performance during the simplification process.
[0018] S103, dividing the simplified geological body model into blocks using a plane quadtree, and constructing a spatial index tree based on the blocks to generate a geological body block model at the LOD level; The quadtree is a tree-like data structure used for spatial partitioning. Its core is to recursively divide a two-dimensional space into four subregions until specific conditions are met. Using the quadtree combined with vertical fixed-distance segmentation, large-scale, multi-scale three-dimensional geological models are partitioned according to their spatial distribution. The top-level low-resolution model is first partitioned, followed by the higher-resolution models at each level, ensuring that each model is of appropriate size for easy network transmission and loading.
[0019] A spatial index tree is a tree structure that arranges spatial block objects in a specific order based on their position and shape, or certain spatial relationships between them (such as resolution). This tree's description of the block information stored on the media improves data retrieval efficiency. LOD (Levels of Detail), also known as levels of detail, determines object rendering resource allocation based on the location and importance of nodes in the object model within the display environment, reducing the number of faces and detail of non-critical objects while increasing the rendering detail of important objects. Based on the planar quadtree and the segmentation of the fixed vertical distance, the block models at all levels are divided into tile sets, and a spatial index tree is constructed to finally generate a multi-level of detail (LOD) geological block model.
[0020] S104: Obtain the user's viewpoint position and field of view, calculate the screen space error based on the user's viewpoint position and field of view, switch the geological block model of the corresponding LOD level, and preferentially load the high-precision near-view tiles in the geological block model; The screen space error is the maximum deviation between the simplified geometric model and the actual model in screen pixel space. It can be calculated based on the viewpoint-to-tile distance, viewpoint position, and field of view. Based on the calculated screen space error, the geological block model corresponding to the LOD level is dynamically loaded, with high-precision near-view tiles being prioritized, and low-precision tiles being used for distant view.
[0021] S105, performing parallel rendering on the geological body block model tiles based on the WebGPU computing shader; WebGPU provides access to the graphics and computing power of networked hardware. Based on the WebGPU compute pipeline's parallel rendering algorithm, it migrates the computational components of traditional CPU offline pre-processing to the GPU for execution. The compute pipeline in WebGPU controls the compute shader stage. Compute shaders are a general-purpose GPU-based computing technology that enables massively parallel computing through the graphics API. Using compute shaders within the WebGPU compute pipeline API to perform geometric transformations and lighting calculations on geological objects, leveraging the parallel computing capabilities of WebGPU can significantly reduce computation time in traditional rendering.
[0022] The pipeline in WebGPU is a specific general term for the programmable pipeline in the GPU, which is divided into computing pipeline and rendering pipeline. The computing pipeline can organize computing tasks into parallel threads to achieve parallel rendering.
[0023] S106 , compressing the tile data of the rendered geological block model using the Draco compression algorithm, and sending the geological block model data stream to the client.
[0024] The Draco compression algorithm compresses 3D geometric meshes and point cloud data. It uses the mesh edge connection structure for lossless compression of connectivity information. It uses a lower bit count to approximate the original floating-point data for lossy quantization of vertex coordinates, textures, and other data, and performs predictive compression and entropy coding. The Draco compression algorithm effectively reduces the size of 3D models, facilitating network transmission.
[0025] The compressed geological block model is transmitted to the client through the network, and the client receives the data stream and draws and displays it.
[0026] In this embodiment, after simplifying and dividing the three-dimensional geological model into blocks, the geological block model of the corresponding LOD level is loaded according to information such as the user's viewpoint position, parallel rendering is performed based on WebGPU, and the model is compressed using the Draco compression algorithm for transmission, which effectively improves the processing efficiency of the geological model in various links such as loading, rendering and transmission, thereby improving the rendering efficiency of the geological model under massive demand.
[0027] In one embodiment, based on the viewpoint position change trajectory, the geological body block model that enters the viewing area is loaded in advance through trajectory prediction. According to the speed and frequency of viewpoint position changes, as well as the direction of the change trajectory, the possible position of the viewpoint at the next moment is predicted, and the corresponding geological body block model is obtained based on the predicted position.
[0028] In this embodiment, the geological block model of the corresponding LOD level is dynamically loaded according to the user's viewpoint position and field of view range, and a trajectory prediction algorithm is used to load the sub-blocks that may enter the field of view in advance, thereby reducing the loading delay of the block model.
[0029] In one embodiment, the method of preferentially loading high-precision near-view tiles in the geological body block model further includes: A hierarchical bounding volume scene tree is constructed, and invisible tiles in the geological block model are filtered according to the hierarchical bounding volume scene tree and the viewing frustum corresponding to the user's viewpoint position.
[0030] The Bounding Volume Hierarchy (BVH) scene tree is a spatial index structure based on primitive partitioning. The root node of the BVH represents a maximum bounding box, and its multiple child nodes represent multiple sub-bounding boxes. Each non-leaf node has a bounding volume, and the bounding volume of the parent node can contain the bounding volumes of all its child nodes.
[0031] Constructing a bounding volume hierarchy (BVH) scene tree, combined with the user's view frustum for occlusion queries, dynamically filters invisible tiles, and reduces unnecessary computation. In some embodiments, the invisible tile filtering computation is offloaded to the GPU for culling, significantly reducing CPU load, improving GPU utilization, and boosting overall computational efficiency.
[0032] In this embodiment, by dynamically filtering invisible tiles in the geological body block model, the server load can be reduced and the efficiency of loading and rendering the block model can be improved.
[0033] In one embodiment, a multi-threaded parallel loading of a geological body block model is created based on WebWorker technology; Among them, the main thread reads the geological block model scene data, responds to user interaction operations, and obtains potential visible tiles according to changes in viewing angles. The child thread asynchronously loads the geological block model tile data and preprocesses and renders the geological block model.
[0034] This implementation uses WebWorker technology for multi-threaded functionality, enabling parallel loading of model data. The main thread is responsible for reading scene data, responding to user interactions, and obtaining the potentially visible set based on camera changes. The child thread (rendering thread) asynchronously loads model data, performs pre-processing (such as decoding and topology reconstruction), and renders the model. Multi-threaded loading improves the scheduling and loading efficiency of block-based model data.
[0035] In one embodiment, a multi-level buffer is opened in the memory space, and tile data is scheduled and memory is reused based on the W-Buffer; The tile resource data of the invisible area in the multi-level buffer is released based on a least recently used strategy.
[0036] Multi-level caches are created in memory, and Wbuffer technology is used to enable fast data transfer and dynamic scheduling, reducing time consumption. Dynamic management of memory length based on the in-memory buffer reuses memory, reduces disk reads, and reduces loading times. Tile data is managed using a least recently used (LRU) strategy, releasing resources in invisible areas in real time to ensure stable rendering frame rates and enhance the user experience.
[0037] In one embodiment, when the amount of tile data loaded for the geological body block model exceeds a preset value, based on a progressive loading strategy, low-precision geological body block models are loaded first, and the accuracy of the loaded block models is gradually improved.
[0038] The progressive loading strategy is a loading method that optimizes performance by loading critical and non-critical resources in stages. Its core lies in balancing user experience and resource efficiency and setting the order of data loading in each stage.
[0039] In this embodiment, for large-scale block model data loading, a progressive loading strategy is adopted, first displaying a low-precision model and gradually improving the model accuracy, which can improve rendering display efficiency and ensure user experience.
[0040] In one embodiment, instanced rendering is performed on repetitive geological structures and objects in a block model of a geological volume.
[0041] Use instanced rendering for repeated geological structures (such as rock layers, faults) or objects (such as water areas) in geological block models to reduce the number of draw calls and reduce the processor load during data loading and rendering.
[0042] In some embodiments, during the model parallel rendering process, WebGPU is used by default to achieve high-performance rendering. If it is detected that the client is a low-end device, it is automatically downgraded to use WebGL for rendering.
[0043] In some embodiments, synchronization of cloud data and local cache is achieved based on RESTful API, supporting seamless access from PC, mobile terminals and VR devices.
[0044] It should be understood that the sequence numbers of the steps in the above embodiments do not imply a specific order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0045] Figure 2 A schematic structural diagram of a three-dimensional geological body rendering system provided in an embodiment of the present invention, the system comprising: Model acquisition module 210, used to acquire a three-dimensional geological body model; A model simplification module 220 is used to simplify the three-dimensional geological body model based on a half-edge folding algorithm of a quadratic error measure; The model block module 230 is used to block the simplified geological body model through a plane quadtree, and construct a spatial index tree according to the blocks to generate a geological body block model at the LOD level; The model loading module 240 is used to obtain the user's viewpoint position and field of view, calculate the screen space error based on the user's viewpoint position and field of view, switch the geological block model of the corresponding LOD level, and preferentially load the high-precision near-view tiles in the geological block model; Preferably, the model loading module 240 includes: The preloading unit is used to load the geological block model that enters the view area in advance through trajectory prediction based on the viewpoint position change trajectory.
[0046] The model rendering module 250 is used for parallel rendering of the geological body block model tiles based on the WebGPU computing shader; The compression transmission module 260 is used to compress the tile data of the rendered geological block model using the Draco compression algorithm and then send the geological block model data stream to the client.
[0047] In one embodiment, the model loading module 240 includes: The tile filtering unit constructs a hierarchical bounding volume scene tree and filters the invisible tiles in the geological block model according to the hierarchical bounding volume scene tree and the viewing frustum corresponding to the user's viewpoint position.
[0048] Optionally, the step of preferentially loading high-precision near-view tiles in the geological body block model further includes: Create multi-threaded parallel loading of geological block models based on WebWorker technology; Among them, the main thread reads the geological block model scene data, responds to user interaction operations, and obtains potential visible tiles according to changes in viewing angles. The child thread asynchronously loads the geological block model tile data and preprocesses and renders the geological block model.
[0049] Optionally, the step of preferentially loading high-precision near-view tiles in the geological body block model further includes: Create a multi-level buffer in the memory space, and schedule tile data and reuse memory based on W-Buffer; The tile resource data of the invisible area in the multi-level buffer is released based on a least recently used strategy.
[0050] In one embodiment, the model loading module 240 includes: The progressive loading unit is used to prioritize loading low-precision geological block models based on the progressive loading strategy when the amount of tile data loaded for the geological block model exceeds the preset value, and gradually improve the accuracy of the loaded block models.
[0051] In one embodiment, the model rendering module 250 includes: The instanced drawing unit is used to perform instanced drawing on repeated geological structures and objects in the geological block model.
[0052] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described systems and modules can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0053] Figure 3 This is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. The electronic device is used for rendering a three-dimensional geological model. Figure 3 As shown, the electronic device 3 of this embodiment includes: a memory 310, a processor 320 and a system bus 330, and the memory 310 includes an executable program 3101 stored thereon. It can be understood by those skilled in the art that Figure 3 The electronic device structure shown in the figure does not constitute a limitation to the electronic device, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0054] The following combination Figure 3 A detailed introduction to the various components of electronic equipment: Memory 310 can be used to store software programs and modules. Processor 320 executes the software programs and modules stored in memory 310 to perform various functional applications and data processing of the electronic device. Memory 310 may primarily include a program storage area and a data storage area. The program storage area may store an operating system and at least one application required for a function (such as sound playback or image playback). The data storage area may store data generated based on the use of the electronic device (such as cached data). Memory 310 may also include high-speed random access memory and non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state memory device.
[0055] The memory 310 includes an executable program 3101 for the interface generation method. The executable program 3101 can be divided into one or more modules / units. The one or more modules / units are stored in the memory 310 and executed by the processor 320 to implement geological body model rendering, etc. The one or more modules / units can be a series of computer program instruction segments that can perform specific functions. The instruction segments are used to describe the execution process of the executable program 3101 in the electronic device 3. For example, the executable program 3101 can be divided into functional modules such as a model acquisition module, a model simplification module, a model segmentation module, a model loading module, a model rendering module, and a compression transmission module.
[0056] The processor 320 is the control center of the electronic device. It connects all parts of the electronic device using various interfaces and lines. By running or executing software programs and / or modules stored in the memory 310 and accessing data stored in the memory 310, it performs various functions of the electronic device and processes data, thereby monitoring the overall status of the electronic device. Optionally, the processor 320 may include one or more processing units; preferably, the processor 320 may integrate an application processor and a modem processor, wherein the application processor primarily processes the operating system, application programs, etc., and the modem processor primarily handles wireless communications. It is understood that the modem processor may not be integrated into the processor 320.
[0057] The system bus 330 connects the various functional components within the computer and can transmit data, address information, and control information. It can be a PCI bus, ISA bus, or CAN bus, for example. Instructions from the processor 320 are transmitted to the memory 310 via the bus, and the memory 310 feeds data back to the processor 320. The system bus 330 is responsible for the exchange of data and instructions between the processor 320 and the memory 310. Of course, the system bus 330 can also connect to other devices, such as network interfaces and display devices.
[0058] In an embodiment of the present invention, the executable program executed by the processing 320 included in the electronic device includes: Obtaining a three-dimensional geological model; The three-dimensional geological model is simplified by using the half-edge folding algorithm based on quadratic error measure; The simplified geological body model is divided into blocks through a plane quadtree, and a spatial index tree is constructed based on the blocks to generate a geological body block model at the LOD level; Obtain the user's viewpoint position and field of view, calculate the screen space error based on the user's viewpoint position and field of view, switch the geological block model of the corresponding LOD level, and prioritize loading high-precision near-view tiles in the geological block model; Parallel rendering of geological block model tiles based on WebGPU compute shader; After the tile data of the rendered geological block model is compressed using the Draco compression algorithm, the geological block model data stream is sent to the client.
[0059] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described systems, devices and modules can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0060] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.
[0061] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that the technical solutions described in the above embodiments can still be modified, or some of the technical features thereof can be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A three-dimensional geological body rendering method, characterized in that: include: Obtaining a three-dimensional geological model; The three-dimensional geological model is simplified by using the half-edge folding algorithm based on quadratic error measure; The simplified geological body model is divided into blocks through a plane quadtree, and a spatial index tree is constructed based on the blocks to generate a geological body block model at the LOD level; Obtain the user's viewpoint position and field of view, calculate the screen space error based on the user's viewpoint position and field of view, switch the geological block model of the corresponding LOD level, and prioritize loading high-precision near-view tiles in the geological block model; Parallel rendering of geological block model tiles based on WebGPU compute shader; After the tile data of the rendered geological block model is compressed using the Draco compression algorithm, the geological block model data stream is sent to the client.
2. The method according to claim 1, characterized in that The calculating of the screen space error according to the user's viewpoint position and the viewing range and switching the geological block model corresponding to the LOD level also includes: Based on the viewpoint position change trajectory, the geological block model that enters the view area is loaded in advance through trajectory prediction.
3. The method according to claim 1, characterized in that The method of preferentially loading high-precision near-view tiles in the geological body block model further includes: A hierarchical bounding volume scene tree is constructed, and invisible tiles in the geological block model are filtered according to the hierarchical bounding volume scene tree and the viewing frustum corresponding to the user's viewpoint position.
4. The method according to claim 1, wherein The method of preferentially loading high-precision near-view tiles in the geological body block model further includes: Create multi-threaded parallel loading of geological block models based on WebWorker technology; Among them, the main thread reads the geological block model scene data, responds to user interaction operations, and obtains potential visible tiles according to changes in viewing angles. The child thread asynchronously loads the geological block model tile data and preprocesses and renders the geological block model.
5. The method according to claim 1, wherein The method of preferentially loading high-precision near-view tiles in the geological body block model further includes: Create a multi-level buffer in the memory space, and schedule tile data and reuse memory based on W-Buffer; The tile resource data of the invisible area in the multi-level buffer is released based on a least recently used strategy.
6. The method according to claim 1, characterized in that The method of preferentially loading high-precision near-view tiles in the geological body block model further includes: When the amount of tile data loaded for the geological body block model exceeds the preset value, the low-precision geological body block model is loaded first based on the progressive loading strategy, and the accuracy of the loaded block model is gradually improved.
7. The method according to claim 1, characterized in that The WebGPU-based compute shader for parallel rendering of geological body block model tiles also includes: Instance the repeated geological structures and objects in the geological block model.
8. A three-dimensional geological body rendering system, characterized in that: include: Model acquisition module, used to obtain three-dimensional geological body model; Model simplification module, used to simplify the 3D geological model using the half-edge folding algorithm based on quadratic error measure; The model block module is used to block the simplified geological body model through a plane quadtree, and build a spatial index tree based on the blocks to generate a geological body block model at the LOD level; The model loading module is used to obtain the user's viewpoint position and field of view, calculate the screen space error based on the user's viewpoint position and field of view, switch the geological block model of the corresponding LOD level, and give priority to loading the high-precision near-view tiles in the geological block model; Model rendering module, used for parallel rendering of geological body block model tiles based on WebGPU compute shader; The compression transmission module is used to compress the tile data of the rendered geological block model through the Draco compression algorithm and send the geological block model data stream to the client.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the steps of the three-dimensional geological body rendering method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed, the steps of the three-dimensional geological body rendering method according to any one of claims 1 to 7 are implemented.
Citation Information
Cited By
High-precision terrain generation method, device and equipment based on dynamic paging
CN121259154A