Ocular Engine
|
Special default 'empty' Material. Typically used internally. More...
#include <MaterialEmpty.hpp>
Public Member Functions | |
virtual void | bind () override |
virtual void | unbind () override |
virtual void | unload () override |
virtual void | onLoad (Core::BuilderNode const *node) override |
virtual void | onSave (Core::BuilderNode *node) const override |
![]() | |
virtual bool | setTexture (uint32_t index, std::string const &name, Texture *texture) |
Texture * | getTexture (uint32_t index) const |
virtual void | removeTexture (uint32_t index) |
uint32_t | getNumTextures () const |
std::vector< TextureSamplerInfo > const * | getTextures () const |
bool | setVertexShader (std::string const &name) |
void | setVertexShader (VertexShader *shader) |
bool | setGeometryShader (std::string const &name) |
void | setGeometryShader (GeometryShader *shader) |
bool | setFragmentShader (std::string const &name) |
void | setFragmentShader (FragmentShader *shader) |
bool | setPreTessellationShader (std::string const &name) |
void | setPreTessellationShader (PreTessellationShader *shader) |
bool | setPostTessellationShader (std::string const &name) |
void | setPostTessellationShader (PostTessellationShader *shader) |
VertexShader * | getVertexShader () const |
GeometryShader * | getGeometryShader () const |
FragmentShader * | getFragmentShader () const |
PreTessellationShader * | getPreTessellationShader () const |
PostTessellationShader * | getPostTessellationShader () const |
virtual void | setUniform (std::string const &name, uint32_t registerIndex, float value) |
virtual bool | getUniform (std::string const &name, float &value) |
virtual void | setUniform (std::string const &name, uint32_t registerIndex, Math::Vector4f const &value, std::string const &type=Utils::TypeName< Math::Vector4f >::name) |
virtual bool | getUniform (std::string const &name, Math::Vector4f &value) |
virtual void | setUniform (std::string const &name, uint32_t registerIndex, Math::Matrix3x3 const &value) |
virtual bool | getUniform (std::string const &name, Math::Matrix3x3 &value) |
virtual void | setUniform (std::string const &name, uint32_t registerIndex, Math::Matrix4x4 const &value) |
virtual bool | getUniform (std::string const &name, Math::Matrix4x4 &value) |
UniformBuffer const * | getUniformBuffer () const |
void | setPrimitiveStyle (PrimitiveStyle style) |
PrimitiveStyle | getPrimitiveStyle () const |
void | setFillMode (FillMode mode) |
FillMode | getFillMode () const |
void | setRenderPriority (uint32_t priority) |
uint32_t | getRenderPriority () const |
![]() | |
Resource (File const &source) | |
virtual void | forceLoad () |
File | getSourceFile () const |
void | setSourceFile (File const &file) |
void | setIsInMemory (bool inMemory) |
bool | isInMemory () const |
void | setSize (uint64_t size) |
uint64_t | getSize () const |
ResourceType | getResourceType () const |
void | setName (std::string const &name) |
std::string const & | getName () const |
std::string const & | getMappingName () const |
void | setMappingName (std::string const &name) |
ResourceMetadata * | getMetadata () const |
void | setMetadata (ResourceMetadata *metadata) |
![]() | |
void | getAllExposedNames (std::vector< std::string > &names) const |
bool | getVariable (std::string const &name, ExposedVariable &var) |
template<typename T > | |
bool | getVariableValue (std::string const &name, T &var) |
template<typename T > | |
bool | setVariableValue (std::string const &name, T const &value) |
virtual void | onVariableModified (std::string const &varName) |
Additional Inherited Members | |
![]() | |
static const std::string | ShaderNodeName = "ShaderProgram" |
static const std::string | TextureNodeName = "Textures" |
static const std::string | UniformNodeName = "Uniforms" |
static const std::string | RenderStateNodeName = "RenderState" |
![]() | |
void | setDefaults () |
void | bindShaders () |
void | unbindShaders () |
void | bindStateChanges () |
void | unbindStateChanges () |
![]() | |
void | exposeVariable (std::string const &name, std::string const &type, bool isPointer, bool isExposed, void *data) |
![]() | |
VertexShader * | m_VertexShader |
GeometryShader * | m_GeometryShader |
FragmentShader * | m_FragmentShader |
PreTessellationShader * | m_PreTessellationShader |
PostTessellationShader * | m_PostTessellationShader |
RasterState | m_StoredRasterState |
std::vector< TextureSamplerInfo > | m_Textures |
UniformBuffer * | m_UniformBuffer |
uint32_t | m_RenderPriority |
![]() | |
ResourceType | m_Type |
ResourceMetadata * | m_Metadata |
File | m_SourceFile |
bool | m_IsInMemory |
uint64_t | m_SizeInMemory |
std::string | m_Name |
std::string | m_MappingName |
![]() | |
std::unordered_map< std::string, ExposedVariable > | m_ExposedVariables |
Special default 'empty' Material. Typically used internally.
|
overridevirtual |
Alternate creation method (opposed to the constructor) in which one is provided with a BuilderNode chain. This chain may be explored to retrieve any relevant variables, and their values, that may have been stored in it.
This method will typically mirror the onSave, in which relevant values are stored within the chain.
[in] | node | Node to extract variable information from |
Reimplemented from Ocular::Graphics::Material.
|
overridevirtual |
Method used to add an object's data to an existing node chain in preparation for being save to a file.
[in] | node | Node to place variable information in |
Reimplemented from Ocular::Graphics::Material.
|
overridevirtual |
Frees all memory used by this Resource.
Reimplemented from Ocular::Graphics::Material.