Go to the documentation of this file.
17 #ifndef GZ_COMMON_PBR_HH_
18 #define GZ_COMMON_PBR_HH_
21 #include <gz/common/graphics/Export.hh>
55 class IGNITION_COMMON_GRAPHICS_VISIBLE
Pbr
62 public:
Pbr(
const Pbr &_pbr);
66 public:
Pbr(
Pbr &&_pbr) noexcept;
74 public:
Pbr &operator=(
const Pbr &_pbr);
79 public:
Pbr &operator=(
Pbr &&_pbr);
84 public:
bool operator==(
const Pbr &_pbr)
const;
90 public:
bool operator!=(
const Pbr &_pbr)
const;
100 public:
void SetAlbedoMap(
const std::string &_map);
127 public:
void SetEnvironmentMap(
const std::string &_map);
137 public:
void SetAmbientOcclusionMap(
const std::string &_map);
147 public:
void SetRoughnessMap(
const std::string &_map);
157 public:
void SetMetalnessMap(
const std::string &_map);
167 public:
void SetEmissiveMap(
const std::string &_map);
178 public:
void SetLightMap(
const std::string &_map,
unsigned int _uvSet = 0u);
182 public:
unsigned int LightMapTexCoordSet()
const;
186 public:
double Metalness()
const;
190 public:
void SetMetalness(
double _value);
194 public:
double Roughness()
const;
198 public:
void SetRoughness(
double _value);
208 public:
void SetGlossinessMap(
const std::string &_map);
212 public:
double Glossiness()
const;
216 public:
void SetGlossiness(
double _value);
226 public:
void SetSpecularMap(
const std::string &_map);
234 public:
void SetType(
PbrType _type);
237 private: PbrPrivate *dataPtr =
nullptr;
PbrType
Type of PBR workflow.
Definition: gz/common/Pbr.hh:31
Forward declarations for the common classes.
@ METAL
Metal/Roughness workflow.
@ SPECULAR
Specular/Glossiness workflow.
NormalMapSpace
Space the normal map is defined in.
Definition: gz/common/Pbr.hh:44
This class contains Physically-Based-Rendering (PBR) workflow properties.
Definition: gz/common/Pbr.hh:55