Three-dimensional model data processing method and device

Three-dimensional model data processing method and device

  • CN 104,637,089 B
  • Filed: 02/15/2015
  • Issued: 08/04/2020
  • Est. Priority Date: 02/15/2015
  • Status: Active Grant
First Claim
Patent Images

1. A method of three-dimensional model data processing, the method comprising:

  • acquiring coordinate data in the three-dimensional model, wherein the coordinate data comprises vertex coordinates and texture coordinates;

    increasing the number of vertex coordinates to enable the vertex coordinates in the three-dimensional model to correspond to the texture coordinates one by one;

    the method comprises the following steps;

    utilizing the preset proportion of the scattering elements to scatter and recombine the topology of the three-dimensional model into a plurality of two-dimensional topologies;

    the scattering elements comprise angles, area ratios and distance ratios;

    in the process of scattering according to the angle, polygons which are mutually connected in the three-dimensional space still keep a mutual connection relationship after scattering;

    corresponding shared vertex coordinates are increased in the two-dimensional topology according to the number of texture coordinates until the number of the increased vertex coordinates in the two-dimensional topology is the same as the number of the texture coordinates in the two-dimensional topology;

    respectively converting the data types of the vertex coordinates and the texture coordinates to obtain compressed three-dimensional model data;

    the method comprises the following steps;

    respectively calculating a conversion coefficient corresponding to the vertex coordinate and a conversion coefficient corresponding to the texture coordinate;

    calculating a conversion coefficient corresponding to the vertex coordinate according to a ratio of a constant to a difference value between a coordinate maximum value and a coordinate minimum value in a preset range, wherein the constant is the maximum value of an effective value range of the data type after the vertex coordinate is converted;

    the conversion coefficient corresponding to the texture coordinate is the maximum value of the effective value range of the data type after the texture coordinate conversion;

    converting the data type of the vertex coordinate according to the conversion coefficient corresponding to the vertex coordinate;

    converting the data type of the texture coordinate according to the conversion coefficient corresponding to the texture coordinate;

    storing the vertex coordinates subjected to the data type conversion and the texture coordinates subjected to the data type conversion in an array form to obtain compressed three-dimensional model data;

    the storage positions of vertex coordinates in corresponding arrays or the storage positions of texture coordinates in corresponding arrays are used for describing polygons in the three-dimensional model, the compressed three-dimensional model data comprise vertex indexes, the storage positions of the vertex coordinates and the storage positions of the texture coordinates in one-to-one correspondence are recorded in the vertex indexes, and the vertexes of the polygons correspond to the storage positions of the vertex coordinates or the storage positions of the texture coordinates;

    sending the compressed three-dimensional model data to a terminal for rendering, wherein the rendering comprises the following steps;

    when a three-dimensional graph is rendered, acquiring a storage position of a vertex coordinate according to the vertex index, and calling the vertex coordinate according to the storage position of the vertex coordinate; and

    acquiring storage positions of texture coordinates in one-to-one correspondence according to the vertex indexes, calling the texture coordinates according to the storage positions of the texture coordinates, and sending the vertex coordinates and the texture coordinates to a terminal so that the terminal analyzes the received vertex coordinates and the received texture coordinates, and transmits the analyzed vertex coordinates and the analyzed texture coordinates into a video memory from a buffer area for rendering to obtain a corresponding three-dimensional image.

View all claims
    ×
    ×

    Thank you for your feedback

    ×
    ×