Download presentation
Presentation is loading. Please wait.
Published byAdrian Brooks Modified over 6 years ago
1
Procedural Animation Lecture 10: Volume simulation
Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa
2
Procedural Animations
Two major categories in procedural animation are: Physics-based simulations deal with things that are not alive Alife (artificial life) deals with things are virtually alive
3
Physics-based simulations
Deal with the things that are not alive. Use well-known natural physical laws. Particle systems Rigid body dynamics Soft body dynamics Pyro with volume model Fluid Fur/hair
4
Recall: Types of 3D models and their use
computer animation, games 3D printing, engineering, manufacturing, computer aided design (CAD) scientific visualization, medical visualization, effect animation (e.g. clouds) Surface models Solid models Volume models
5
Volume model The interior of a volume model is heterogeneous.
Can have fuzzy surface.
6
Types of 3D models A surface model can represent an egg’s broken shell or complete shell. A solid model can represent an egg’s complete shell and the space enclosed by the sell. A volume model can represent an egg’s various parts -- shell, york, white, etc.
7
Voxels – Volume model Voxels represent positions in 3D space
scalar values (e.g. density and temperature) vector values (e.g., flow direction) in 3D space.
8
Voxels Used to construct a 3D model from CT scan images.
9
Voxels
10
Voxels http://www.cgsociety.org/news/article/1029/the-voxels-in-pixels
11
Voxels
12
Container Houdini calls the space represented by a set of voxels a container. The container should be big enough to contain a simulation but be minimal. Unnecessarily big containers hold a lot of unused voxels.
13
Marching cubes algorithm
Extracts a polygon mesh of an iso-surface from voxels (or an implicit function). Iso-surface = the set of all points in space where a given function (or parameter) is equal to a chosen constant threshold. Reconstructions from CT scan of a dry cadaveric bone: (a) segmented volume of interest—voxel mesh, (b) surface mesh generated from marching cubes algorithm (no interpolation), (c) rendered view of surface mesh generated from marching cubes algorithm (including partial volume-based interpolation).
14
Marching cubes algorithm
Extracts a polygon mesh of an iso-surface from voxels (or an implicit function). Lets you render volume models using a rendering application for surface models. Reduces data size. Reconstructions from CT scan of a dry cadaveric bone: (a) segmented volume of interest—voxel mesh, (b) surface mesh generated from marching cubes algorithm (no interpolation), (c) rendered view of surface mesh generated from marching cubes algorithm (including partial volume-based interpolation).
15
Marching cubes algorithm
Checks if the values at a cube’s vertices are above or below a threshold value. Determine which one the 15 cases the cube fits. Create polygons accordingly.
16
Marching cubes There are some ambiguous marching cubes cases.
Additional cases have been added.
17
Marching cubes Additional cases
18
Houdini volume models Houdini supports Houdini’s own volume format and VDB. VDB = Volumetric, Dynamic grid that shares several characteristics with B+ trees. OpenVDB = Open-source C++ library of a data structure and tools for sparse volumetric data.
19
Houdini volume models Convert VDB SOP converts between Houdini’s standard format and VDB. Convert Volume SOP converts a volume model to a polygonal model.
20
Houdini volume models Rendered without conversion to surface models.
Allows deep shadows using deep shadow maps (the opacity of depth image planes).
21
Houdini volume models
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.