40 NORMALMAP_TEXTURE = 1,
41 HEIGHTMAP_TEXTURE = 2,
42 ROUGHNESS_TEXTURE = 3,
#define AGX_DECLARE_POINTER_TYPES(type)
#define AGXSTREAM_DECLARE_SERIALIZABLE(T)
Use this in a Serializable class to add the required methods Important: Use full namespace in the dec...
#define AGXPHYSICS_EXPORT
Class for storing rendering material.
agx::String getName() const
bool hasTextureData(TextureMode mode=DIFFUSE_TEXTURE) const
agx::UInt32 getHash() const
void setTexturePath(const agx::String &path, TextureMode mode=DIFFUSE_TEXTURE)
Set the path to a texture for the specified texturing mode (default DIFFUSE)
agx::Vec4f m_diffuseColor
bool hasRoughness() const
agx::Vec4f m_ambientColor
void setDiffuseColor(const agx::Vec4f &color)
Set the diffuse color.
TextureDataRef getTextureData(TextureMode mode=DIFFUSE_TEXTURE) const
void setMetallic(float metallic)
Set the metallic of the material.
agx::String getTexturePath(TextureMode mode=DIFFUSE_TEXTURE) const
agx::Vector< TextureDataRef > m_textureDatas
RenderMaterial()
Constructor.
float getShininess() const
bool hasAmbientColor() const
float getRoughness() const
bool hasSpecularColor() const
agx::String getMaterialSpecification() const
agx::Vec4f m_specularColor
void setMaterialSpecification(const agx::String &material)
Store a string with a material specification, for example Keyshot material string.
int compare(const RenderMaterial &other) const
Slow string comparison function that uses the toString() method to convert each material to a string.
agx::Vec4f getEmissiveColor() const
agx::Vec4f m_emissiveColor
bool hasTransparency() const
void setAmbientColor(const agx::Vec4f &color)
Set the ambient color.
void setSpecularColor(const agx::Vec4f &color)
Set the specular color.
void setEmissiveColor(const agx::Vec4f &color)
Set the emissive color.
agx::String toString() const
void setRoughness(float roughness)
Set the roughness of the material.
bool hasDiffuseColor() const
RenderMaterial * clone() const
Returns a cloned copy of the RenderMaterial.
float getMetallic() const
void setTransparency(float transparency)
Set the transparency of the material 1 - transparent, 0 - opaque.
agx::Vec4f getDiffuseColor() const
void setTextureData(TextureDataRef data, TextureMode mode=DIFFUSE_TEXTURE)
Set the data of a texture used for the specified texturing mode (default DIFFUSE)
void setName(const agx::String &name)
Set the name of this material.
bool equal(const RenderMaterial &other) const
float getTransparency() const
bool hasTexturePath(TextureMode mode=DIFFUSE_TEXTURE) const
virtual ~RenderMaterial()
bool hasMaterialSpecification() const
agx::Vec4f getSpecularColor() const
bool hasEmissiveColor() const
agx::StringVector m_texturePaths
agx::String m_materialSpecification
agx::Vec4f getAmbientColor() const
This class is an abstract base class for all classes that can be stored and retrieved from an Archive...
Inheritance with partial specialization due to bug with ref_ptr containers.
Base class providing referencing counted objects.
A class holding 4 dimensional vectors and providing basic arithmetic.
Smart pointer for handling referenced counted objects.
This namespace consists of a set of classes for handling geometric intersection tests including boole...
agx::HashTable< agx::UInt32, RenderMaterialRef > RenderMaterialValueHashTable