.. _program_listing_file_Src_GraphicsEngineOpenGL_scene_ObjMaterial.ixx: Program Listing for File ObjMaterial.ixx ======================================== |exhale_lsh| :ref:`Return to documentation for file ` (``Src/GraphicsEngineOpenGL/scene/ObjMaterial.ixx``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp module; #include #include #include #include export module kataglyphis.opengl.obj_material; export class ObjMaterial { public: ObjMaterial() : shininess(0.f), ior(1.0f), dissolve(1.f), illum(0), textureID(-1) { this->ambient = glm::vec3(0.1F, 0.1F, 0.1F); this->diffuse = glm::vec3(0.7F, 0.7F, 0.7F); this->specular = glm::vec3(1.0F, 1.0F, 1.0F); this->transmittance = glm::vec3(0.0F, 0.0F, 0.0F); this->emission = glm::vec3(0.0F, 0.0F, 0.10F); } ObjMaterial(glm::vec3 p_ambient, glm::vec3 p_diffuse, glm::vec3 p_specular, glm::vec3 p_transmittance, glm::vec3 p_emission, float p_shininess, float p_ior, float p_dissolve, int p_illum, int p_textureID) : ambient(p_ambient), diffuse(p_diffuse), specular(p_specular), transmittance(p_transmittance), emission(p_emission), shininess(p_shininess), ior(p_ior), dissolve(p_dissolve), illum(p_illum), textureID(p_textureID) {} glm::vec3 get_ambient() const { return ambient; }; glm::vec3 get_diffuse() const { return diffuse; }; glm::vec3 get_specular() const { return specular; }; glm::vec3 get_transmittance() const { return transmittance; }; glm::vec3 get_emission() const { return emission; }; float get_shininess() const { return shininess; }; float get_ior() const { return ior; }; float get_dissolve() const { return dissolve; }; int get_illum() const { return illum; }; int get_textureID() const { return textureID; }; glm::vec3 ambient = glm::vec3(0.1f, 0.1f, 0.1f); glm::vec3 diffuse = glm::vec3(0.7f, 0.7f, 0.7f); glm::vec3 specular = glm::vec3(1.0f, 1.0f, 1.0f); glm::vec3 transmittance = glm::vec3(0.0f, 0.0f, 0.0f); glm::vec3 emission = glm::vec3(0.0f, 0.0f, 0.10); float shininess = 0.f; float ior = 1.0f;// index of refraction float dissolve = 1.f;// 1 == opaque; 0 == fully transparent int illum = 0; int textureID = -1; ~ObjMaterial(); private: };