# struct cogs::SkeletonPose

## Overview

Structure used for storage of specific configuration of bone transformations in a skeleton. More…

    #include <SkeletonPose.h>

    struct SkeletonPose {
        // fields

        Transform root_transform;
        std::vector<BoneTransform> bone_transforms;

        // methods

        void InterpolateWith(const SkeletonPose& target_pose, float target_weight, SkeletonPose* out_pose) const;
    };

## Detailed Documentation

Structure used for storage of specific configuration of bone transformations in a skeleton.

### Fields

    Transform root_transform

Transformation matrix used for all bones in the skeleton.

    std::vector<BoneTransform> bone_transforms

Per-bone specific transformations.

### Methods

    void InterpolateWith(const SkeletonPose& target_pose, float target_weight, SkeletonPose* out_pose) const

Interpolates between this pose and target pose.

Target pose must be designed for same skeleton. cogs::Transform::InterpolateWith is used for each corresponding pair of transformations.