#pragma once #include #include "geometry.h" class Joint { private: Matrix _transform; //model space Matrix _localBindTransform; Matrix _inverseBindtransform; public: int index; std::vector children; Joint(int index,Matrix transform); ~Joint(); void addChild(Joint child); Matrix getTransform(); void setTransform(Matrix transform); Matrix getInverseBindTransform(); void calculateInverseBindTransform(Matrix parentBindTransform); };