AnimEngine
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
GltfScenePopulator Class Reference
Collaboration diagram for GltfScenePopulator:
Collaboration graph
[legend]

Public Member Functions

 GltfScenePopulator (Scene *scene, const tinygltf::Model &model, const std::string &source_name=std::string())
 
void populate ()
 
void addExtension (ExtrasExtension *aExtension)
 
const std::map< int, Entity * > & getGltfnodesToEntites () const
 
const std::map< int, MeshEntity * > & getGltfmeshToMeshes () const
 
const std::map< int, Skeleton * > & getGltfskinsToSkeletons () const
 
const std::map< int, Bone * > & getGltfnodeToBones () const
 
const std::map< int, GltfMetallicRoughness * > & getGltfmaterialsToMaterials () const
 
const std::map< int, SimpleTexture2D > & getGltftexturesToTextures () const
 
const std::unordered_map< std::string, GltfAnimation > & getGltfanimToAnimations () const
 
const std::unordered_map< std::string, GltfAnimation > & getSkeletonIsolatedAnimations () const
 
EmptyEntitysceneRoot ()
 

Static Public Member Functions

static bool node_has_pose (const tinygltf::Node &node)
 
static Pose get_node_pose (const tinygltf::Node &node)
 

Protected Member Functions

Entitytraverse_node (int node_index, Entity *parent=nullptr)
 
BaseCameraEntityprocess_camera_entity (const AugNode &node)
 
SkinnedMeshEntityprocess_skinned_mesh_entity (const AugNode &node)
 
SolidMeshEntityprocess_mesh_entity (const AugNode &node)
 
Skeletonconstruct_skeleton_from_skin (int skin_index)
 
void process_animation (const tinygltf::Animation &animation)
 
void populate_scene_animators ()
 
void process_pose_animation_channel (const tinygltf::AnimationChannel &channel, const tinygltf::AnimationSampler &sampler, GltfPoseKeyframeSequence &output_sequence)
 
GltfPoseKeyframeSequence process_animation_channel (const tinygltf::AnimationChannel &channel, const tinygltf::AnimationSampler &sampler)
 
GltfMetallicRoughnessprocess_metallic_roughness_material (int material_index)
 
SimpleTexture2D process_texture (int texture_index)
 
void isolate_bone_animations (const GltfAnimation &animation, const std::vector< Bone *> &touched_bones)
 
Skeletonfind_bone_skeleton (Bone *bone)
 
void printInfo (const std::string &info)
 
void printWarning (const std::string &info)
 

Protected Attributes

std::vector< ExtrasExtension * > mExtensions
 
Scene_scene = nullptr
 
EmptyEntityscene_root = nullptr
 
const tinygltf::Model & _asset
 
const std::string _source_identifier
 
std::map< int, Entity * > gltfnodes_to_entites
 
std::map< int, MeshEntity * > gltfmesh_to_meshes
 
std::map< int, Skeleton * > gltfskins_to_skeletons
 
std::map< int, Bone * > gltfnode_to_bones
 
std::map< int, GltfMetallicRoughness * > gltfmaterials_to_materials
 
std::map< int, SimpleTexture2Dgltftextures_to_textures
 
std::unordered_map< std::string, GltfAnimationgltfanim_to_animations
 
std::unordered_map< std::string, GltfAnimationskeleton_isolated_animations
 
std::map< int, BaseCameraEntity * > gltfcam_to_camera_entity
 

Friends

class ExtrasExtension
 

The documentation for this class was generated from the following files: