12 #include "COLLADAFWNode.h"
13 #include "COLLADAFWSkinController.h"
14 #include "COLLADAFWSkinControllerData.h"
15 #include "COLLADAFWTypes.h"
16 #include "COLLADAFWUniqueId.h"
33 float inv_bind_mat[4][4];
34 COLLADAFW::UniqueId joint_uid;
38 float bind_shape_matrix[4][4];
41 COLLADAFW::UIntValuesArray joints_per_vertex;
42 COLLADAFW::UIntValuesArray weight_indices;
43 COLLADAFW::IntValuesArray joint_indices;
45 std::vector<float> weights;
47 std::vector<JointData> joint_data;
52 COLLADAFW::UniqueId controller_uid;
65 COLLADAFW::IntValuesArray &
dest);
68 COLLADAFW::UIntValuesArray &
dest);
79 void add_joint(
const COLLADABU::Math::Matrix4 &matrix);
105 std::map<COLLADAFW::UniqueId, COLLADAFW::Node *> &joint_by_uid,
115 std::map<COLLADAFW::UniqueId, COLLADAFW::Node *> &joint_by_uid,
116 std::vector<COLLADAFW::Node *> &
result);
Object is a sort of wrapper for general info.
void find_root_joints(const std::vector< COLLADAFW::Node * > &root_joints, std::map< COLLADAFW::UniqueId, COLLADAFW::Node * > &joint_by_uid, std::vector< COLLADAFW::Node * > &result)
const COLLADAFW::UniqueId & get_controller_uid()
void transfer_int_array_data_const(const COLLADAFW::IntValuesArray &src, COLLADAFW::IntValuesArray &dest)
void set_controller(const COLLADAFW::SkinController *co)
void link_armature(bContext *C, Object *ob, std::map< COLLADAFW::UniqueId, COLLADAFW::Node * > &joint_by_uid, TransformReader *tm)
Object * set_armature(Object *ob_arm)
void borrow_skin_controller_data(const COLLADAFW::SkinControllerData *skin)
bool uses_joint_or_descendant(COLLADAFW::Node *node)
Object * BKE_armature_from_object()
bool get_joint_inv_bind_matrix(float inv_bind_mat[4][4], COLLADAFW::Node *node)
void add_joint(const COLLADABU::Math::Matrix4 &matrix)
void transfer_uint_array_data_const(const COLLADAFW::UIntValuesArray &src, COLLADAFW::UIntValuesArray &dest)
void set_parent(Object *_parent)
bool find_node_in_tree(COLLADAFW::Node *node, COLLADAFW::Node *tree_root)
void transfer_array_data(T &src, T &dest)
bPoseChannel * get_pose_channel_from_node(COLLADAFW::Node *node)
Object * create_armature(Main *bmain, Scene *scene, ViewLayer *view_layer)
SyclQueue void void * src