Extraction of Displacements Between Mesh and Basemesh

Extraction of Displacements Between Mesh and Basemesh

Extraction of Displacements between Mesh and Basemesh Martin Stuchl´ık∗ Supervised by: Martin Madaras Faculty of Mathematics Physics and Informatics Comenius University Bratislava / Slovakia Abstract algorithms which produce their own specific basemeshes such as the skeleton driven method by Bærentzen et al. [1]. This paper is devoted to the extraction of the displace- Our approach consists of several steps. The initial in- ment between two predefined polygonal meshes. Using a puts are two arbitrary meshes (the high-poly mesh and a combination of GPU tessellation and vector displacement low-poly basemesh) with matching convex parameteriza- mapping, our approach enables the original high-poly de- tion boundaries. In the first step, parameterizations have tailmesh to be rendered approximately by the displaced to be computed and optimized according to these bound- low-poly basemesh at various LOD in real-time. Dur- aries. When both meshes are properly parameterized, the ing the preprocessing phase, the cross-parameterization displacements can be extracted and saved into the texture, between the meshes is obtained and locally optimized called a displacement map. After the displacement map is to maximize the amount of preserved geometry detail. obtained, it can be further used to displace the tessellated Therefore, our method can store and reconstruct even more basemesh in real-time. A special care is given to the local complex non-convex surface protuberances. parameterization optimizations, which affects the amount of preserved geometry detail. Keywords: displacement mapping, parameterization, remeshing 1 Introduction In computer graphics, a vertex displacement mapping de- notes a set of techniques to change 3D positions of vertices while using information stored in a raster texture called a displacement map. These methods enable us to easily en- hance detail of polygonal meshes and even to reconstruct Figure 1: A simplified displacement extraction and con- a highly detailed mesh from a remarkably downsampled sequent real-time reconstruction pipeline. Parameteriza- basemesh, when both meshes have appropriate parameter- tions are computed and displacement map is extracted izations. Although, originally not meant to be real-time during the preprocessing phase. Once the displacement [4], vertex displacement mapping proved to be well suited map is obtained, it can be used to displace the tessellated for modern GPUs, which have enough processing power basemesh in real-time. to combine real-time tessellation with high resolution tex- tures. Generally, when approximating a high-poly mesh by a low-poly basemesh, the basemesh is either obtained 2 Related work by iterative edge-collapsing of the initial high-poly mesh This section is devoted to the state of the art in vector dis- [12][15] or it is strictly predefined [11]. Such ap- placement mapping, related parameterization techniques proaches lead to good results, however the geometry of and similar texture-based remeshing methods. the basemesh is limited as it has to be strongly related to the original geometry or the method itself. Therefore, our motivation for this work was to propose and implement 2.1 Tessellation and displacement mapping a solution which enables to extract a displacement map Tessellation is a process of subdividing larger primitives, between two input meshes independently of their origin, named patches, into many smaller ones [13]. In modern as shown in Figure 1. The main advantage over existing OpenGL versions (4 and higher) the tessellation of trian- methods is that our method can be later combined with gle patches can be computed directly on the GPU. Chang- ∗[email protected] ing the OpenGL tessellation level results in various LOD Proceedings of CESCG 2017: The 21th Central European Seminar on Computer Graphics (non-peer-reviewed) of the mesh surface. We generally distinguish between parameterization, each inner vertex must be a convex com- two main types of tessellation. Uniform tessellation subdi- bination of its neighbours. This is acquirable by iteratively vides each patch into a number of primitives according to moving the inner vertices coordinates into a barycentre of a predefined subdivision level, while adaptive tessellation their neighbours or can be calculated by solving the fol- adjusts the subdivision level depending on a local amount lowing linear system [2]: of detail or geometry visibility [9]. After the primitives u u are subdivided, the generated geometry can be easily dis- −a i = a j ; (1) i;i v ∑ i; j v placed using data from a displacement map. i j6=i j There are two main approaches to how a geometry detail can be stored in a texture. In most cases a simple height where, map containing only one channel is used to displace ver- 8 ai;i = −∑ ai; j; tices along the surface normals [4], however this method > j6=i <>a = e ; if vertices v and v fails to reconstruct non-convex protuberances as shown in i; j i; j i j (2) Figure 2. Some authors solve this problem with two dis- > are connected by an edge, > placement steps [15], however a more complex geometry :ai; j = 0; otherwise; (for example the dinosaur in Figure 4) would need more steps. and ei; j = 1. The method itself does not preserve any shape met- rics, but it can be easily extended by weighting vertices as Floater [5] did. It is proven that if the weights are positive and the matrix is symmetric, the resulting parameteriza- tion is bijective [14]. The next important group of parameterization tech- niques is based on analysing gradients of local linear Figure 2: A comparison of displacements between a de- mapping functions which transform vertices of a trian- tailed mesh (blue) and a basemesh (red) using a height gle between 3D space and 2D texture space. Espe- map (left) and a vector displacement map (right). As can cially for remeshing, stretch-minimizing parameteriztions be seen, the problematic protuberance between the dotted showed to be the most suitable choice [6][18], as min- lines cannot be reconstructed using a simple height map. imizing stretch metric, introduced by Sander et al.[12] reduces under-sampling, while preventing texture distor- tions. Based on this metrics, Sander et al. proposed their Unlike the height maps, vector displacement maps stretch minimizing parameterization, which remarkably (sometimes referred as ”non-linear displacement maps” reduces texture under-sampling. Another notable method [16]) store the whole 3D displacement vector in red, green is the stretch minimizing parameterization by Yoshizawa and blue texture channels. Vector displacement maps are et al.[17], which solves some unwanted texture artefacts often saved as high dynamic range floating point data caused by the method of Sander et al., while being very rather then common RGB format [7][10]. Such approach fast. consumes more space but enable displacements between more complex surfaces. 2.3 Vector displacement mapping and geometry images 2.2 Local parameterization Vector displacement mapping is used mainly in 3D mod- A suitable parameterization, assigning texture coordinates elling applications specialized in sculpting methods. The to vertices, plays the key role in displacement mapping, good examples of such software is the Autodesk Mudbox as it directly determines the amount of stored detail. Pro- [7] and the Pixologic ZBrush [10], which are both widely viding exact one-to-one mapping between meshes and a used professional tools, producing excellent results. How- displacement map, only bijective parameterizations are ro- ever, their goal is a bit different from ours as they are de- bust enough, as parameterization fold-overs would cause signed primarily to build vector displacement maps from loss of detail on overlapping faces. Naturally, bijective user interactions and not to extract them from a pair of texture mapping can be obtained only if a mesh has a distinct polygonal surfaces. planar topology, so a parameterization of more complex Closely related to vector displacement mapping are ge- meshes has to be cut into planar regions. ometry images introduced by Gu et al.[6] which enable One of the most basic local parameterization methods to store whole geometry in a raster. The major advantage is Tutte’s barycentric mapping [2]. Based on advanced of this representation is a simplification of some remesh- graph theory, this technique works on triangular polygo- ing methods. A good example is mesh morphing, which nal meshes homeomorphic to a disk, where boundary uv can be obtained as a simple interpolation between tex- coordinates form a convex polygon. To obtain a bijective tures. This was used by Yu et al.[18] who combined ge- Proceedings of CESCG 2017: The 21th Central European Seminar on Computer Graphics (non-peer-reviewed) Figure 3: A comparison of local parameterization optimization methods: (A) Tutte’s barycentric mapping [2], (B) our linear barycentric correction, (C) our non-linear barycentric correction, (D) stretch-minimizing parameterization by Yoshizawa et al. [17]. Each mannequin head model has been reconstructed from two triangles only, using 128x128 vector displacement map at OpenGL tessellation level 64. Normals are computed directly from displacement maps. Note that our non-linear method is better in reconstruction of some smaller geometry details at cost of texture distortions. ometry images with consistent parameterization, which re- has to be locally refined to prevent fold-overs and further sulted in impressive morphing between considerably dis- optimized to minimize under-sampling problems. tinct meshes. Praun et al.[11] used geometry images to re- construct genus-0 meshes from tetrahedral, octahedral and cubic basemeshes. 3.1 Linear barycentric correction However, the idea of geometry image is slightly differ- Our first experiments with Tutte’s barycentric mapping ent from the vector displacement mapping as the texture [2] have shown that if mesh shapes a relatively regular stores surface positions directly rather than the difference grid (inner vertices have the same valence), even the sim- between the surfaces. ple barycentric mapping can provide a sufficient recon- struction of non-convex protuberances.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    7 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us