Table of Contents
Fetching ...

DeepFracture: A Generative Approach for Predicting Brittle Fractures with Neural Discrete Representation Learning

Yuhang Huang, Takashi Kanai

TL;DR

This paper introduces a novel learning‐based approach for predicting fractured shapes based on collision dynamics at runtime, and proposes an eight‐dimensional latent code to address the challenge of optimising multiple discrete fracture pattern targets that share similar continuous collision latent codes.

Abstract

In the field of brittle fracture animation, generating realistic destruction animations using physics-based simulation methods is computationally expensive. While techniques based on Voronoi diagrams or pre-fractured patterns are effective for real-time applications, they fail to incorporate collision conditions when determining fractured shapes during runtime. This paper introduces a novel learning-based approach for predicting fractured shapes based on collision dynamics at runtime. Our approach seamlessly integrates realistic brittle fracture animations with rigid body simulations, utilising boundary element method (BEM) brittle fracture simulations to generate training data. To integrate collision scenarios and fractured shapes into a deep learning framework, we introduce generative geometric segmentation, distinct from both instance and semantic segmentation, to represent 3D fragment shapes. We propose an eight-dimensional latent code to address the challenge of optimising multiple discrete fracture pattern targets that share similar continuous collision latent codes. This code will follow a discrete normal distribution corresponding to a specific fracture pattern within our latent impulse representation design. This adaptation enables the prediction of fractured shapes using neural discrete representation learning. Our experimental results show that our approach generates considerably more detailed brittle fractures than existing techniques, while the computational time is typically reduced compared to traditional simulation methods at comparable resolutions.

DeepFracture: A Generative Approach for Predicting Brittle Fractures with Neural Discrete Representation Learning

TL;DR

This paper introduces a novel learning‐based approach for predicting fractured shapes based on collision dynamics at runtime, and proposes an eight‐dimensional latent code to address the challenge of optimising multiple discrete fracture pattern targets that share similar continuous collision latent codes.

Abstract

In the field of brittle fracture animation, generating realistic destruction animations using physics-based simulation methods is computationally expensive. While techniques based on Voronoi diagrams or pre-fractured patterns are effective for real-time applications, they fail to incorporate collision conditions when determining fractured shapes during runtime. This paper introduces a novel learning-based approach for predicting fractured shapes based on collision dynamics at runtime. Our approach seamlessly integrates realistic brittle fracture animations with rigid body simulations, utilising boundary element method (BEM) brittle fracture simulations to generate training data. To integrate collision scenarios and fractured shapes into a deep learning framework, we introduce generative geometric segmentation, distinct from both instance and semantic segmentation, to represent 3D fragment shapes. We propose an eight-dimensional latent code to address the challenge of optimising multiple discrete fracture pattern targets that share similar continuous collision latent codes. This code will follow a discrete normal distribution corresponding to a specific fracture pattern within our latent impulse representation design. This adaptation enables the prediction of fractured shapes using neural discrete representation learning. Our experimental results show that our approach generates considerably more detailed brittle fractures than existing techniques, while the computational time is typically reduced compared to traditional simulation methods at comparable resolutions.
Paper Structure (29 sections, 8 equations, 10 figures, 2 tables)

This paper contains 29 sections, 8 equations, 10 figures, 2 tables.

Figures (10)

  • Figure 1: Overview of our framework: The data generation pipeline is composed of (a) Rigid-Body Dynamics, (b) Impulses during Collision, (c) Solving Fracture Critical Stress for judging whether break or not, (e) BEM Fracture Simulation with Impulse-based Rigid Body Engine hahn2016fast, (f) Continue Rigid-Body Dynamics; Our work is focus on using (d) Fracture Pattern Prediction to replace (e) process.
  • Figure 2: Our learning process consists of two modules: First, we design a scene to describe the collision and establish requirements to demonstrate our method's connection with brittle fracture physics. Consequently, we generate data by sampling the collisions between the ball and the target shape $\mathcal{S}^{\mathrm{origin}}$. Then, we collect the segmentation $\mathcal{S}^{\mathrm{part}}$ transformed into the GS-SDF $\mathcal{S}^{\mathrm{gssdf}}$.We pass the generated data through the Brittle Fracture Simulation Module and Deep Learning Module. The Deep Learning Module trains a code-to-voxel autodecoder ${G}$ with an embedding space $\mathbbm{c}$.
  • Figure 3: Design of latent impulse representation $\textbf{\em Z}_e$ and GS-SDF $\mathcal{S}^{\mathrm{gssdf}}$. (A) A 2D Slice of GS-SDF, (B) 2D slice in depth 40th.
  • Figure 4: Illustration of the relationship and differences between the segment code $\textbf{\em Z}^{\mathrm{segment}}$ and the random code $\textbf{\em Z}^{\mathrm{random}}$, as defined in Section \ref{['sec:latent-impulse-representation']}. The segment code $\textbf{\em Z}^{\mathrm{segment}}$ is trained during the training phase, while the random code $\textbf{\em Z}^{\mathrm{random}}$ is used during the inference phase: During the training phase, $\textbf{\em Z}^{\mathrm{segment}}$ is treated as $\textbf{\em Z}^{\mathrm{segment}}_i$, which is initialized with a normal distribution tailored to $\mathcal{S}^{\mathrm{part}}_i$. However, at run-time, the segment code $\textbf{\em Z}^{\mathrm{segment}}$ is treated as a random noise $\textbf{\em Z}^{\mathrm{random}}_i$. By searching the closest latent vector in embedding space with different $\textbf{\em Z}^{\mathrm{random}}_{j1}$ or $\textbf{\em Z}^{\mathrm{random}}_{j2}$, we can obtain completely different but reasonable shapes of $\mathcal{S}^{\mathrm{part}}_{j1}$ or $\mathcal{S}^{\mathrm{part}}_{j2}$ under the same condition of $\textbf{\em Z}^{\mathrm{impulse}}$.
  • Figure 5: Flowchart of the run-time process: Once a collision occurs and the impulse exceeds the threshold, we input $J^{\mathrm{norm}}$ to the generative model $\mathcal{G}$. After preprocessing the prediction of voxel data $\mathcal{S}^{\mathrm{gssdf}}$ and applying caged-SDF segmentation, we assign weights and velocities to the fragmented shapes $\mathcal{S}^{\mathrm{part}}$. By replacing the old rigid body $\mathcal{S}^{\mathrm{origin}}$ with new rigid bodies $\mathcal{S}^{\mathrm{part}}$, we continue the rigid body simulation. (A) Original mesh; (B) GS-SDF $\mathcal{S}^{\mathrm{gssdf}}$; (C) Results of caged-SDF segmentation $\mathcal{S}^{\mathrm{part}}$.
  • ...and 5 more figures