WaveBlender Dataset

Scene Render Files
2016 Pouring Faucet
(Water)
Full (164MB)
Glass Pour
(Water)
Full (75.4MB)
Paddle Splash
(Water)
Full (63.3MB)
Blue LEGO Drop
(Rigid Bodies)
Full (148MB)
Spolling Bowl
(Rigid Bodies)
Full (135MB)
Cup Phone
(Speaker)
Full (0.72MB)
Talk Fan
(Speaker)
Full (1.91MB)
Trumpet
(Speaker)
Full (0.87MB)
Candy Shake
(Point Force)
Full (2.71MB)
Candy Fill'er Up
(Point Force)
Full (15.1MB)

Data Format

Water

trackedBubInfo.txt stores the bubble tracking information for the simulation. For each bubble, the format is:

    Bub <global, unique bubble ID> <radius>
      Start: <event type> <start time> <optional parent bubble ID(s)>
      <time> <frequency (Hz)> <x> <y> <z> <pressure>
      .
      .
      End: <event type> <end time> <optional child bubble IDs>
    
The start and end event types can be:
    N: new (entrain); start-only
    M: merge; the bubble IDs that this bubble merges to/from are listed.
    S: split; the bubble IDs that this bubble splits to/from are listed.
    C: collapse; end-only
    
meshes/*.obj contain water surface meshes at 10ms intervals.

Rigid Bodies

displace.txt contains rigid-body transformations for each object. Each line is given by:

    <time> <translation x> <translation y> <translation z> <quaternion w> <quaternion x> <quaternion y> <quaternion z>
    
For the following, all files must have the same prefix (e.g., "bowl" or "lego"):

<prefix>.tet contains the tetrahedral mesh used for modal analysis, in binary file format. Here, i_ denotes 32-bit signed integer and d_ denotes 64-bit float.
    i_num_vertices  # N+1 total
    d_v0_x d_v0_y d_v0_z
    d_v1_x d_v1_y d_v1_z
    ...
    d_vN_x d_vN_y d_vN_z
    i_num_tetrahedrons  # M+1 total
    i_t0_i0 i_t0_i1 i_t0_i2 i_t0_i3
    i_t1_i0 i_t1_i1 i_t1_i2 i_t1_i3
    ...
    i_tM_i0 i_tM_i1 i_tM_i2 i_tM_i3
    
<prefix>.tet.obj contains the corresponding surface triangle mesh.
<prefix>.geo.txt contains the mapping between the indices of the volumetric .tet mesh and the surface .obj mesh.
    i_map_size
    i_tet_index i_surf_index d_surf_normal_x d_surf_normal_y d_surf_normal_z d_area
    i_tet_index i_surf_index d_surf_normal_x d_surf_normal_y d_surf_normal_z d_area
    ...
    
<prefix>.modes contains vibrational modes computed for the tetrahedral mesh, in bindary file format. This file describes the modal frequencies (angular frequency squared) and the modal matrix U.
    i_num_dofs  # N+1
    i_num_modes  # M+1
    d_omega_squared_0 d_omega_squared_1 ... d_omega_squared_M
    d_u_0 d_u_1 ... d_u_N
    
<prefix>.impulses.txt contains impulses produced by our rigid-body solver.
    <time< <object_id> <vertex_id> <relative_speed> <impulse x> <impulse y> <impulse z> <S/T> <C/P>
    # C = constraint impulse, P = pair impulse. S/T denotes whether the object is the first (S) or second (T) object in the contact pair.
    

Speaker

*_anim.txt contains rigid-body transformations for each object. Each line is given by:

    <time> <translation x> <translation y> <translation z> <quaternion w> <quaternion x> <quaternion y> <quaternion z>
    
*.wav contains the input audio used to drive the speaker surface.

Point Forces

*ptsrcData.txt contains all the acceleration noise impulses for the simulation:

    <time> <impulse magnitude> <contact timescale> <velocity change x> <velocity change y> <velocity change z> <impulse location x> <impulse location y> <impulse location z> <rigid body ID (not used)>
    
For the Candy Filler'Up example, betas/*.txt contains the "auxiliary" beta-field. Each file contains the cell-centered beta-field for a single frame (at 60 FPS):
    <beta> <cell center x> <cell center y> <cell center z>
    ...