MEPP2 Project
Public Attributes | List of all members
FEVV::Types::Material Struct Reference

#include <Material.h>

Collaboration diagram for FEVV::Types::Material:
Collaboration graph

Public Attributes

std::string name {}
 
MaterialType type = MaterialType::MATERIAL_TYPE_STANDARD
 
double ambient_red_component = 1.0
 
double ambient_green_component = 1.0
 
double ambient_blue_component = 1.0
 
double diffuse_red_component = 1.0
 
double diffuse_green_component = 1.0
 
double diffuse_blue_component = 1.0
 
double specular_red_component = 0.0
 
double specular_green_component = 0.0
 
double specular_blue_component = 0.0
 
double emissive_red_component = 0.0
 
double emissive_green_component = 0.0
 
double emissive_blue_component = 0.0
 
double transparency = 1.0
 
double metallic_factor = 1.0
 
double roughness_factor = 1.0
 
std::string ambient_texture_filename {}
 
std::string diffuse_texture_filename {}
 
std::string specular_texture_filename {}
 
std::string emissive_texture_filename {}
 
std::string transparency_texture_filename {}
 
std::string normal_map_filename {}
 
std::string metallic_map_filename {}
 
std::string roughness_map_filename {}
 
bool has_normal_map = false
 
std::map< std::string, std::shared_ptr< Image > > images
 

Detailed Description

The material datastructure used to handle textures.

Definition at line 65 of file Material.h.

Member Data Documentation

◆ ambient_blue_component

double FEVV::Types::Material::ambient_blue_component = 1.0

Definition at line 73 of file Material.h.

◆ ambient_green_component

double FEVV::Types::Material::ambient_green_component = 1.0

Definition at line 72 of file Material.h.

◆ ambient_red_component

double FEVV::Types::Material::ambient_red_component = 1.0

Definition at line 71 of file Material.h.

◆ ambient_texture_filename

std::string FEVV::Types::Material::ambient_texture_filename {}

Definition at line 95 of file Material.h.

◆ diffuse_blue_component

double FEVV::Types::Material::diffuse_blue_component = 1.0

Definition at line 77 of file Material.h.

◆ diffuse_green_component

double FEVV::Types::Material::diffuse_green_component = 1.0

Definition at line 76 of file Material.h.

◆ diffuse_red_component

double FEVV::Types::Material::diffuse_red_component = 1.0

Definition at line 75 of file Material.h.

◆ diffuse_texture_filename

std::string FEVV::Types::Material::diffuse_texture_filename {}

Definition at line 97 of file Material.h.

◆ emissive_blue_component

double FEVV::Types::Material::emissive_blue_component = 0.0

Definition at line 85 of file Material.h.

◆ emissive_green_component

double FEVV::Types::Material::emissive_green_component = 0.0

Definition at line 84 of file Material.h.

◆ emissive_red_component

double FEVV::Types::Material::emissive_red_component = 0.0

Definition at line 83 of file Material.h.

◆ emissive_texture_filename

std::string FEVV::Types::Material::emissive_texture_filename {}

Definition at line 99 of file Material.h.

◆ has_normal_map

bool FEVV::Types::Material::has_normal_map = false

Definition at line 110 of file Material.h.

◆ images

std::map<std::string, std::shared_ptr< Image > > FEVV::Types::Material::images

Definition at line 113 of file Material.h.

◆ metallic_factor

double FEVV::Types::Material::metallic_factor = 1.0

Definition at line 91 of file Material.h.

◆ metallic_map_filename

std::string FEVV::Types::Material::metallic_map_filename {}

Definition at line 106 of file Material.h.

◆ name

std::string FEVV::Types::Material::name {}

Definition at line 67 of file Material.h.

◆ normal_map_filename

std::string FEVV::Types::Material::normal_map_filename {}

Definition at line 101 of file Material.h.

◆ roughness_factor

double FEVV::Types::Material::roughness_factor = 1.0

Definition at line 92 of file Material.h.

◆ roughness_map_filename

std::string FEVV::Types::Material::roughness_map_filename {}

Definition at line 107 of file Material.h.

◆ specular_blue_component

double FEVV::Types::Material::specular_blue_component = 0.0

Definition at line 81 of file Material.h.

◆ specular_green_component

double FEVV::Types::Material::specular_green_component = 0.0

Definition at line 80 of file Material.h.

◆ specular_red_component

double FEVV::Types::Material::specular_red_component = 0.0

Definition at line 79 of file Material.h.

◆ specular_texture_filename

std::string FEVV::Types::Material::specular_texture_filename {}

Definition at line 98 of file Material.h.

◆ transparency

double FEVV::Types::Material::transparency = 1.0

Definition at line 87 of file Material.h.

◆ transparency_texture_filename

std::string FEVV::Types::Material::transparency_texture_filename {}

Definition at line 100 of file Material.h.

◆ type

MaterialType FEVV::Types::Material::type = MaterialType::MATERIAL_TYPE_STANDARD

Definition at line 68 of file Material.h.


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