Skeletal Animation/Composite Entities

Q3 models with much higher polygon count should (probably will) not be done as fixed keyframes. Instead a skeletal animation/inverse kinematics should be used, as already implemented within the Q2 engine (Valve, "Half Life"). Generalizes into mechanism for attachment, inventory, visual weapons.

Advantage:

Disadvantage:

Implementation:

The is a bulk of literature and sample implementations on this. The statements below just sketch certain aspects and alternatives.

The implementation of skeletal animation is closely related to the various entity types as used in Q2. The current "reference by index" to another entity/edict used in temp_entity_t/svc_temp_entity should generalized. Further redundancy bc event_entity_t could also be resolved (from the DLL sources: all muzzle flashes really should be converted to events...). There should be a single mechanism to implement skeletal animation, attachments, gibbing, spawning with offsets, item picking and dropping. In fact, the inventory should be based on the same concept of "objects being attached to objects", some of them "inside parent" instead of attached to a joint.

Related Proposals

This proposal was revised to include the New Model Format and Model Skeleton ones. Contributors were, among others, Dirus, Peter Hanley, Earthlink Mail, Nathan Lord, and Jan Javorsek.

Submitted 980407, revised 980420, revised 980421 comments to bk@gamers.org.