4: 2011-09-16 (金) 13:04:37 iseki |
現: 2011-11-21 (月) 23:54:03 iseki |
| - SecondLife/OpenSim の内部用の最適化(バイナリ化)された [[BVH]] データ | | - SecondLife/OpenSim の内部用の最適化(バイナリ化)された [[BVH]] データ |
| - see llkeyframemotion.cpp LLKeyframeMotion::deserialize(LLDataPacker& dp) | | - see llkeyframemotion.cpp LLKeyframeMotion::deserialize(LLDataPacker& dp) |
| + | #br |
| + | |
| + | - http://wiki.secondlife.com/wiki/Internal_Animation_Format |
| #br | | #br |
| | | |
| 03 00 00 00 "hand_pose", Hand Pose (U32, unsigned int) [mJointMotionList->mHandPose] | | 03 00 00 00 "hand_pose", Hand Pose (U32, unsigned int) [mJointMotionList->mHandPose] |
| 12 00 00 00 "num_joints", Joint Count (U32) [Jointデータの数] | | 12 00 00 00 "num_joints", Joint Count (U32) [Jointデータの数] |
| + | |
| // Joint Data | | // Joint Data |
| 6d 50 65 6c 76 69 73 00 "joint_name", Joint Name (mPelvis) (string) [joint_motion->mJointName] | | 6d 50 65 6c 76 69 73 00 "joint_name", Joint Name (mPelvis) (string) [joint_motion->mJointName] |
| 04 00 00 00 "joint_priority", Priority Revisited (S32) [joint_motion->mPriority] | | 04 00 00 00 "joint_priority", Priority Revisited (S32) [joint_motion->mPriority] |
| + | |
| 24 00 00 00 "num_rot_keys", Number of Rotation Keyframes (int) [Rotationデータの数] | | 24 00 00 00 "num_rot_keys", Number of Rotation Keyframes (int) [Rotationデータの数] |
| [joint_motion->mRotationCurve.mNumKeys] | | [joint_motion->mRotationCurve.mNumKeys] |
| + | |
| // Rotation Keyframe data blocks | | // Rotation Keyframe data blocks |
| 73 04 "time", Time Code (U16->F32に変換, old_versionでは元々F32) In Point~Out Point にスケーリングし直し | | 73 04 "time", Time Code (U16->F32に変換, old_versionでは元々F32) In Point~Out Point にスケーリングし直し |
| be 6a "rot_angle_y", Y (U16) | | be 6a "rot_angle_y", Y (U16) |
| 1f 52 "rot_angle_z", Z (U16) | | 1f 52 "rot_angle_z", Z (U16) |
| + | |
| e7 08 "time", Time Code (U16->F32に変換, old_versionでは元々F32) | | e7 08 "time", Time Code (U16->F32に変換, old_versionでは元々F32) |
| 38 6f "rot_angle_x", X (U16) | | 38 6f "rot_angle_x", X (U16) |
| 5d 77 "rot_angle_z", Z (U16) | | 5d 77 "rot_angle_z", Z (U16) |
| ......................... | | ......................... |
- | | + | |
| + | |
| 56 00 00 00 "num_pos_keys", Number of Position Keyframes (S32) [Positionデータの数] | | 56 00 00 00 "num_pos_keys", Number of Position Keyframes (S32) [Positionデータの数] |
| [joint_motion->mPositionCurve.mNumKeys] | | [joint_motion->mPositionCurve.mNumKeys] |
| + | |
| // Position Keyframe data blocks | | // Position Keyframe data blocks |
| 73 04 "time", Time Code (U16->F32に変換, old_versionでは元々F32) In Point~Out Point にスケーリングし直し | | 73 04 "time", Time Code (U16->F32に変換, old_versionでは元々F32) In Point~Out Point にスケーリングし直し |
| ff 7f "pos_y", Y (U16) | | ff 7f "pos_y", Y (U16) |
| ca 7d "pos_z", Z (U16) | | ca 7d "pos_z", Z (U16) |
| + | |
| e7 08 "time", Time Code (U16->F32に変換, old_versionでは元々F32) | | e7 08 "time", Time Code (U16->F32に変換, old_versionでは元々F32) |
| ff 7f "pos_x", X (U16) | | ff 7f "pos_x", X (U16) |
| bb 7d "pos_z", Z (U16) | | bb 7d "pos_z", Z (U16) |
| ......................... | | ......................... |
- | | + | |
| + | |
| "num_constraints" (S32) | | "num_constraints" (S32) |
| "chain_length" (U8) [constraintp->mChainLength] | | "chain_length" (U8) [constraintp->mChainLength] |
| "ease_out_start" (F32) [constraintp->mEaseOutStartTime] | | "ease_out_start" (F32) [constraintp->mEaseOutStartTime] |
| "ease_out_stop" (F32) [constraintp->mEaseOutStopTime] | | "ease_out_stop" (F32) [constraintp->mEaseOutStopTime] |
- | | + | |
| + | |
| // Next Joint Data | | // Next Joint Data |
| ......................... | | ......................... |