26 lines
751 B
C++
26 lines
751 B
C++
#pragma once
|
|
#define TINYGLTF_IMPLEMENTATION
|
|
#define STB_IMAGE_IMPLEMENTATION
|
|
#define STB_IMAGE_WRITE_IMPLEMENTATION
|
|
#define TINYGLTF_NO_EXTERNAL_IMAGE
|
|
|
|
#include "Graphics/Mesh.h"
|
|
#include <assimp/Importer.hpp>
|
|
#include <assimp/scene.h>
|
|
#include <assimp/postprocess.h>
|
|
#include <string>
|
|
|
|
class ModelImporter {
|
|
private:
|
|
void ImportFBX(std::string path);
|
|
void ImportBlend(std::string path);
|
|
void ImportGLTF(std::string path);
|
|
void ImportOBJ(std::string path);
|
|
static BarinkEngine::Mesh ModelImporter::processMesh(aiMesh* mesh, const aiScene* scene);
|
|
static std::vector<BarinkEngine::Mesh> ModelImporter::processNode(aiNode* node, const aiScene* scene);
|
|
|
|
public:
|
|
void Import(std::string path);
|
|
|
|
static std::vector<BarinkEngine::Mesh> Test();
|
|
}; |