Special Section on SIGRAD 2015Complex multi-material approach for dynamic simulations
Graphical abstract
Introduction
When representing a heterogeneous object or scene in 3D graphics simulations, multiple materials can be assigned to it to achieve better results or visual quality. Material properties can describe its visual appearance or define its structure, which is necessary, e.g., for applications working with haptic feedback. The way the material properties can be assigned depends greatly on the data structure used for the representation of the object.
A heterogeneous scene is commonly represented as a set of non-intersecting triangle meshes, one for each material present in the scene. This representation is efficient for static scenes with several separated materials; however, it may not be sufficient to describe a dynamic scene containing several materials blending into each other, e.g., during an erosion simulation. During such a dynamic simulation, the surface mesh evolves and a more sophisticated way to describe the material properties is necessary. A volumetric approach is another common method of addressing the problem. This approach gives satisfactory results in many situations, but the memory requirements grow very fast with the increasing size of the scene.
As triangle meshes are the most commonly used data structure in 3D graphics, a multiple-material mesh-based approach for dynamic simulations is needed. In this paper, a material description approach suitable for such purposes is proposed. The method is an extension of the approach by Skorkovská and Kolingerová [1]. In [1], the scene is represented with a surface mesh for each individual object in the scene, regardless of the material of the object. The material is then assigned through a separate binary space partitioning (BSP) structure. As the BSP tree is independent of the triangle meshes, it can be constructed once in the preprocessing step and used throughout the simulation. The method also allows an optional definition of a distance function as a simulation of a continuous change of the material.
The main contributions of this paper are
- •
An extension of the BSP method [1] to allow general implicit surfaces as splitting functions in the BSP tree;
- •
An automated method for the construction of the BSP tree from an input volumetric data to eliminate the need for the manual definition of the BSP tree.
The structure of the paper is as follows. Section 2 summarizes the related work. In Section 3, several simple multiple-material definition approaches are proposed. Section 4 describes a more complex approach using BSP. In Section 5, an automated method for the generation of a BSP tree is proposed. Results are presented in Section 6 and Section 7 concludes the paper.
Section snippets
Related work
Most of the research on multiple-material scenes focuses on extracting a correct and consistent mesh for each of the materials present in the volumetric data obtained, e.g., from a medical scan. Wu and Sullivan [2] enhanced the marching cubes algorithm to reconstruct multiple material meshes. Zhang et al. [3] generate the mesh using an octree-based isocontouring method. Wang [4] generates the mesh surfaces using a ray representation of a solid as an intermediate structure. These approaches are
Definition of multiple materials
A real-life scene is composed of objects made of different materials which are eroded in different ways; hard and resistant materials are eroded slowly, while the erosion of soft materials is happening much faster. To be able to simulate such phenomena, we need a means to consistently describe the material of an object. A common way of representation is to have a separate mesh for each material present in the scene. This approach is suitable for the simulation of static scenes, where the
Binary space partitioning
The methods of multiple-material definition described in the previous section can be used to describe the material distribution of a simple scene containing only two distinct materials. To simulate more complex distribution of materials, a more sophisticated approach is needed. We are using a binary space partitioning (BSP) [12] approach that can be seen as an extension of the method described in Section 3.2, allowing the splitting up of the scene into more parts using multiple division planes.
Automated generation of a BSP tree
The binary space subdivision as described in Section 4 can be used as a memory-efficient means of material distribution description in a scene. However, for big and complex scenes, the manual definition of splitting functions would be complicated and time-consuming.
We have proposed an automated method for the generation of the BSP tree. Typical material distribution information comes in the form of volumetric data. To construct the BSP tree, a triangle mesh needs to be extracted from the
Splitting planes
We have tested the proposed approach in various scenarios to test its applicability to the problem of material spatial distribution. Fig. 10 shows an example of the basic BSP material definition. Fig. 10(a) shows an initial un-eroded model; the same initial model was used in all the erosion simulations presented in Fig. 10. The scene has been divided into 16 vertical spatial cells; each one has been assigned a unique random material. The darker color of the mesh marks the regions made of a
Conclusion
Erosion simulation is a very important topic of computer graphics. More and more often, triangle meshes are used to represent the eroded terrain. A means to simulate the erosion of scenes composed of various materials is needed, but the commonly used approach of integrating the material properties with the vertices of the mesh may not be appropriate. Volumetric approaches are capable of storing the necessary information at the cost of high memory requirements.
A multiple material definition
Acknowledgements
This work has been supported by the European Regional Development Fund (ERDF) – project NTIS (New Technologies for the Information Society), The European Centre of Excellence, CZ.1.05/1.1.00/0.2.0090, by the project SGS-2013-029 – Advanced Computing and Information Systems and by the project SGS-2016-013 – Advanced Graphical and Computing Systems.
References (16)
- et al.
An automatic 3d mesh generation method for domains with multiple materials
Comput Methods Appl Mech Eng
(2010) Computing on raysa parallel approach for surface mesh modeling from multi-material volumetric data
Comput Ind
(2011)- Skorkovská V, Kolingerová I. Multiple material meshes for erosion simulation. In: Proceedings of SIGRAD 2015; 2015. p....
- et al.
Multiple material marching cubes algorithm
Int J Numer Methods Eng
(2003) - et al.
Hydraulic erosion
Comput Animat Virtual Worlds
(2006) - et al.
Layered data representation for visual simulation of terrain erosion
- et al.
Delaunay deformable mesh for the weathering and erosion of 3d terrain
Vis Comput
(2010) - et al.
Function representation in geometric modelingconcepts, implementation and applications
Vis Comput
(1995)