A method and device for visual version comparison of 3D models

By generating and synthesizing frame buffering and differential visual shading results of three-dimensional models, the problem of difficult to manage and compare the version of the three-dimensional grid model in the prior art is solved, and the visualization and interactive presentation of the version differences of the three-dimensional model are realized, which improves project management efficiency.

CN117373013BActive Publication Date: 2025-06-13ZHEJIANG UNIV +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311303493.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-10-10
Publication Date
2025-06-13
Estimated Expiration
2043-10-10

AI Technical Summary

Technical Problem

Existing version control software is difficult to effectively manage and compare different versions of the three-dimensional grid model, especially in large three-dimensional scenario projects, resulting in difficulty in tracking and managing version differences.

Method used

A method and device for comparing visual versions of three-dimensional models is provided. By inputting rendering configuration data and different versions of three-dimensional model data, a frame buffer corresponding to each type of view mode is generated, and a difference visual shading algorithm is selected to generate differential visual shading results for the frame buffer, and finally a view is synthesized according to the view layout.

Benefits of technology

It realizes the visual presentation of geometric features of three-dimensional model files in different versions, helping users quickly understand the differences in asset versions and improving the efficiency of model production and project management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117373013B_ABST
    Figure CN117373013B_ABST
Patent Text Reader

Abstract

The present invention discloses a method and apparatus for visual version comparison of three-dimensional models, including: inputting rendering configuration data; inputting three-dimensional model data of different versions and configuring view layouts and view modes; generating frame buffers corresponding to each type of view mode for the three-dimensional model data of each version; selecting a differential visualization coloring algorithm corresponding to each type of view mode to generate a differential visualization coloring result for the corresponding frame buffer; and synthesizing views of the differential visualization coloring results according to the selected view layout. The method and apparatus can compare the differences in geometric and other features of model files in different versions and present the difference results to users in a visual and interactive manner.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of three-dimensional mesh models, graphics rendering, version comparison, and visualization intersection, and particularly relates to a method and device for visualizing version comparison of three-dimensional models. Background Art

[0002] With the development and maturity of three-dimensional graphics, a large number of three-dimensional scene projects have emerged in industries such as virtual reality, simulation, industrial visualization, education, animation, and games. The scale of the version repository of a large three-dimensional scene project can reach hundreds of gigabytes, and there may be hundreds of developers, including programmers, scene artists, technical artists, modelers, animators, etc., who produce different contents and collaborate simultaneously, which belongs to a typical large and complex software project.

[0003] In three-dimensional graphics scene projects, version management is the basis of collaboration and is related to the efficiency of software development. The current mainstream version control software on the market, such as Git, Subversion, etc., are all file-centered version control systems, especially text files. Their core functions, such as change tracking, comparison, and merging, have good support for text files. However, for three-dimensional scene projects, whether in terms of quantity or volume, most asset files are either binary files or texts composed of a large amount of programmatically generated data. Coupled with the numerous data representation methods and content structures of various three-dimensional asset files, the above functions of the mainstream version control software are partially or even completely ineffective.

[0004] Among them, polygonal meshes, especially triangular mesh models, are one of the most commonly used geometric representation methods in mainstream real-time graphics applications for 3D scenes. Their composition often includes several attributes of mesh vertices such as vertex positions, vertex normals, texture coordinates, etc., as well as a triangle sequence composed of vertex indices. As a project progresses, a model often needs to be repeatedly modified and iterated by digital content creation (DCC) software such as 3D modeling and sculpting tools. Taking a triangular mesh model as an example, such modifications include, but are not limited to, adding and deleting meshes and sub-meshes, subdividing triangulated meshes, adding and deleting vertices, transforming vertex positions, manually modifying and programmatically generating vertex normals, generating and binding vertex texture coordinates, and often each version change involves the superposition and combination of one or more of the above operations. A large 3D project can contain thousands or tens of thousands of mesh models, and during the entire 3D project lifecycle, a model can be iterated from several to hundreds of versions. Thus, the number of different versions of different models can reach the million level. Traditional version control software is difficult to parse 3D mesh models to present their differences, let alone achieve visualization. This makes version control difficult for the asset production pipeline of 3D scene projects because relevant production personnel have difficulty distinguishing different versions and even more difficulty tracking the difference changes between different versions.

[0005] In summary, version control for 3D scenes has always been a challenge faced by the 3D industry. Among them, tracking version changes of 3D models is one of the typical problems. Moreover, as 3D scene project models become more refined, the scene scale becomes larger, and the complexity becomes higher, the problem becomes more prominent. Therefore, a visualization version comparison method for 3D models is of great significance for solving the version difference tracking of model files in 3D scene projects, which helps improve the production efficiency of asset production personnel and the entire project. Summary of the Invention

[0006] In view of the above, the purpose of the present invention is to provide a visualization version comparison method and device for 3D models, which can compare the differences in geometric and other features of model files in different versions and present the difference results to users in a visual and interactive manner.

[0007] To achieve the above purpose, a visualization version comparison method for 3D models provided by the present invention includes the following steps:

[0008] Input rendering configuration data;

[0009] Input 3D model data of different versions and configure the view layout and view mode;

[0010] Generate a frame buffer corresponding to each view mode for the 3D model data of each version;

[0011] Select the differential visualization coloring algorithm corresponding to each type of view mode to generate the differential visualization coloring result for the corresponding frame buffer;

[0012] Synthesize the view according to the view layout for the differential visualization coloring result based on the selected view layout.

[0013] Preferably, the rendering configuration data includes lighting information, camera parameters, display viewport parameters, white model material parameters corresponding to the white model coloring effect, and custom materials;

[0014] The view layout includes a single view layout, a three-view comparison layout, a left-right comparison layout, and a sequence comparison layout;

[0015] The view modes include a coloring view, a geometric difference view, a normal difference view, and a texture coordinate difference view.

[0016] Preferably, when there is an offset in the coordinate system between different versions of 3D model data, calibration and alignment should be performed based on the 3D model space before rendering.

[0017] Preferably, the type category of the frame buffer is determined by the view mode type. For the coloring view, a color buffer needs to be generated; for the geometric difference view, a white model coloring buffer, a depth buffer, and a barycentric coordinate buffer need to be generated; for the normal difference view, a white model coloring buffer and a normal buffer need to be generated; for the texture coordinate difference view, a white model coloring buffer and a texture coordinate buffer need to be generated.

[0018] Preferably, the step of selecting the differential visualization coloring algorithm corresponding to each type of view mode to generate the differential visualization coloring result for the corresponding frame buffer includes:

[0019] For the coloring view, directly use the color buffer as the differential visualization coloring result;

[0020] For the geometric difference view, use the geometric difference visualization coloring algorithm to perform coloring calculations on the white model coloring buffer, the depth buffer, and the barycentric coordinate buffer to generate the corresponding differential visualization coloring result;

[0021] For the normal difference view, use the normal difference visualization coloring algorithm to perform coloring calculations on the white model coloring buffer and the normal buffer to generate the corresponding differential visualization coloring result;

[0022] For the texture coordinate difference view, use the texture coordinate difference visualization coloring algorithm to perform coloring calculations on the white model coloring buffer and the texture coordinate buffer to generate the corresponding differential visualization coloring result.

[0023] Preferably, the geometric difference visualization coloring algorithm is used to present the geometric changes in the 3D model data of two versions, including two parts. The first part determines whether there are geometric differences in the positions on the model corresponding to the pixels based on the depth buffer and barycentric coordinate buffer. The second part generates the corresponding difference visualization coloring result according to the white model coloring buffer, including:

[0024] For all pixels determined to have geometric differences, the final coloring color is calculated as follows:

[0025] Color B ′ = mix(Color B , Color diff , w diff ) (1)

[0026] Color final = mix(Color A , Color B ′ , w mix ) (2)

[0027] Among them, Color final is the color value finally output to the difference visualization coloring result, Color A and Color B are the color values of the white model coloring buffers of the two input versions of 3D model data respectively, Color diff and w diff are the basic color and mixing weight preset to mark the different parts respectively, w mix is the transparency preset to display the coloring results of the two versions simultaneously to show the differences between the two versions. mix() is simple linear mixing, defined as mix(a, b, w) = w × a + (1 - w) × b, w ∈ [0, 1];

[0028] For pixels not marked as having geometric differences, the color value of their white model coloring buffer is directly output as the difference visualization coloring result.

[0029] Preferably, the normal difference visualization coloring algorithm is used to visualize the changes in re-binding or generating normals. By reading the world space normals in the normal buffer pixel by pixel and comparing, if the values are different, it is marked as a change. For the pixels with changes, the normals of the second input version of 3D model data are converted to colors and output.

[0030] Preferably, the texture coordinate difference visualization coloring algorithm is used to visualize the changes in re-binding or generating texture coordinates. By reading the texture coordinates in the texture coordinate buffer pixel by pixel and comparing them, if there are numerical differences, they are marked as changed. For the pixels with changes, the texture coordinates of the second version of the three-dimensional model data input are converted into color output.

[0031] Preferably, synthesizing the view according to the view layout for the difference visualization coloring result includes:

[0032] Generating the scaling offset of each visualization output on the final output screen according to the view layout, and rewriting the single difference visualization coloring result output to the corresponding offset position determined by the scaling offset on the final output visualization coloring result.

[0033] To achieve the above-mentioned invention purpose, the embodiment also provides a three-dimensional model visualization version comparison device, including an input module, a configuration module, a frame buffer generation module, a differential coloring module, and a view synthesis module;

[0034] The input module is used to input rendering configuration data and three-dimensional model data of different versions;

[0035] The configuration module is used to configure the view layout and view mode;

[0036] The frame buffer generation module is used to generate frame buffers corresponding to each type of view mode for the three-dimensional model data of each version;

[0037] The differential coloring module is used to select the difference visualization coloring algorithm corresponding to each type of view mode to generate the difference visualization coloring result for the corresponding frame buffer;

[0038] The view synthesis module is used to synthesize the view according to the selected view layout for the difference visualization coloring result.

[0039] Compared with the prior art, the beneficial effects of the present invention at least include:

[0040] By the three-dimensional model data of the historical version input by the user, frame buffers of geometric, material, and coloring information of the three-dimensional model data of each version are generated, and then visual image results of version differences are generated according to the frame buffers of geometric, material, and coloring information of different version models according to the difference visualization coloring algorithm. Thus, it can bring the visual difference visualization presentation of different versions of the three-dimensional model to the user, and help model production and project management personnel quickly understand the differences in asset versions. Description of the Drawings

[0041] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.

[0042] Figure 1 is a flowchart of a method for visual version comparison of 3D models provided by an embodiment;

[0043] Figure 2 is a schematic structural diagram of a device for visual version comparison of 3D models provided by an embodiment. Detailed Embodiments

[0044] To make the objectives, technical solutions, and advantages of the present invention more clearly understood, the following further details the present invention in conjunction with the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and do not limit the protection scope of the present invention.

[0045] As Figure 1 shown, a method for visual version comparison of 3D models provided by an embodiment of the present invention includes the following steps:

[0046] S01, input rendering configuration data.

[0047] In the embodiment, all rendering configuration data required for model rendering is generated according to parameters input by the user or preset by the system, including lighting information, camera parameters, display viewport parameters, white model material parameters corresponding to white model coloring effects, custom materials, etc. It should be noted that, in order to better present the visual differences in the geometric information of the model to the user, the embodiment of the present invention provides a white model coloring effect display for the user, and the material information of this part of the effect is also included in the rendering configuration, allowing the user to configure custom materials as a rendering effect for geometric difference visualization.

[0048] S02, input 3D model data of different versions and configure the view layout and view mode.

[0049] In the embodiment, the system receives the input of 3D model data of two or more versions from the user. This input should be two or more independent 3D model data. Each 3D model data, regardless of whether it contains sub-models or other lower-level structures, is considered a complete version. If there is an offset in the coordinate system between the 3D model data of different versions, it should be calibrated and aligned based on the 3D model space before rendering.

[0050] In addition to inputting 3D model data, the user also needs to configure the view layout and view mode. Specifically, in the embodiments of the present invention, the view layout includes a single view layout, a three-view comparison layout, a left-right comparison layout, a sequence comparison layout, etc. The view layout not only determines how many comparison differential results will be arranged and presented to the user on the screen finally, but also determines the number and input of the differential visualization coloring tasks.

[0051] The single view layout corresponds to the input of two versions of 3D model data. The two versions of 3D model data are respectively executed in S03 to generate their respective frame buffers according to the same rendering configuration, and then the frame buffers of the two versions of 3D model data are used as inputs to execute S04 to generate a differential visualization coloring result, and the picture is synthesized to the final output through S05.

[0052] The three-view mode is to obtain an orthogonal set of three camera positions according to user input or preset. Three camera configurations are respectively adopted, and a total of three differential visualization coloring results are generated for each camera configuration in the manner of the single view layout, and then arranged and output in sequence. They can be arranged from top to bottom or from left to right according to the output order. When there are multiple views, they can be scaled proportionally according to the viewport aspect ratio.

[0053] For the left-right comparison layout of two versions of 3D model data V1 and V2, after respectively executing S03 to generate frame buffers F BV1 and F BV2, (F BV1, F BV2) and (F BV2, F BV1) are respectively used as inputs to execute S04 for differential visualization coloring to obtain differential visualization coloring results R1 and R2, and then the results are arranged left and right and scaled according to the viewport for output.

[0054] The sequence view layout corresponds to a series of versions V1, V2,..., VN of the input. For each two adjacent Vi and Vi+1 (1 ≤ i ≤ N - 1) of the input, S03 and S04 are respectively executed in the mode of the single view layout, and then the N - 1 generated visualization coloring results R1... RN - 1 are arranged and output in sequence.

[0055] The view modes in the embodiments of the present invention include a coloring view, a geometric difference view, a normal difference view, a texture coordinate difference view, etc. The view mode determines the types and quantities of the frame buffers that need to be generated in S03 and the visualization coloring algorithms adopted in S04, and finally determines the effect of the presented visualization output.

[0056] S03 generates frame buffers corresponding to each view mode for each version of the 3D model data.

[0057] In the embodiments of the present invention, for each input version of the three-dimensional model data, a rendering configuration is generated according to the same preset parameters, and a plurality of frame buffers recording model geometric information are rendered by using a multi-target rendering technique and a graphics rendering pipeline. Each generated frame buffer contains at least one type of geometric, material, or shading information, such as a single-channel or multi-channel image sequence of white model shading, full model shading, depth, barycentric coordinates, world space normal, texture coordinates, etc. This step needs to be independently executed for each version within the version comparison range and a set of independent frame buffers are generated.

[0058] Among them, a frame buffer refers to one or a group of images stored in video memory or memory and saving information in units of pixels, and a frame buffer image saving specific information such as color can be called a color buffer. The technology for generating the frame buffers required in the embodiments of the present invention is similar to the geometry buffer (GBuffer) in deferred shading technology. Taking a typical rasterization graphics rendering pipeline as an example, mainly by interpolating vertex attributes to generate fragment or pixel information, and then outputting the information to be recorded to multiple frame buffer objects through multi-target rendering.

[0059] The category of the frame buffer is determined by the view mode and is consistent with the input of the visualization shading algorithm in S04. Specifically, in the embodiments of the present invention, the coloring view needs to output the color buffer obtained by rendering the version model according to the original material, the geometric difference view needs to output the white model shading buffer, depth buffer, barycentric coordinate buffer, the normal difference view needs to output the white model shading buffer, (world space) normal buffer, and the texture coordinate difference view needs to output the white model shading buffer, texture coordinate buffer.

[0060] Among them, the color buffer and depth buffer can be directly obtained by a typical rendering pipeline; the white model shading buffer is obtained by shading according to the rendering pipeline according to the rendering configuration and preset white model material parameters; the normal buffer and texture coordinate buffer can be obtained by writing according to vertex attributes (after transformation); there are multiple methods for obtaining the barycentric coordinate buffer. One method in the embodiments of the present invention is listed. When reading the model data, the barycentric coordinates of each vertex are generated according to the vertex index one by one, and then the per-pixel barycentric coordinate information can be obtained by means of vertex output interpolation in the rendering pipeline.

[0061] S04, select the difference visualization shading algorithm corresponding to each type of view mode to generate the difference visualization shading result for the corresponding frame buffer.

[0062] In the embodiments of the present invention, the frame buffer generated by inputting the three-dimensional model data of two versions through S03 is used. Then, according to the view mode set in S02, the corresponding differential visualization coloring algorithm is selected using the rendering pipeline in screen space, and the generated coloring result is the corresponding visualized image output. One or more visualization results can be obtained therefrom. According to the view layout and view mode, the differential visualization results of all views are sequentially output for all input frame buffers of the version sequence. Specifically, the view modes in the embodiments of the present invention include the coloring view, the geometric difference view, the normal difference view, and the texture coordinate difference view. Except that the coloring view directly outputs the color buffer as the visualization result, the others respectively correspond to using the S04-a geometric difference visualization coloring algorithm, the S04-b normal difference visualization coloring algorithm, and the S04-c texture coordinate difference visualization coloring algorithm.

[0063] The S04-a geometric difference visualization coloring algorithm is mainly used to present the changes in the geometry of the three-dimensional model data of two versions, especially changes such as model addition, deletion, deformation, subdivision, and simplification. The geometric difference visualization coloring algorithm adopted in the embodiments of the present invention can be divided into two parts. One part is to judge whether there is a geometric difference in the position on the model corresponding to the pixel based on the depth buffer and the barycentric coordinate buffer, and the second part is to generate the differential visualization coloring result according to the white model coloring buffer.

[0064] In the embodiments of the present invention, pixel depth combined with barycentric coordinates is used to judge whether there is a geometric difference. Since the same rendering configuration is adopted when generating the frame buffer, it means that the input frame buffers use exactly the same camera and coordinate system. Therefore, the sampled depth of the same pixel can represent whether the world coordinates of the model at the same viewing angle are consistent. Thus, as long as the depths in the depth buffers of the three-dimensional model data of the two versions are not equal, it can be determined that there is a difference in the geometric coordinates corresponding to this pixel between the two versions. However, it is inaccurate to judge only by the equality of depths. If there is deformation or other changes between the three-dimensional model data of the two versions, but the different versions of the three-dimensional model data may still overlap at a specific geometric position, this point will not be differentially colored at this time. To solve this problem, the barycentric coordinate information provided by the barycentric coordinate buffer is added in the embodiments of the present invention to represent the local geometric information of the model. Because in the change of modifying vertex coordinates, the possibility that a point remains unchanged in both the global geometric information (surface world coordinates) and the local geometric information (surface barycentric coordinates) is almost negligible. Therefore, as long as the depth buffer or the barycentric coordinate buffer of the three-dimensional model data of the two versions is different at the same pixel, the pixel can be marked as changed, and such a judgment method can cover most cases of changes.

[0065] For all pixels determined to have geometric differences, the final coloring color Color is calculated according to formulas (1) and (2). finalFor pixels not marked as having geometric differences, the color value of their white model shading buffer is directly output as the difference visualization shading result.

[0066] The S04-b normal difference visualization shading algorithm and the S04-c texture coordinate difference visualization shading algorithm are respectively used to visualize the changes in the rebinding / generation of normals and texture coordinates. The two are basically the same in process but different in the data used. Specifically, by reading the world space normals / texture coordinates in the normal buffer and texture coordinate buffer pixel by pixel and comparing them, if the values are different, they are marked as changed. For the pixels with changes, the shading visualization scheme adopted in the embodiments of the present invention is to convert the normals / texture coordinates of the input second version of the 3D model data into color output, which can present a better visualization effect in the left-right comparison view mode. If a pixel is not marked as changed, the white model shading buffer corresponding to the pixel is output.

[0067] S05. Synthesize views of the difference visualization shading results according to the selected view layout.

[0068] In the embodiments of the present invention, according to the input view layout, all the visualization results obtained in S04 are arranged and merged according to the view layout to form the finally output picture. Specifically, according to the view layout setting in S02, the scaling offset of each visualization output on the finally output picture is generated. For the single difference visualization shading result output in S04, it is rewritten to the corresponding offset position determined by the scaling offset on the finally output visualization shading result. Repeat the above process until all the visualization shading results are output to obtain the final visualization result.

[0069] Based on the same inventive concept, as Figure 2 shown, the embodiment also provides a 3D model visualization version comparison device 20, including an input module 21, a configuration module 22, a frame buffer generation module 23, a differential shading module 24, and a view synthesis module 25; wherein, the input module 21 is used to input rendering configuration data and 3D model data of different versions; the configuration module 22 is used to configure the view layout and view mode; the frame buffer generation module 23 is used to generate a frame buffer corresponding to each type of view mode for the 3D model data of each version; the differential shading module 24 is used to select the difference visualization shading algorithm corresponding to each type of view mode to generate a difference visualization shading result for the corresponding frame buffer; the view synthesis module 25 is used to synthesize views of the difference visualization shading results according to the selected view layout.

[0070] It should be noted that when the visualization version comparison device for the 3D model provided in the above embodiments performs the visualization version comparison of the 3D model, the above-described division of each functional module should be used as an example for illustration. The above functions can be assigned to different functional modules according to needs, that is, the internal structure of the terminal or server is divided into different functional modules to complete all or part of the functions described above. In addition, the visualization version comparison device for the 3D model provided in the above embodiments and the embodiment of the visualization version comparison method for the 3D model belong to the same concept. For the specific implementation process, please refer to the embodiment of the visualization version comparison method for the 3D model, which will not be elaborated here.

[0071] A method and device for visualizing and comparing versions of a 3D model provided by the above embodiments generate a set of frame buffers containing their vertex or shading attributes for each model according to its geometric information according to a unified rendering configuration based on the model of the historical version input by the user; according to the frame buffer information corresponding to the models in the input version sequence, perform differential visualization coloring in different versions or version sequences in turn, and the coloring algorithm is determined by the view mode input by the user; splice and synthesize the differential visualization coloring results of two or more versions according to the view layout to form the final visual presentation, helping model production and project management personnel quickly understand the differences in asset versions.

[0072] The above-described specific implementation manners have elaborated in detail the technical solutions and beneficial effects of the present invention. It should be understood that the above is only the most preferred embodiment of the present invention and is not used to limit the present invention. Any modifications, supplements, equivalent replacements, etc. made within the scope of the principles of the present invention shall be included in the protection scope of the present invention.

Claims

1. A method for visual version comparison of 3D models, characterized in that, it includes the following steps: Input rendering configuration data; Input 3D model data of different versions and configure the view layout and view mode; Generate a frame buffer corresponding to each type of view mode for the 3D model data of each version, where the category of the frame buffer is determined by the view mode type. For the shaded view, a color buffer needs to be generated; For the geometric difference view, a white model shaded buffer, a depth buffer, and a barycentric coordinate buffer need to be generated; For the normal difference view, a white model shaded buffer and a normal buffer need to be generated; for the texture coordinate difference view, a white model shaded buffer and a texture coordinate buffer need to be generated; Select a difference visualization shading algorithm corresponding to each type of view mode to generate a difference visualization shading result for the corresponding frame buffer; Synthesize the views according to the selected view layout for the difference visualization shading results.

2. The method for visual version comparison of 3D models according to claim 1, characterized in that, the rendering configuration data includes lighting information, camera parameters, display viewport parameters, white model material parameters corresponding to the white model shading effect, and custom materials; the view layout includes a single view layout, a three-view comparison layout, a left-right comparison layout, and a sequence comparison layout; the view mode includes a shaded view, a geometric difference view, a normal difference view, and a texture coordinate difference view.

3. The method for visual version comparison of 3D models according to claim 1, characterized in that, When there is an offset in the coordinate system between the 3D model data of different versions, it should be calibrated and aligned based on the 3D model space before rendering.

4. The method for visual version comparison of 3D models according to claim 1, characterized in that, The step of selecting a difference visualization shading algorithm corresponding to each type of view mode to generate a difference visualization shading result for the corresponding frame buffer includes: For the shaded view, directly use the color buffer as the difference visualization shading result; For the geometric difference view, use a geometric difference visualization shading algorithm to perform shading calculations on the white model shaded buffer, the depth buffer, and the barycentric coordinate buffer to generate the corresponding difference visualization shading result; For the normal difference view, use a normal difference visualization shading algorithm to perform shading calculations on the white model shaded buffer and the normal buffer to generate the corresponding difference visualization shading result; For the texture coordinate difference view, use a texture coordinate difference visualization shading algorithm to perform shading calculations on the white model shaded buffer and the texture coordinate buffer to generate the corresponding difference visualization shading result.

5. The method for visual version comparison of 3D models according to claim 4, characterized in that, The geometric difference visualization shading algorithm is used to present the geometric changes between the 3D model data of two versions, including two parts. The first part is to judge whether there are geometric differences in the positions of the pixels corresponding to the model based on the depth buffer and the barycentric coordinate buffer, and the second part is to generate the corresponding difference visualization shading result according to the white model shaded buffer, including: For all pixels judged to have geometric differences, calculate the final shading color in the following way: ; ; Among them, is the color value finally output to the differential visualization coloring result, and are the color values of the white model coloring buffers of the three-dimensional model data of the two input versions respectively, and are the basic color and mixing weight preset for marking the differential part respectively, is the transparency preset for showing the coloring results of the two versions simultaneously to display the differences between the two versions, is simple linear mixing, defined as ; For pixels not marked as having geometric differences, the color value of their white model shading buffer is directly output as the difference visualization shading result.

6. The method for comparing visualization versions of a 3D model according to claim 4, wherein, the normal difference visualization shading algorithm is used to visualize the changes in the re-bound or generated normals. By reading the world space normals in the normal buffer pixel by pixel and comparing them, if there are differences in the values, they are marked as changed. For the pixels with changes, the normals of the second version of the 3D model data input are converted into colors and output.

7. The method for comparing visualization versions of a 3D model according to claim 4, wherein, the texture coordinate difference visualization shading algorithm is used to visualize the changes in the re-bound or generated texture coordinates. By reading the texture coordinates in the texture coordinate buffer pixel by pixel and comparing them, if there are differences in the values, they are marked as changed. For the pixels with changes, the texture coordinates of the second version of the 3D model data input are converted into colors and output.

8. The method for comparing visualization versions of a 3D model according to claim 1, wherein, synthesizing the view of the difference visualization shading result according to the selected view layout includes: generating the scaling offset of each visualization output on the final output screen according to the view layout, and rewriting the single difference visualization shading result output to the corresponding offset position determined by the scaling offset on the visualization shading result of the final output.

9. A device for comparing visualization versions of a 3D model, wherein, it includes an input module, a configuration module, a frame buffer generation module, a differential shading module, and a view synthesis module; the input module is used to input rendering configuration data and 3D model data of different versions; the configuration module is used to configure the view layout and view mode; the frame buffer generation module is used to generate a frame buffer corresponding to each type of view mode for the 3D model data of each version, where the category of the frame buffer is determined by the view mode type. For the shading view, a color buffer needs to be generated; for the geometric difference view, a white model shading buffer, a depth buffer, and a barycentric coordinate buffer need to be generated; for the normal difference view, a white model shading buffer and a normal buffer need to be generated; for the texture coordinate difference view, a white model shading buffer and a texture coordinate buffer need to be generated; the differential shading module is used to select the difference visualization shading algorithm corresponding to each type of view mode to generate the difference visualization shading result for the corresponding frame buffer; the view synthesis module is used to synthesize the view of the difference visualization shading result according to the selected view layout.

Citation Information

Patent Citations

  • Efficient toning method for large-scale three-dimensional model

    CN114677465A

  • Geometry primitive shading graphics system

    WO2010041215A1