simulate them
play

Simulate them! Real-world footage Sponsored by SA2015.SIGGRAPH.ORG - PowerPoint PPT Presentation

WetBrush: GPU-based 3D Painting Simulation at the Bristle Level 2 1 1,2 2 Zhili Chen, Byungmoon Kim, Daichi Ito, Huamin Wang 1 The Ohio State University 2 Adobe Research Sponsored by Oil Painting Complex physical interactions


  1. WetBrush: GPU-based 3D Painting Simulation at the Bristle Level 2 1 1,2 2 Zhili Chen, Byungmoon Kim, Daichi Ito, Huamin Wang 1 The Ohio State University 2 Adobe Research Sponsored by

  2. Oil Painting Complex physical interactions Bristle-Bristle Bristle-Fluid Fluid-Fluid Simulate them! Real-world footage Sponsored by SA2015.SIGGRAPH.ORG

  3. Previous works Paint Fluid Model Height field 3D volumetric density grid Baxter, et al. 2004 Chu, et al. 2010 Sponsored by SA2015.SIGGRAPH.ORG

  4. Previous works Brush Model 2D stamping 2D Surface wrapped around skeleton 3D Brush projected onto 2D stamp Individual Bristles Chu et al., 2002 DiVerdi et al., 2010 Baxter et al., 2004 Sponsored by SA2015.SIGGRAPH.ORG

  5. Previous works Brush-Paint Fluid Interaction Brush-Fluid one way interaction Deform when collide with canvas Imprint generated using as boundary condition Simple color transfer/pickup function with texture map In 2D imprint space Wrapped surface space Chu, et al. 2010 Sponsored by SA2015.SIGGRAPH.ORG

  6. What is missing? β€œNot feel like real while painting” Artists who are familiar with traditional media want Correct brush deformation under force Brush that carries paint liquid for intuitive paint deposition Natural color mixing Fine details, not overly-smooth color Stroke variations and happy accident Sponsored by SA2015.SIGGRAPH.ORG

  7. Motivation Oil Painting observed from molecule level Brush carry paint Adhesion between bristle molecule and fluid molecule Cohesion among fluid molecule Color mixing Fluid molecules carrying different pigments gather and show mixed color Sponsored by SA2015.SIGGRAPH.ORG

  8. System Overview One-way Bristle-Particle Interaction Brush head movement Particle Fluid User Input Conversion Brush Sim One-way Fluid-Bristle Interaction Renderer Grid Fluid Sponsored by SA2015.SIGGRAPH.ORG

  9. Brush One-way Bristle-Particle Interaction Brush head movement Particle Fluid User Input Conversion Brush Sim One-way Fluid-Bristle Interaction Renderer Grid Fluid Sponsored by SA2015.SIGGRAPH.ORG

  10. Brush Model Model individual bristles Bristle vertices (also samples) Bristle samples Bristle Vertices For brush dynamics ~10 per bristle Bristle Samples For paint interaction B-spline curve Denser sample near tip ~50 per bristle 50-200 bristles Sponsored by SA2015.SIGGRAPH.ORG

  11. Brush Dynamics Position-based Dynamics πͺ " πͺ "'$ π‘š & πͺ " πͺ "#$ πͺ "#$ πœ„ In-extensiblity Bending Collide with canvas/dry paint surface Sponsored by SA2015.SIGGRAPH.ORG

  12. Brush Dynamics Bristle-Bristle Contact Essential for correct brush shape under deformation Precise line-line collision processing? Too expensive for real-time Particle based collision SPH style repulsion Avoid over-compression Laplacian velocity filtering for inter-bristle friction Sponsored by SA2015.SIGGRAPH.ORG

  13. Brush β€’ Correct brush shape even under extreme deformation β€’ Stroke variations achieved from contacts between individual bristles Sponsored by SA2015.SIGGRAPH.ORG

  14. Brush β€’ Allow creative use of brush just like one could with real brush Sponsored by SA2015.SIGGRAPH.ORG

  15. Fluid Simulation One-way Bristle-Particle Interaction Brush head movement Particle Fluid User Input Conversion Brush Sim One-way Fluid-Bristle Interaction Renderer Grid Fluid Sponsored by SA2015.SIGGRAPH.ORG

  16. Hybrid Fluid Representation Adaptive Hybrid Fluid Representation based on Distance to brush Velocity Brush Fluid particles Sponsored by SA2015.SIGGRAPH.ORG

  17. Hybrid Fluid Representation Adaptive Hybrid Fluid Representation based on Distance to brush Velocity Particles Brush Β§ Close to the brush Fluid particles Β§ OR Fast Moving Β§ Cover smaller region Sponsored by SA2015.SIGGRAPH.ORG

  18. Hybrid Fluid Representation Adaptive Hybrid Fluid Representation based on Distance to brush Velocity Particles Brush Β§ Close to the brush Fluid particles Β§ OR Fast Moving Β§ Cover smaller region Density Grid Β§ Further away from the brush Β§ AND Slow moving Β§ Cover larger region Sponsored by SA2015.SIGGRAPH.ORG

  19. Hybrid Fluid Grid & Particles Only Particles Visualized Visualized Sponsored by SA2015.SIGGRAPH.ORG

  20. Grid Fluid Grid (Density, velocity, pigment, dryness, oil ratio) Moving sim window (256X256X32) within full canvas grid (4096X4096X32) Semi-Lagrangian Advection Fast Fixed-Point Jacobi Method for solving pressure projection Only 2-6 Jacobi iterations needed for acceptable error level Suitable for real-time applications Grid used only for slow moving region See paper for details Sponsored by SA2015.SIGGRAPH.ORG

  21. Particle Fluid Particles (velocity, pigment, oil ratio) Interact with bristle sample points Borrow Grid fluid velocity field for incompressiblity in FLIP/PIC way Allow small amount of volume loss vs. SPH / Position-Based Fluid Less noisy (good for viscous fluid appearance) Faster (+ pressure projection already needed in grid) Sponsored by SA2015.SIGGRAPH.ORG

  22. Particle-Bristle Interaction One-way Bristle-Particle Interaction Brush head movement Particle Fluid User Input Conversion Brush Sim One-way Fluid-Bristle Interaction Renderer Grid Fluid Sponsored by SA2015.SIGGRAPH.ORG

  23. Particle-Bristle Interaction Brush pushes fluid Bristle sample points as boundary condition Particles get SPH repulse from bristles Brush carries fluid Brush Sim Directly compute adhesion force? Adhesion is strong Unstable stiff system with large timestep Small timestep/substepping => non-real-time Particle Fluid Sponsored by SA2015.SIGGRAPH.ORG

  24. Bristle-Particle Adhesion Explicit adhesion force π’ˆ * = βˆ’π‘™π‘”(𝒆 1 ) Particles fail to follow fast moving brush Sponsored by SA2015.SIGGRAPH.ORG

  25. Bristle-Particle Adhesion Brush and fluid particles carried Has little relative movement Adhesive force counteract inertial acceleration Better modelled in brush non-inertial frame Particle i Brush Frame 𝐢 Canvas Frame 𝐽 Sponsored by SA2015.SIGGRAPH.ORG

  26. Μ‡ Stable Position-Based Adhesion π‘ͺ π’˜ " Angular velocity of brush frame π‘ͺ 𝒒 " 𝝏 π‘ͺ π’š " Brush Frame 𝐢 𝒅 π‘ͺ π’˜ π‘ͺ Canvas Frame 𝐽 Linear velocity of Direct adhesion brush frame force in brush frame Acceleration in brush frame ; = 𝑆 ; 𝑏 >?@ βˆ’ (𝑀 ; ; + πœ• ; Γ— πœ• ; Γ—π‘ž " ; + πœ•Μ‡ ; Γ—π‘ž " H ; ) βˆ’ ; 𝑏 " + 2πœ• ; ×𝑀 " I J 𝒆 1 External forces in canvas Coriolis frame – gravity, friction, etc. Centrifigual Frame angular Frame linear acceleration acceleration acceleration acceleration 𝑆 ; : transformation from canvas frame to brush frame ; = 𝑆 ; (𝑦 " βˆ’ 𝑑 ; ) π‘ž " Sponsored by SA2015.SIGGRAPH.ORG

  27. Μ‡ Stable Position-Based Adhesion π‘ͺ π’˜ " Angular velocity of brush frame π‘ͺ 𝒒 " 𝝏 π‘ͺ π’š " Brush Frame 𝐢 𝒅 π‘ͺ π’˜ π‘ͺ Canvas Frame 𝐽 Linear velocity of Direct adhesion brush frame force in brush frame ; = 𝑆 ; 𝑏 >?@ βˆ’ (𝑀 ; ; + πœ• ; Γ— πœ• ; Γ—π‘ž " ; + πœ•Μ‡ ; Γ—π‘ž " H ; ) βˆ’ ; 𝑏 " + 2πœ• ; ×𝑀 " I J 𝒆 1 Inertial acceleration Sponsored by SA2015.SIGGRAPH.ORG

  28. Μ‡ Stable Position-Based Adhesion π‘ͺ π’˜ " Angular velocity of brush frame π‘ͺ 𝒒 " 𝝏 π‘ͺ π’š " Brush Frame 𝐢 𝒅 π‘ͺ π’˜ π‘ͺ Canvas Frame 𝐽 Linear velocity of Direct adhesion brush frame force in brush frame ; = 𝑆 ; 𝑏 >?@ βˆ’ (𝑀 ; ; + πœ• ; Γ— πœ• ; Γ—π‘ž " ; + πœ•Μ‡ ; Γ—π‘ž " H ; ) βˆ’ ; 𝑏 " + 2πœ• ; ×𝑀 " I J 𝒆 1 Inertial acceleration Sponsored by SA2015.SIGGRAPH.ORG

  29. Μ‡ Stable Position-Based Adhesion π‘ͺ π’˜ " Angular velocity of brush frame π‘ͺ 𝒒 " 𝝏 π‘ͺ π’š " Brush Frame 𝐢 𝒅 π‘ͺ π’˜ π‘ͺ Canvas Frame 𝐽 Linear velocity of brush frame Inertial acceleration ; = 𝑆 ; 𝑏 >?@ βˆ’ 𝛾(𝑀 ; ; + πœ• ; Γ— πœ• ; Γ—π‘ž " ; + πœ•Μ‡ ; Γ—π‘ž " ; ) 𝑏 " + 2πœ• ; ×𝑀 " ; ) 𝛾 = 𝛾(𝒆 1 𝛾: A function of distance to brush Sponsored by SA2015.SIGGRAPH.ORG

  30. Stable Position-Based Adhesion Keep local non-inertial frame for every bristle sample point Particles assign to frame dynamically Brush 𝐸 $ 𝐸 $ Bristle vertices (also samples) Bristle samples Fluid particles Fluid particles under influence Sponsored by SA2015.SIGGRAPH.ORG

  31. Stable Position-Based Adhesion Brush carries paint by stable adhesion Natural mass preserving deposition of paint on canvas Sponsored by SA2015.SIGGRAPH.ORG

  32. Dry Brush Load Very dry brush still can produce strokes Particles carried with adhesion will run out Keep minimum paint load on bristle samples Emit paint fluid particles to produce stroke Absorb paint fluid particles to modify color Sponsored by SA2015.SIGGRAPH.ORG

  33. Fluid Representation Why hybrid like this? One-way Bristle-Particle Interaction Brush head movement Particle Fluid User Input Conversion Brush Sim One-way Fluid-Bristle Interaction Renderer Grid Fluid Sponsored by SA2015.SIGGRAPH.ORG

  34. Fluid Representation Why hybrid like this? Volumetric grid vs. Height field Want to model overhanging paint Full interaction with 3D brush Overhang (Photographed) Sponsored by SA2015.SIGGRAPH.ORG

Recommend


More recommend