|
|
||||||||||||
Overview Video Screen Shots Design Plan History Team Development
Plan
|
Vertigo PC Plan Motion Capture Data Loader Language: C++ Libraries: ANSI Std. File I/O Algorithms: None Priority: High Requisite Components: Platform Dependent: No Data Structures: CMotionData Description: This component reads information from ".HTR" (Hierarchical Rotation and Translation) motion-capture data files and stores the data in a class structure making it accessible for rapid, random-access playback by the MotionCapturePlayback component. The ".HTR" file format is what we receive from the motion capture studio (e.g. Motion Analysis). This component will initially support only the most common instances of the".HTR" format (e.g. assume "ZYX" Euler-angle ordering, assume units in degrees and millimeters, etc.), but will be later extended to handle all possible variables, including the ".GTR" file format (if needed).
Motion Capture Interpolation Language: C++ Libraries: None Algorithms: t.b.d. Priority: Medium/Low (see below) Requisite Components: MotionCapturePlayback Platform Dependent: No Data Structures: CMotionInterpolate Description: This component will control motion playback using the MotionCapturePlayback component, interpolating between sets of motion-capture data to provide more realistically integrated motion in the game. The initial version of this component will simply provide a smooth transition between the current motion (physical-model simulation) of an object in the game (e.g. the skater) and a motion-capture animation (such as an "ollie" or "crash and wipeout"). More sophisticated implementations will permit combining sequences or overlays of animations, and provide variations on playback to further improve realism. We also have some ideas about using motion-capture to merely "tune" a more sophisticated physical model. With this approach, even complex animations would accurately reflect collisions with other objects in the world (e.g. a flailing arm would bounce off a lamp-post during a fall). Note that this "tuning" process would be done "offline" (i.e. during game development), and the results (e.g. point-masses, spring-constants, etc.) would be "loaded" into the physical model used at run-time. If we choose this implementation strategy, we might then use "motion-capture playback" (in its strict sense) only for simple animations in the game (or perhaps not at all).
Motion Capture Playback Language: C++ Libraries: Direct3D (see below) Algorithms: None Priority: High Requisite Components: MotionCaptureDataLoader Platform Dependent: Yes (initially, until our platform-independent "wrapper" API for Direct3D/PlayStation has been implemented) Data Structures: CMotionPlayback Description: This component will "playback" or "re-animate" motion-capture data. This data is available from the CMotionData class structure provided by the MotionCaptureDataLoader component. The initial version of this component will simply playback captured data "as is", displayed within the context of the game-world. This might be used, for example, to animate a relatively simple skater movement such as the "foot push" or perhaps an "ollie" or "crash and wipeout". The playback component will then need to be extended to provide a more sophisticated interface to the MotionCaptureInterpolation component, which will "direct" this playback component more accurately to provide more realistic, integrated motion in the game.
|
|
|||||||||||