Ocular Engine
|
#include <ShaderProgram.hpp>
Protected Attributes | |
VertexShader * | m_VertexShader |
GeometryShader * | m_GeometryShader |
FragmentShader * | m_FragmentShader |
PreTessellationShader * | m_PreTessellationShader |
PostTessellationShader * | m_PostTessellationShader |
Protected Attributes inherited from Ocular::Core::Resource | |
ResourceType | m_Type |
ResourceMetadata * | m_Metadata |
File | m_SourceFile |
bool | m_IsInMemory |
uint64_t | m_SizeInMemory |
std::string | m_Name |
std::string | m_MappingName |
A ShaderProgram is a collection of individual shader objects.
When a shader file is loaded (.hlsl, .glsl, etc.), a ShaderProgram object is created that contains all individual shaders found within the file.
DomainShader * Ocular::Graphics::ShaderProgram::getDomainShader | ( | ) |
Returns a pointer to the Domain Shader that belongs to this shader program.
FragmentShader * Ocular::Graphics::ShaderProgram::getFragmentShader | ( | ) |
GeometryShader * Ocular::Graphics::ShaderProgram::getGeometryShader | ( | ) |
HullShader * Ocular::Graphics::ShaderProgram::getHullShader | ( | ) |
Returns a pointer to the Hull Shader that belongs to this shader program.
PixelShader * Ocular::Graphics::ShaderProgram::getPixelShader | ( | ) |
Returns a pointer to the Pixel Shader that belongs to this shader program.
PostTessellationShader * Ocular::Graphics::ShaderProgram::getPostTessellationShader | ( | ) |
PreTessellationShader * Ocular::Graphics::ShaderProgram::getPreTessellationShader | ( | ) |
VertexShader * Ocular::Graphics::ShaderProgram::getVertexShader | ( | ) |
void Ocular::Graphics::ShaderProgram::setDomainShader | ( | DomainShader * | shader | ) |
Sets the Domain Shader that belongs to this shader program.
[in] | shader |
void Ocular::Graphics::ShaderProgram::setFragmentShader | ( | FragmentShader * | shader | ) |
Sets the Fragment Shader that belongs to this shader program.
[in] | shader |
void Ocular::Graphics::ShaderProgram::setGeometryShader | ( | GeometryShader * | shader | ) |
Sets the Geometr Shader that belongs to this shader program.
[in] | shader |
void Ocular::Graphics::ShaderProgram::setHullShader | ( | HullShader * | shader | ) |
Sets the Hull Shader that belongs to this shader program.
[in] | shader |
void Ocular::Graphics::ShaderProgram::setPixelShader | ( | PixelShader * | shader | ) |
Sets the Pixel Shader that belongs to this shader program.
[in] | shader |
void Ocular::Graphics::ShaderProgram::setPostTessellationShader | ( | PostTessellationShader * | shader | ) |
Sets the Post-Tessellation Shader that belongs to this shader program.
[in] | shader |
void Ocular::Graphics::ShaderProgram::setPreTessellationShader | ( | PreTessellationShader * | shader | ) |
Sets the Pre-Tessellation Shader that belongs to this shader program.
[in] | shader |
void Ocular::Graphics::ShaderProgram::setVertexShader | ( | VertexShader * | shader | ) |
|
overridevirtual |
Frees all memory used by this Resource.
Reimplemented from Ocular::Core::Resource.