mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
36 lines
964 B
C++
36 lines
964 B
C++
|
#pragma once
|
||
|
#pragma once
|
||
|
|
||
|
#include "shared.hpp"
|
||
|
|
||
|
|
||
|
namespace ace {
|
||
|
namespace p3d {
|
||
|
class bone {
|
||
|
public:
|
||
|
bone() : name(""), parent("") {}
|
||
|
bone(const std::string & name_, const std::string & parent_)
|
||
|
: name(name_), parent(parent_) {
|
||
|
}
|
||
|
std::string name;
|
||
|
std::string parent;
|
||
|
std::vector<std::string> children;
|
||
|
std::vector<uint32_t> animations;
|
||
|
};
|
||
|
typedef std::shared_ptr<bone> bone_p;
|
||
|
|
||
|
class skeleton {
|
||
|
public:
|
||
|
skeleton();
|
||
|
skeleton(std::istream &, const uint32_t lod_count);
|
||
|
~skeleton();
|
||
|
|
||
|
std::string name;
|
||
|
bool inherited;
|
||
|
uint32_t size;
|
||
|
std::map<std::string, bone_p> root_bones;
|
||
|
std::vector<bone_p> all_bones;
|
||
|
};
|
||
|
typedef std::shared_ptr<skeleton> skeleton_p;
|
||
|
};
|
||
|
};
|