matf-rg-engine 1.0.0
Base for project for the Computer Graphics course at Faculty of Mathematics, University of Belgrade
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
engine::resources::AssimpSceneProcessor Class Reference

Processes the meshes in an Assimp scene. More...

Collaboration diagram for engine::resources::AssimpSceneProcessor:
Collaboration graph
[legend]

Public Member Functions

std::vector< Meshprocess_meshes ()
 Processes the meshes in the scene.
 
 AssimpSceneProcessor (ResourcesController *resources_controller, const aiScene *scene, std::filesystem::path model_path)
 

Private Member Functions

void process_node (const aiNode *node)
 
void process_mesh (aiMesh *mesh)
 
std::vector< Texture * > process_materials (const aiMaterial *material)
 
void process_material_type (std::vector< Texture * > &textures, const aiMaterial *material, aiTextureType type)
 

Static Private Member Functions

static TextureType assimp_texture_type_to_engine (aiTextureType type)
 

Private Attributes

std::vector< Meshm_meshes
 
const aiScene * m_scene
 
std::filesystem::path m_model_path
 
ResourcesControllerm_resources_controller
 

Detailed Description

Processes the meshes in an Assimp scene.

Constructor & Destructor Documentation

◆ AssimpSceneProcessor()

engine::resources::AssimpSceneProcessor::AssimpSceneProcessor ( ResourcesController resources_controller,
const aiScene *  scene,
std::filesystem::path  model_path 
)
inlineexplicit

Member Function Documentation

◆ process_meshes()

std::vector< Mesh > engine::resources::AssimpSceneProcessor::process_meshes ( )

Processes the meshes in the scene.

Returns
The meshes in the scene.

◆ process_node()

void engine::resources::AssimpSceneProcessor::process_node ( const aiNode *  node)
private

◆ process_mesh()

void engine::resources::AssimpSceneProcessor::process_mesh ( aiMesh *  mesh)
private

◆ process_materials()

std::vector< Texture * > engine::resources::AssimpSceneProcessor::process_materials ( const aiMaterial *  material)
private

◆ process_material_type()

void engine::resources::AssimpSceneProcessor::process_material_type ( std::vector< Texture * > &  textures,
const aiMaterial *  material,
aiTextureType  type 
)
private

◆ assimp_texture_type_to_engine()

TextureType engine::resources::AssimpSceneProcessor::assimp_texture_type_to_engine ( aiTextureType  type)
staticprivate

Member Data Documentation

◆ m_meshes

std::vector<Mesh> engine::resources::AssimpSceneProcessor::m_meshes
private

◆ m_scene

const aiScene* engine::resources::AssimpSceneProcessor::m_scene
private

◆ m_model_path

std::filesystem::path engine::resources::AssimpSceneProcessor::m_model_path
private

◆ m_resources_controller

ResourcesController* engine::resources::AssimpSceneProcessor::m_resources_controller
private

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