Comparison of Triangle Mesh and Body element in Efficient sparse voxel octrees

Source: Internet
Author: User

This is an article SIGGRAPH2010, "Efficient sparse voxel octrees", which compares the triangle mesh with the body element in detail. I think it is more valuable. I have translated this part, I hope to help myself and others:

In the past, I often looked at what others translated and felt that many places were not satisfied with the word. I knew it was very difficult only when I started it myself, and many terms did not know how to express it well, I do not know what tools can be used for effective query. The translation is poor, rather than deleting the translation for half a day. Let's take a look at the original text.

Comparison between the ry notation and the triangle mesh Notation:

  1. Memory Usage
    Generally, it is considered that the volume representation occupies a large amount of memory. when the data is real 3D data (such as the data scanned by MRI), this is true, but if it only indicates a surface, memory usage can be reduced to the square of N (N is the resolution of one dimension ). In terms of complexity, this is the same as the triangular mesh. The total surface area of the triangular mesh is also a factor affecting memory usage. If unique texturing is used (that is, a unique texture instead of a reusable texture, I don't know what to translate ...).
  2. Downsampling
    Downsampling refers to the case where several pixels on the screen correspond to the same sample when the sampling distance is relatively close to the object or the object sampling is very rough. This is also a difficult problem in graphics.
    It is better to understand the insufficient sampling of triangular grids, such as when displaying grass, hair, and other things, how to better express these semi-occlusion relationships when sampling is insufficient is a problem that has not yet been solved. It is relatively easy to solve this problem theoretically for the body element. When we consider occlusion and semi-occlusion, the combination of several sub-elements is the same as that of the parent element. However, in actual implementation, the problem of insufficient sampling for processing the body element data is still difficult.
    In general, the processing technology of triangular mesh is much more mature than the processing technology of ontology.
  3. Zooming
    A common concept is that when the camera is adjusted to a position close to the object, the object seems to be relatively "bulky ), of course, this problem also exists in triangular mesh representation.
    In triangular mesh representation, this problem is filtered during texture search, but this is basically impossible for the object, because the data in the body element representation is not organized by a two-dimensional data structure, which is convenient for searching. Post-process filtering mentioned later in this paper is a good choice. In either case, the body and the triangle mesh can achieve the same precision with a texture surface.
  4. Deformation
    The triangle mesh is deformed, And the vertex is transformed so that its surface is deformed along with the vertex. Interpolation of vertex positions to mix multiple transformations is the actual method used for triangle mesh deformation.
    The method for deformation of the Body element data is different from that used when deformation of the triangle mesh. A non-valuable method for deformation of the Body element data is to calculate an independent dataset for each frame of the deformation. This is a brute force method, similar to a series of independent image frames contained in a video sequence. The data size may be quite large, but using similar compression techniques in video compression can reduce the data size to an acceptable size. One major problem is that this method can only handle the known deformation. In general, this is not an attractive solution. For object data, the biggest problem in deformation is that it is not easy to move the object from one location to another. For this reason, someone proposed another data structure suitable for deformation-surface splats, which can easily be organized into a standard BVl tree, in this way, it takes linear time to move the splats from one location to another during deformation. The size of the required BVl tree increases linearly with the increase in the number of splats. That is to say, even if splats occupy more memory than voxels, it is only a constant multiple.
  5. Authoring
    This involves how to create the data to be drawn, which is equivalent to modeling a triangular mesh.
    For a triangular mesh, a mature tool process is available to create a 3D model. There is an automatic tool to generate UV coordinates for the texture. The artist only needs to draw the texture on the model, instead of directly operating the texture. When the geometric details of a model are quite large, another technology is used: tools like ZBrush and Mudbox can be used to perform similar operations on the model, the final model consists of a grid with few triangles, a color map, or a displacement map.
    For object data, carving similar interfaces is the only way to generate detailed models. Of course, it is also a way to convert a triangular mesh model into an adult model. However, the transformation of the triangular mesh model to the adult model will introduce the defects of both methods. Unless the accuracy of the original data is quite high, the method cannot be fully used.
  6. Acquisition
    As with other sampling-based methods, the method is good at processing real-world data obtained by scanners or cameras. After scanning 2D or 3D areas, some discrete data points are obtained. Point Clouds can also be converted to triangular grids with details and colors, and then to base grids and displacement maps. However, if the raw data is a structure that the small branches are not good at, it is difficult to convert a point cloud to a triangle mesh.
    If we directly convert the input data into a prime or splat, the transformation of the triangle mesh can be saved. Even if there are some samples that are insufficient, You can correctly display the input part, as long as you do not adjust the camera to a very close position, it can be quite normal. This is incomparable to the triangle mesh.
  7. Rendering
    The displacement-mapped triangular mesh can be directly rasterized using GPU, which makes its rendering process very similar to the current mesh-based rendering. However, ray casting is quite difficult for such grids. The power of Displacement map is to encode millions of triangles in a small space. It is inconvenient to decode these triangles by ray projection. In practice, the light projection of the displacement map is divided into two layers. The first is to judge the intersection between the light and the displaced geometry boundary, the second is to judge the intersection of the triangle in the displacement map.
    Object data can also be directly raster, but it is not as efficient as ray projection. On the other hand, because of the data structure of the octree, it is quite efficient to perform ray projection on the layer data. When performing ray projection calculation on the Body element data, you can use an appropriate level of detail based on the distance of the light source, which can reduce the computing workload and memory usage, at the same time, it can reduce the appearance of samples due to high-frequency content.
  8. Summary
    In general, the Triangular Mesh has obvious advantages in terms of memory usage. When the sampling is insufficient, the body element method can be better processed. When Zooming is very close, the triangular mesh performs better than the body element. Although the body element can be optimized using some methods, the sharp edge does not always work well when the resolution is not improved. For the body element, for the moment, it is impossible to perform efficient deformation, but the triangle mesh can be done without any problem. For raw data production, the triangle mesh is now more sophisticated than the entity, but who can do what is needed in the real world is the best. For the data sampled from the real world, the processing of theme is much better than the triangular mesh, in particular, insufficient sampling or incomplete sampling data. In the end, the advantages of triangular mesh in rendering mainly benefit from the rapid raster, which is supported by hardware, the advantages of Object Data in rendering are mainly reflected in the ability to perform rapid ray projection.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.