18#ifndef HEADER_SP_MESH_LOADER_HPP
19#define HEADER_SP_MESH_LOADER_HPP
21#include "ge_animation.hpp"
23#include <IMeshLoader.h>
24#include <ISceneManager.h>
25#include <ISkinnedMesh.h>
39 unsigned m_bind_frame, m_joint_count, m_frame_count;
41 std::vector<GE::Armature> m_all_armatures;
43 std::vector<core::matrix4> m_to_bind_pose_matrices;
45 enum SPVertexType:
unsigned int
51 void decompress(irr::io::IReadFile* spm,
unsigned vertices_count,
52 unsigned indices_count,
bool read_normal,
bool read_vcolor,
53 bool read_tangent,
bool uv_one,
bool uv_two,
54 SPVertexType vt,
const video::SMaterial& m);
56 void decompressGESPM(irr::io::IReadFile* spm,
unsigned vertices_count,
57 unsigned indices_count,
bool read_normal,
58 bool read_vcolor,
bool read_tangent,
bool uv_one,
59 bool uv_two, SPVertexType vt,
60 const video::SMaterial& m);
62 void decompressSPM(irr::io::IReadFile* spm,
unsigned vertices_count,
63 unsigned indices_count,
bool read_normal,
64 bool read_vcolor,
bool read_tangent,
bool uv_one,
65 bool uv_two, SPVertexType vt,
68 void createAnimationData(irr::io::IReadFile* spm);
70 void convertIrrlicht();
72 scene::IAnimatedMesh* m_mesh;
74 scene::ISceneManager* m_scene_manager;
76 std::vector<std::vector<
77 std::pair<std::array<short, 4>, std::array<float, 4> > > > m_joints;
81 SPMeshLoader(scene::ISceneManager* smgr) : m_scene_manager(smgr) {}
83 virtual bool isALoadableFileExtension(
const io::path& filename)
const;
85 virtual scene::IAnimatedMesh* createMesh(io::IReadFile* file);
Definition: material.hpp:48
Definition: sp_mesh_loader.hpp:35