Menu
Lumberyard
Legacy Reference

Proxy (Collision) Attachments

Collision detection and response involves the realistic animation of attachments that collide with the body of a living character to simulate real-world physics. To handle this, a special attachment called a collision proxy is used. Collision proxies are normal attachments that are linked to joints and move with the skeleton. Using a collision proxy is more efficient than undertaking all the necessary computation required for collision detection and response with a polygonal mesh.

Two different types of collision proxies are used:

  • Auxiliary proxies (lozenges) – Called lozenges, these are represented in gray by simple geometric objects linked to joints that move with the skeleton, and represent an approximation of a body shape. Gray proxies handle collision detection and response with the character and are normal attachments.

  • Dynamic proxies – These are represented in blue by capsules and spheres and are a property of a socket. Blue proxies handle collision detection and response between gray proxies. Blue proxies are dynamic collision proxies, which means that gray proxies always push blue proxies away.

Collision detection is detecting when an overlap occurs between an auxiliary proxy and a dynamic proxy. For both proxy types, you can tweak the size, shape, and other physical parameters interactively while a character animation is running and see the effect immediately.

Auxiliary Proxies (Lozenges)

An auxiliary proxy lozenge is defined by a radius and scaling values for the X, Y, and Z axes. Using these four numbers, points, line-segments, rectangles, boxes, spheres, 1D lozenges (capsules), 2D lozenges, and 3D lozenges can be created. These eight shapes are used to approximate the shape of arms, legs, and torso of a living character.

The following figure shows a capsule shape defined for the thigh joint on the right leg of a character.

To set up an auxiliary proxy (lozenge)

  1. In Geppetto, choose Display Options to reveal the Secondary Animations section, then select the Auxiliary Proxies check box.

  2. In the Properties panel, choose the number next to Attachments and then choose Add or Insert.

    • For Type, choose Proxy Attachment.

    • For Joint, choose the bone icon; in the Choose Joint window, select the joint to attach the lozenge to and choose OK.

    • For Purpose, choose Auxiliary.

    • For Radius, enter a value in meters.

    • For X-axis, enter a value in meters.

    • For Y-axis, enter a value in meters.

    • For Z-axis, enter a value in meters.

The axes scale in both directions, so entering values of 0,1,1,1 creates a box of 2x2x2 meters.

Dynamic Proxies

Dynamic (blue) proxies handle collision detection and response between gray proxies. Blue proxies are dynamic collision proxies, which means that gray proxies always push blue proxies away. For more information, see Collision Detection and Response.