Graphics Reference
In-Depth Information
Object penetration without a vertex
of one object contained in the other
Vertex inside a polyhedron
FIGURE 7.19
Detecting polyhedra intersections.
intersection can be established. When a vertex has penetrated a face, a normal to the face is used. When
there is an edge-edge intersection, the normal is defined as the cross-product of the two edges.
In certain limited cases, a more precise determination of collision can be performed. For example, if
the movement of one object with respect to another is a linear path, then the volume swept by one object
can be determined and intersected with the other object whose position is assumed to be static relative
to the moving object. If the direction of travel is indicated by a vector, V , then front faces and back faces
with respect to the direction of travel can be determined. The boundary edges that share a front face and
a back face can be identified; boundary vertices are the vertices of boundary edges. The volume swept
by the object is defined by the original back faces, the translated positions of the front faces, and new
faces and edges that are extruded in the direction of travel from boundary edges and boundary vertices
( Figure 7.20 ) . This volume is intersected with the static object.
Impulse force of collision
To allow for more accurate handling of the moment of collision, time can be “backed up” to the point of
impact, the reaction can be computed, and the time can be moved forward again. While more accurate
in its reconstruction of events, this approach can become very computationally intense in complex
front face
boundary edge
Direction of travel
back faces
boundary vertex
A
Original object
B
Swept volume
FIGURE 7.20
Sweep volume by translating front-facing faces and extruding new edges from original boundary vertices and
extruding new faces from original boundary edges.
 
Search WWH ::




Custom Search