1 / 31

Levelsets in Production : Spider-Man 3

Implicit surface representation using signed distance function in a regularly sampled grid. Includes levelset-based modeling, animation, and collision detection tools for various applications. Fast, robust, and efficient.

ncheung
Download Presentation

Levelsets in Production : Spider-Man 3

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Levelsets in Production : Spider-Man 3

  2. What are levelsets? • Implicit surface representation • SDF (signed distance function) in a regularly sampled grid.

  3. Sandstorm • Rich toolset • Includes levelset-based modeling and animation tools. • Geometry to Field • Field to Geometry • Field Attribute transfer / lookup • Snap to levelset • etc

  4. Benefits of Levelsets • Distance to the surface • Inside or Outside • Boolean operations • Surface modification (noise)‏ • etc

  5. Examples : Combining two fields

  6. Examples : boolean union - max(A,B)‏ intersection - min(A,B)‏

  7. Examples : boolean cut - max(A,-B)‏ adding noise to the result

  8. Examples : Procedural noise variations

  9. Case 1 :: Geometry Blending • Create two identical fields • Convert geometry into levelsets • detect the places where the two objects intersect in the field with a certain threshold

  10. Case 1 :: Geometry Blending • Calculate the resultant levelset with:

  11. Case 2 :: Erosion • Work in a still frame • Distribute particles uniformly in the geometry • Particles will store the erosion amount • Convert the geometry into a levelset • Modify the levelset (amount attibute + spatial noise)‏ • Apply the erosion to the moving geometry

  12. Erosion - Examples

  13. Case 2 :: Erosion • Primitives will be triggered when containing particles with a positive erosion value • Non-triggered primitives will generate the sand particles in render time.

  14. Erosion - Examples

  15. Case 3 :: Particle trajectory correction • Geometry Normal is stored in the levelset • Normal component is passed to the particle • Particle velocity vector is updated every frame using the levelset normal component to avoid penetrations.

  16. Case 3 :: Particle trajectory correction

  17. Examples : Forming Shape

  18. Case 4 :: Levelset Collision Uses levelset for collision detection • Fast • Positive field(Φ>0) ⇔ Inside geometry • Robust • Closed & Non-intersecting • w/o multi sampling

  19. Case 5 :: Polygonization • Compute Normal and Curvature for Instancer tool

  20. Thank you!

More Related