|
3D Static SolutionCompared to the 2D
Image Fit the three dimensional approach is much more complicated.
Its main idea is to model the behaviour of cloth and drape it in a virtual
environment over a human body, acquired using a 3D whole body
scanner. The user
should be able to rotate the virtual human, to put the body into a number of
preassigned poses, again in a virtual setting such as a party.
Input Data
|
| 3D scan of the customer's body
| A point cloud from a 3D scanner |
| Connectivity information from skinning software |
|
|
|
| Garment details:
| Cutting patterns from manufacturers CAD/ CAM
Systems in ANSI/AAMA
292 DXF format
| Seaming information
| Material information (weight, shear,bend,..) |
| |
|
|
Requirements to the Cloth Model
| Fast: Internet oriented
| Automatic: no human intervention
| Capable of dynamic cloth simulation |
| |
| Geometrical: fast, no physical properties, require human intervention
| Physical
| Energy minimisation: realistic, slow, mainly static modelling
| Newtonian dynamics with elastic models: fast, dynamic modelling, too
elastic |
|
| Hybrid: medium speed, static approach |
| |
| Physically based model: mass points connected with springs (stretching,
shearing, bending)
| Advantages
| Capability of dynamic modelling
| Good speed
| Variety of control parameters |
| |
| Disadvantage
| Too elastic - improvements? |
|
| |
Algorithm
| Compute the forces applied on each point: internal (springs), external
(gravity, damping)
| Resolve forces: acceleration, velocity, position
| Detect collisions
| Resolve responses to collisions: new velocities and positions |
| | |
Overcoming super-elasticity
| Original idea: to modify positions of the ends of over-elongated springs
| Main drawback: applicable for local deformations only
| Our approach: to modify velocities, so that over-elongation is not allowed |
| |
In our system we implemented an image-space based collision detection
approach. Using this technique it is possible to find a collision only by
comparing the depth value of the garment point with the according depth
information of the body stored in depth maps. We went even further and decided
to use the graphics hardware to generate the information needed for collision
response, that is the normal of each body point. For this we render the
static model from the front and back painted with the rgb values of the
corresponding normals.
Bounding box for orthogonal
rendering of the collision maps |
Reading the frame and the z buffer from the graphics hardware
gives us collision detection and response information
Z-buffer
for cloth-body collision detection |
Normal
buffer for clot-body collision response |
|
Results |
|