Divide Framework 0.1
A free and open-source 3D Framework under heavy development
Loading...
Searching...
No Matches
Divide::Material::Properties Struct Reference

#include <Material.h>

Classes

struct  Overrides
 

Public Member Functions

 PROPERTY_R (FColour4, baseColour, DefaultColours::WHITE)
 
 PROPERTY_RW (FColour3, specular, DefaultColours::BLACK)
 
 PROPERTY_RW (FColour3, emissive, DefaultColours::BLACK)
 
 PROPERTY_RW (FColour3, ambient, DefaultColours::BLACK)
 
 PROPERTY_RW (SpecularGlossiness, specGloss)
 
 PROPERTY_RW (F32, shininess, 0.f)
 
 PROPERTY_RW (F32, metallic, 0.f)
 
 PROPERTY_RW (F32, roughness, 0.5f)
 
 PROPERTY_RW (F32, occlusion, 1.0f)
 
 PROPERTY_RW (F32, parallaxFactor, 1.0f)
 
 PROPERTY_R (BumpMethod, bumpMethod, BumpMethod::NONE)
 
 PROPERTY_R (bool, receivesShadows, true)
 
 PROPERTY_R (bool, isStatic, false)
 
 PROPERTY_R (bool, isInstanced, false)
 
 PROPERTY_R (bool, hardwareSkinning, false)
 
 PROPERTY_R (bool, texturesInFragmentStageOnly, true)
 
 PROPERTY_R (bool, isRefractive, false)
 
 PROPERTY_R (bool, doubleSided, false)
 
 PROPERTY_R (ShadingMode, shadingMode, ShadingMode::COUNT)
 
 PROPERTY_R (TranslucencySource, translucencySource, TranslucencySource::COUNT)
 
 PROPERTY_R (bool, usePackedOMR, false)
 If the metalness textures has 3 (or 4) channels, those channels are interpreted automatically as R: Occlusion, G: Metalness, B: Roughness.
 
 PROPERTY_RW (Overrides, overrides)
 
 PROPERTY_R_IW (bool, cullUpdated, false)
 
 PROPERTY_R_IW (bool, transparencyUpdated, false)
 
 PROPERTY_R_IW (bool, needsNewShader, true)
 
void hardwareSkinning (bool state) noexcept
 
void texturesInFragmentStageOnly (bool state) noexcept
 
void shadingMode (ShadingMode mode) noexcept
 
void doubleSided (bool state) noexcept
 
void receivesShadows (bool state) noexcept
 
void isRefractive (bool state) noexcept
 
void isStatic (bool state) noexcept
 
void isInstanced (bool state) noexcept
 
void ignoreTexDiffuseAlpha (bool state) noexcept
 
void bumpMethod (BumpMethod newBumpMethod) noexcept
 
void toggleTransparency (bool state) noexcept
 
void useAlphaDiscard (bool state) noexcept
 
void baseColour (const FColour4 &colour) noexcept
 

Protected Member Functions

void saveToXML (const std::string &entryName, boost::property_tree::ptree &pt) const
 
void loadFromXML (const std::string &entryName, const boost::property_tree::ptree &pt)
 

Friends

class Material
 

Detailed Description

Definition at line 162 of file Material.h.

Member Function Documentation

◆ baseColour()

void Divide::Material::Properties::baseColour ( const FColour4 colour)
noexcept

Definition at line 76 of file MaterialProperties.cpp.

◆ bumpMethod()

void Divide::Material::Properties::bumpMethod ( BumpMethod  newBumpMethod)
noexcept

Definition at line 81 of file MaterialProperties.cpp.

◆ doubleSided()

void Divide::Material::Properties::doubleSided ( bool  state)
noexcept

Definition at line 6 of file MaterialProperties.cpp.

◆ hardwareSkinning()

void Divide::Material::Properties::hardwareSkinning ( bool  state)
noexcept

Definition at line 48 of file MaterialProperties.cpp.

◆ ignoreTexDiffuseAlpha()

void Divide::Material::Properties::ignoreTexDiffuseAlpha ( bool  state)
noexcept

Definition at line 41 of file MaterialProperties.cpp.

◆ isInstanced()

void Divide::Material::Properties::isInstanced ( bool  state)
noexcept

Definition at line 34 of file MaterialProperties.cpp.

◆ isRefractive()

void Divide::Material::Properties::isRefractive ( bool  state)
noexcept

Definition at line 13 of file MaterialProperties.cpp.

◆ isStatic()

void Divide::Material::Properties::isStatic ( bool  state)
noexcept

Definition at line 27 of file MaterialProperties.cpp.

◆ loadFromXML()

void Divide::Material::Properties::loadFromXML ( const std::string &  entryName,
const boost::property_tree::ptree &  pt 
)
protected

Definition at line 140 of file MaterialProperties.cpp.

◆ PROPERTY_R() [1/12]

Divide::Material::Properties::PROPERTY_R ( bool  ,
doubleSided  ,
false   
)

◆ PROPERTY_R() [2/12]

Divide::Material::Properties::PROPERTY_R ( bool  ,
hardwareSkinning  ,
false   
)

◆ PROPERTY_R() [3/12]

Divide::Material::Properties::PROPERTY_R ( bool  ,
isInstanced  ,
false   
)

◆ PROPERTY_R() [4/12]

Divide::Material::Properties::PROPERTY_R ( bool  ,
isRefractive  ,
false   
)

◆ PROPERTY_R() [5/12]

Divide::Material::Properties::PROPERTY_R ( bool  ,
isStatic  ,
false   
)

◆ PROPERTY_R() [6/12]

Divide::Material::Properties::PROPERTY_R ( bool  ,
receivesShadows  ,
true   
)

◆ PROPERTY_R() [7/12]

Divide::Material::Properties::PROPERTY_R ( bool  ,
texturesInFragmentStageOnly  ,
true   
)

◆ PROPERTY_R() [8/12]

Divide::Material::Properties::PROPERTY_R ( bool  ,
usePackedOMR  ,
false   
)

If the metalness textures has 3 (or 4) channels, those channels are interpreted automatically as R: Occlusion, G: Metalness, B: Roughness.

◆ PROPERTY_R() [9/12]

Divide::Material::Properties::PROPERTY_R ( BumpMethod  ,
bumpMethod  ,
BumpMethod::NONE   
)

◆ PROPERTY_R() [10/12]

Divide::Material::Properties::PROPERTY_R ( FColour4  ,
baseColour  ,
DefaultColours::WHITE   
)

◆ PROPERTY_R() [11/12]

Divide::Material::Properties::PROPERTY_R ( ShadingMode  ,
shadingMode  ,
ShadingMode::COUNT   
)

◆ PROPERTY_R() [12/12]

Divide::Material::Properties::PROPERTY_R ( TranslucencySource  ,
translucencySource  ,
TranslucencySource::COUNT   
)

◆ PROPERTY_R_IW() [1/3]

Divide::Material::Properties::PROPERTY_R_IW ( bool  ,
cullUpdated  ,
false   
)

◆ PROPERTY_R_IW() [2/3]

Divide::Material::Properties::PROPERTY_R_IW ( bool  ,
needsNewShader  ,
true   
)

◆ PROPERTY_R_IW() [3/3]

Divide::Material::Properties::PROPERTY_R_IW ( bool  ,
transparencyUpdated  ,
false   
)

◆ PROPERTY_RW() [1/10]

Divide::Material::Properties::PROPERTY_RW ( F32  ,
metallic  ,
0.  f 
)

◆ PROPERTY_RW() [2/10]

Divide::Material::Properties::PROPERTY_RW ( F32  ,
occlusion  ,
1.  0f 
)

◆ PROPERTY_RW() [3/10]

Divide::Material::Properties::PROPERTY_RW ( F32  ,
parallaxFactor  ,
1.  0f 
)

◆ PROPERTY_RW() [4/10]

Divide::Material::Properties::PROPERTY_RW ( F32  ,
roughness  ,
0.  5f 
)

◆ PROPERTY_RW() [5/10]

Divide::Material::Properties::PROPERTY_RW ( F32  ,
shininess  ,
0.  f 
)

◆ PROPERTY_RW() [6/10]

Divide::Material::Properties::PROPERTY_RW ( FColour3  ,
ambient  ,
DefaultColours::BLACK   
)

◆ PROPERTY_RW() [7/10]

Divide::Material::Properties::PROPERTY_RW ( FColour3  ,
emissive  ,
DefaultColours::BLACK   
)

◆ PROPERTY_RW() [8/10]

Divide::Material::Properties::PROPERTY_RW ( FColour3  ,
specular  ,
DefaultColours::BLACK   
)

◆ PROPERTY_RW() [9/10]

Divide::Material::Properties::PROPERTY_RW ( Overrides  ,
overrides   
)

◆ PROPERTY_RW() [10/10]

Divide::Material::Properties::PROPERTY_RW ( SpecularGlossiness  ,
specGloss   
)

◆ receivesShadows()

void Divide::Material::Properties::receivesShadows ( bool  state)
noexcept

Definition at line 20 of file MaterialProperties.cpp.

◆ saveToXML()

void Divide::Material::Properties::saveToXML ( const std::string &  entryName,
boost::property_tree::ptree &  pt 
) const
protected

Definition at line 95 of file MaterialProperties.cpp.

◆ shadingMode()

void Divide::Material::Properties::shadingMode ( ShadingMode  mode)
noexcept

Definition at line 88 of file MaterialProperties.cpp.

◆ texturesInFragmentStageOnly()

void Divide::Material::Properties::texturesInFragmentStageOnly ( bool  state)
noexcept

Definition at line 55 of file MaterialProperties.cpp.

◆ toggleTransparency()

void Divide::Material::Properties::toggleTransparency ( bool  state)
noexcept

Definition at line 62 of file MaterialProperties.cpp.

◆ useAlphaDiscard()

void Divide::Material::Properties::useAlphaDiscard ( bool  state)
noexcept

Definition at line 69 of file MaterialProperties.cpp.

Friends And Related Function Documentation

◆ Material

friend class Material
friend

Definition at line 163 of file Material.h.


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