cgv
Loading...
Searching...
No Matches
cgv::media::illum::obj_material Struct Reference

Extension of a phong material with support for texture-mapped color channels. More...

#include <obj_material.h>

Inheritance diagram for cgv::media::illum::obj_material:
cgv::media::illum::phong_material

Public Types

enum  TextureType {
  TT_AMBIENT_TEXTURE = 1 , TT_DIFFUSE_TEXTURE = 2 , TT_OPACITY_TEXTURE = 4 , TT_SPECULAR_TEXTURE = 8 ,
  TT_EMISSION_TEXTURE = 16 , TT_BUMP_TEXTURE = 32 , TT_ALL_TEXTURES = 63
}
 different types of textures More...
 
- Public Types inherited from cgv::media::illum::phong_material
using color_type = cgv::rgba
 

Public Attributes

std::string name = "default"
 name of material
 
float opacity = 1.0f
 opacity value
 
std::string ambient_texture_name
 file name of ambient texture
 
std::string diffuse_texture_name
 file name of diffuse texture
 
std::string opacity_texture_name
 file name of opacity texture
 
std::string specular_texture_name
 file name of specular texture
 
std::string emission_texture_name
 file name of emission texture
 
float bump_scale = 1.0f
 scaling factor for bump map
 
std::string bump_texture_name
 file name of bump map texture
 
- Public Attributes inherited from cgv::media::illum::phong_material
color_type ambient = { 0.1f, 0.1f, 0.1f, 1.0f }
 ambient color component
 
color_type diffuse = { 0.5f, 0.5f, 0.5f, 1.0f }
 diffuse color component
 
color_type specular = { 0.5f, 0.5f, 0.5f, 1.0f }
 specular color component
 
color_type emission = { 0.0f, 0.0f, 0.0f, 1.0f }
 emissive color component
 
float shininess = 50.0f
 exponent of the specular cosine term
 

Additional Inherited Members

- Static Public Member Functions inherited from cgv::media::illum::phong_material
static const phong_materialget_default ()
 provide a const reference to a standard phong material
 

Detailed Description

Extension of a phong material with support for texture-mapped color channels.

Definition at line 11 of file obj_material.h.

Member Enumeration Documentation

◆ TextureType

different types of textures

Definition at line 14 of file obj_material.h.

Member Data Documentation

◆ ambient_texture_name

std::string cgv::media::illum::obj_material::ambient_texture_name

◆ bump_scale

float cgv::media::illum::obj_material::bump_scale = 1.0f

◆ bump_texture_name

std::string cgv::media::illum::obj_material::bump_texture_name

◆ diffuse_texture_name

std::string cgv::media::illum::obj_material::diffuse_texture_name

◆ emission_texture_name

std::string cgv::media::illum::obj_material::emission_texture_name

◆ name

std::string cgv::media::illum::obj_material::name = "default"

◆ opacity

float cgv::media::illum::obj_material::opacity = 1.0f

◆ opacity_texture_name

std::string cgv::media::illum::obj_material::opacity_texture_name

◆ specular_texture_name

std::string cgv::media::illum::obj_material::specular_texture_name

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