510 likes | 526 Views
Painting folds using expansion textures. Jean Combaz Fabrice Neyret. http://www-imagis.imag.fr/Membres/Jean.Combaz/. Motivations. More realistic images More details More complexity Drape and folds Cloth material Elastic surface. + constraints folds. Motivations.
E N D
Painting foldsusing expansion textures Jean Combaz Fabrice Neyret http://www-imagis.imag.fr/Membres/Jean.Combaz/
Motivations More realistic images More details More complexity • Drape and folds • Cloth material • Elastic surface + constraints folds
Motivations • 2 solutions: • Physical simulation • Shape modeling • But: • We just want a plausible shape, not a physical one • Physical parameters, initial conditions ? • Fastidious task in a geometric modeler
Motivations • Goal: • Add details on a surface • High level of control • Close to sculpture
Plan • Motivations • Previous work • Specifying the detailled shapes • Representing the detailled shapes • Expansion textures • From the user’s point of view • From the programmer’s point of view • Results • Conclusion
Details editor user details FFD Direct painting [Sederberg86] [Coquillart90] [Hanrahan90] Previous work: specifying the detailled shapes • Interactive tools Modeler Alias wavefrontMaya Artisan™
Details generator user details Previous work: specifying the detailled shapes • Procedural tools Generic generators Specialized generators [Perlin85] [Fleischer95] [Prusinkiewicz93] ([Ebert94], [Fournier80], [Perlin89]) ([Badler90], [Wong97])
Physical solver user details Previous work: specifying the detailled shapes • Simulation tools Cloth material Biological patterns [Breen94] [Baraff98] [Fowler92] [Turk91] [Terzopoulos88] [Witkin91]
Plan • Motivations • Previous work • Specifying the detailled shapes • Representing the detailled shapes • Expansion textures • From the user’s point of view • From the programmer’s point of view • Results • Conclusion
Previous work: representing the detailled shapes • 3D surface encoding Polygonal meshes Voxels Surfels • Displacement mapping • Bump maps [Guskov99] ([Wang00]) ([Blinn78])
Previous work: representing the detailled shapes • Texels, hypertextures • Transitions [Kajiya89] [Neyret98] [Perlin89] [Cohen98] ([Becker93], [Max86])
Plan • Motivations • Previous work • Specifying the detailled shapes • Representing the detailled shapes • Expansion textures • From the user’s point of view • From the programmer’s point of view • Results • Conclusion
Expansion textures:user’s point of view • Geometry: Triangular mesh
Expansion textures:user’s point of view • Geometry: Triangular mesh • Expansion texture Offline painting Interactive painting Procedural generation
Expansion textures:user’s point of view • Geometry: Triangular mesh • Expansion texture • Location
Expansion textures:user’s point of view • Geometry: Triangular mesh • Expansion texture • Location • Orientation
Expansion textures:user’s point of view • Geometry: Triangular mesh • Expansion texture • Location • Orientation • Magnitude of expansion x 1.5
Expansion textures:user’s point of view • Geometry: Triangular mesh • Expansion texture • Location • Orientation • Magnitude of expansion • Style information • Desired wavelength
Expansion textures:user’s point of view • Geometry: Triangular mesh • Expansion texture • Location • Orientation • Magnitude of expansion • Style information • Desired wavelength • Regularity
Expansion textures:user’s point of view • Geometry: Triangular mesh • Expansion texture • Location • Orientation • Magnitude of expansion • Style information • Desired wavelength • Regularity • Constraints, attachments
Expansion textures:user’s point of view Example: Interactive painting of folds
Expansion textures:user’s point of view Example: Interactive painting of folds
Expansion textures:user’s point of view Example: Interactive painting of folds
Expansion textures:user’s point of view Example: Interactive painting of folds
Expansion textures:user’s point of view Example: Interactive painting of folds
Expansion textures:user’s point of view Example: Interactive painting of folds
Plan • Motivations • Previous work • Specifying the detailled shapes • Representing the detailled shapes • Expansion textures • From the user’s point of view • From the programmer’s point of view • Results • Conclusion
Expansion textures: programmer’s point of view Algorithm • Reference state • Triangular mesh • Rest length l0 • Rest curvature 0
Expansion textures: programmer’s point of view Algorithm • Reference state • Triangular mesh • l0, 0 • Expansion (or contraction)
Expansion textures: programmer’s point of view Algorithm • Reference state • Triangular mesh • l0, 0 • Expansion (or contraction) • Update rest lengths
Expansion textures: programmer’s point of view Algorithm • Reference state • Triangular mesh • l0, 0 • Expansion (or contraction) • Update rest lengths • Mesh optimization • According to the new rest lengths
Expansion textures: programmer’s point of view Algorithm • Reference state • Triangular mesh • l0, 0 • Expansion (or contraction) • Update rest lengths • Mesh optimization • Solver • Displacements to decrease the stress
Expansion textures: programmer’s point of view • Texture Expansion • Physical model • Solver
Expansion textures: programmer’s point of view Texture Expansion An expansion tensor field 2x2 symetric matrix τ 2D vector u new length utτ u Expansion Anisotropic unidirectional expansion Isotropic expansion Anisotropic expansion
Expansion textures: programmer’s point of view Pysical model 3 kinds of forces: Tangential response FT FT = FE - (FE . N) N FE is a elastic force (Green-Lagrange F.E.)
Expansion textures: programmer’s point of view • Displacements dP = .F = .(FT + FN + F)
Expansion textures: programmer’s point of view • Displacements dP = .F = .(FT + FN + F) FT: tangential response FT = FE - (FE . N) N FE is a elastic force N
Expansion textures: programmer’s point of view • Displacements dP = .F = .(FT + FN + F) FT: tangential response FN: normal response FN = (kp f(-0) + kpi) Ca N to create folds N
Expansion textures: programmer’s point of view • Displacements dP = .F = .(FT+FN+F) FT: tangential response FN: normal response F: curvature control F = - k (-0) N to smooth folds N N
Plan • Motivations • Previous work • Specifying the detailled shapes • Representing the detailled shapes • Expansion textures • From the user’s point of view • From the programmer’s point of view • Results • Conclusion
Results: Regular folds Initial shape: square Expansion rate: 1.5 (anisotropic) Constraint: left and right border attached Real plastic cover
Results: Non uniform expansion Initial shape: square Expansion rate: 1.0 1.5 (anisotropic) Constraint: all borders are attached
Results: Coat folded in a ring area Initial shape: square Expansion rate: 1.5 (anisotropic) Constraint: all borders are attached
Results: scrunchy Initial shape: torus Expansion rate: 2.5 (anisotropic) Constraint: a small torus inside the shape
Results: scrunchy Initial shape: torus Expansion rate: 2.5 (anisotropic) Constraint: a small torus inside the shape
Conclusion • Expansion textures: a new paradigm • High level of control • Add thin details • Close to a physical simulation solver • Close to sculpture and painting from the user point of view
Future work • To be improved • Solver (computation time) • Folds shape control • Bump mapping • Morphogenesis (huge expansion) • Self-intersections • Generation of procedural expansion textures