Pioneer
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Protected Attributes | Friends | List of all members
Graphics::Material Class Referenceabstract

#include <Material.h>

Inheritance diagram for Graphics::Material:
Inheritance graph
[legend]
Collaboration diagram for Graphics::Material:
Collaboration graph
[legend]

Public Member Functions

 Material ()
 
virtual ~Material ()
 
const MaterialDescriptorGetDescriptor () const
 
virtual bool IsProgramLoaded () const =0
 
virtual bool SetTexture (size_t hash, Texture *tex)=0
 
virtual bool SetBufferDynamic (size_t hash, void *buffer, size_t size)=0
 
template<typename T >
bool SetBufferDynamic (size_t hash, T *buffer)
 
virtual bool SetBuffer (size_t hash, BufferBinding< UniformBuffer > uboBinding)=0
 
virtual bool SetPushConstant (size_t hash, int i)=0
 
virtual bool SetPushConstant (size_t hash, float f)=0
 
virtual bool SetPushConstant (size_t hash, vector3f v3)=0
 
virtual bool SetPushConstant (size_t hash, vector3f v4, float f4)=0
 
virtual bool SetPushConstant (size_t hash, Color c)=0
 
virtual bool SetPushConstant (size_t hash, matrix3x3f mat3)=0
 
virtual bool SetPushConstant (size_t hash, matrix4x4f mat4)=0
 
- Public Member Functions inherited from RefCounted
 RefCounted ()
 
virtual ~RefCounted ()
 
void IncRefCount () const
 
void DecRefCount () const
 
int GetRefCount () const
 
- Public Member Functions inherited from LuaWrappable
virtual ~LuaWrappable ()
 

Public Attributes

Color diffuse
 
Color specular
 
Color emissive
 
float shininess
 

Protected Attributes

MaterialDescriptor m_descriptor
 
size_t m_renderStateHash
 

Friends

class RendererOGL
 

Constructor & Destructor Documentation

◆ Material()

Graphics::Material::Material ( )

◆ ~Material()

virtual Graphics::Material::~Material ( )
inlinevirtual

Member Function Documentation

◆ GetDescriptor()

const MaterialDescriptor & Graphics::Material::GetDescriptor ( ) const
inline

◆ IsProgramLoaded()

virtual bool Graphics::Material::IsProgramLoaded ( ) const
pure virtual

◆ SetBuffer()

virtual bool Graphics::Material::SetBuffer ( size_t  hash,
BufferBinding< UniformBuffer uboBinding 
)
pure virtual

Implemented in Graphics::OGL::Material.

◆ SetBufferDynamic() [1/2]

template<typename T >
bool Graphics::Material::SetBufferDynamic ( size_t  hash,
T *  buffer 
)
inline
Here is the call graph for this function:

◆ SetBufferDynamic() [2/2]

virtual bool Graphics::Material::SetBufferDynamic ( size_t  hash,
void *  buffer,
size_t  size 
)
pure virtual

◆ SetPushConstant() [1/7]

virtual bool Graphics::Material::SetPushConstant ( size_t  hash,
Color  c 
)
pure virtual

◆ SetPushConstant() [2/7]

virtual bool Graphics::Material::SetPushConstant ( size_t  hash,
float  f 
)
pure virtual

◆ SetPushConstant() [3/7]

virtual bool Graphics::Material::SetPushConstant ( size_t  hash,
int  i 
)
pure virtual

◆ SetPushConstant() [4/7]

virtual bool Graphics::Material::SetPushConstant ( size_t  hash,
matrix3x3f  mat3 
)
pure virtual

◆ SetPushConstant() [5/7]

virtual bool Graphics::Material::SetPushConstant ( size_t  hash,
matrix4x4f  mat4 
)
pure virtual

◆ SetPushConstant() [6/7]

virtual bool Graphics::Material::SetPushConstant ( size_t  hash,
vector3f  v3 
)
pure virtual

◆ SetPushConstant() [7/7]

virtual bool Graphics::Material::SetPushConstant ( size_t  hash,
vector3f  v4,
float  f4 
)
pure virtual

◆ SetTexture()

virtual bool Graphics::Material::SetTexture ( size_t  hash,
Texture tex 
)
pure virtual

Friends And Related Symbol Documentation

◆ RendererOGL

friend class RendererOGL
friend

Member Data Documentation

◆ diffuse

Color Graphics::Material::diffuse

◆ emissive

Color Graphics::Material::emissive

◆ m_descriptor

MaterialDescriptor Graphics::Material::m_descriptor
protected

◆ m_renderStateHash

size_t Graphics::Material::m_renderStateHash
protected

◆ shininess

float Graphics::Material::shininess

◆ specular

Color Graphics::Material::specular

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