The IProgram video object interface. More...
#include "murl_video_i_program.h"
Inherited by Murl::Video::Program, and Murl::Video::Vulkan::ShaderProgram.
Public Member Functions | |
virtual IObject * | GetObjectInterface ()=0 |
Get the mutable Video::IObject interface. More... | |
virtual const IObject * | GetObjectInterface () const =0 |
Get the constant Video::IObject interface. More... | |
virtual Bool | Enable ()=0 |
Enable the program. More... | |
virtual Bool | Disable ()=0 |
Disable the program. More... | |
virtual Bool | Set (IProgram *currentProgram)=0 |
Attach the new program to the current GPU program. More... | |
virtual Bool | UsesFixedTechnique () const =0 |
Check if the program represents a fixed-function one. More... | |
virtual IProgram * | GetBranch (const IConstants *constants)=0 |
Get a possible branch depending on some constants value. More... | |
virtual Bool | HasConstantBuffer (IEnums::ShaderType shaderType, IEnums::ConstantBufferItem item) const =0 |
Check if a given predefined constant buffer item is present. More... | |
virtual Bool | HasConstantBuffer (IEnums::ShaderType shaderType, SInt32 id) const =0 |
Check if a specific constant buffer is present. More... | |
virtual SInt32 | GetConstantBufferIndex (IEnums::ShaderType shaderType, IEnums::ConstantBufferItem item) const =0 |
Get the index of a given predefined constant buffer item in the program. More... | |
virtual SInt32 | GetConstantBufferIndex (IEnums::ShaderType shaderType, SInt32 id) const =0 |
Get the index of a specific constant buffer in the program. More... | |
virtual SInt32 | GetConstantBufferLocation (IEnums::ShaderType shaderType, IEnums::ConstantBufferItem item) const =0 |
Get the location (register number) of a given predefined constant buffer item in the program. More... | |
virtual SInt32 | GetConstantBufferLocation (IEnums::ShaderType shaderType, SInt32 id) const =0 |
Get the location (register number) of a specific constant buffer in the program. More... | |
virtual UInt32 | GetNumberOfConstantBuffers (IEnums::ShaderType shaderType) const =0 |
Get the total number of constant buffers in the program. More... | |
virtual IEnums::ConstantBufferItem | GetConstantBufferItem (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the predefined constant buffer item at a given index. More... | |
virtual SInt32 | GetConstantBufferId (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the unique integer ID of a constant buffer at a given index. More... | |
virtual const String & | GetConstantBufferName (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the actual name of a constant buffer at a given index. More... | |
virtual Bool | SetConstantBuffer (IEnums::ShaderType shaderType, IEnums::ConstantBufferItem item, const void *buffer, const void *data)=0 |
Update the constant buffer in the program for a predefined buffer. More... | |
virtual Bool | SetConstantBuffer (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the constant buffer in the program for a specific buffer. More... | |
virtual Bool | HasUniform (IEnums::ShaderType shaderType, IEnums::UniformItem item) const =0 |
Check if a given predefined uniform item is present. More... | |
virtual Bool | HasUniform (IEnums::ShaderType shaderType, SInt32 id) const =0 |
Check if a specific uniform is present. More... | |
virtual SInt32 | GetUniformIndex (IEnums::ShaderType shaderType, IEnums::UniformItem item) const =0 |
Get the index of a given predefined uniform item in the program. More... | |
virtual SInt32 | GetUniformIndex (IEnums::ShaderType shaderType, SInt32 id) const =0 |
Get the index of a specific uniform in the program. More... | |
virtual SInt32 | GetUniformLocation (IEnums::ShaderType shaderType, IEnums::UniformItem item) const =0 |
Get the location (register number) of a given predefined uniform item in the program. More... | |
virtual SInt32 | GetUniformLocation (IEnums::ShaderType shaderType, SInt32 id) const =0 |
Get the location (register number) of a specific uniform in the program. More... | |
virtual UInt32 | GetNumberOfUniforms (IEnums::ShaderType shaderType) const =0 |
Get the total number of uniforms in the program. More... | |
virtual IEnums::UniformItem | GetUniformItem (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the predefined uniform item at a given index. More... | |
virtual IEnums::UniformType | GetUniformType (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the data type of a uniform at a given index. More... | |
virtual SInt32 | GetUniformId (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the unique integer ID of a uniform at a given index. More... | |
virtual const String & | GetUniformName (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the actual name of a uniform at a given index. More... | |
virtual Bool | SetUniformFloat (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined IFloatUniform. More... | |
virtual Bool | SetUniformFloatVector2 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined IFloatVector2Uniform. More... | |
virtual Bool | SetUniformFloatVector3 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined IFloatVector3Uniform. More... | |
virtual Bool | SetUniformFloatVector4 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined IFloatVector4Uniform. More... | |
virtual Bool | SetUniformFloatMatrix2 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined IFloatMatrix2Uniform. More... | |
virtual Bool | SetUniformFloatMatrix3 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined IFloatMatrix3Uniform. More... | |
virtual Bool | SetUniformFloatMatrix4 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined IFloatMatrix4Uniform. More... | |
virtual Bool | SetUniformSInt32 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined ISInt32Uniform. More... | |
virtual Bool | SetUniformSInt32Vector2 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined ISInt32Vector2Uniform. More... | |
virtual Bool | SetUniformSInt32Vector3 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined ISInt32Vector3Uniform. More... | |
virtual Bool | SetUniformSInt32Vector4 (IEnums::ShaderType shaderType, IEnums::UniformItem item, const void *buffer, const void *data)=0 |
Update the uniform in the program for a predefined ISInt32Vector4Uniform. More... | |
virtual Bool | SetUniformFloat (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific IFloatUniform. More... | |
virtual Bool | SetUniformFloatVector2 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific IFloatVector2Uniform. More... | |
virtual Bool | SetUniformFloatVector3 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific IFloatVector3Uniform. More... | |
virtual Bool | SetUniformFloatVector4 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific IFloatVector4Uniform. More... | |
virtual Bool | SetUniformFloatMatrix2 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific IFloatMatrix2Uniform. More... | |
virtual Bool | SetUniformFloatMatrix3 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific IFloatMatrix3Uniform. More... | |
virtual Bool | SetUniformFloatMatrix4 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific IFloatMatrix4Uniform. More... | |
virtual Bool | SetUniformSInt32 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific ISInt32Uniform. More... | |
virtual Bool | SetUniformSInt32Vector2 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific ISInt32Vector2Uniform. More... | |
virtual Bool | SetUniformSInt32Vector3 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific ISInt32Vector3Uniform. More... | |
virtual Bool | SetUniformSInt32Vector4 (IEnums::ShaderType shaderType, SInt32 id, const void *buffer, const void *data)=0 |
Update the uniform in the program for a specific ISInt32Vector4Uniform. More... | |
virtual Bool | HasAttribute (IEnums::ShaderType shaderType, IEnums::AttributeItem item) const =0 |
Check if a given predefined attribute item is present. More... | |
virtual Bool | HasAttribute (IEnums::ShaderType shaderType, SInt32 id) const =0 |
Check if a specific attribute is present. More... | |
virtual SInt32 | GetAttributeIndex (IEnums::ShaderType shaderType, IEnums::AttributeItem item) const =0 |
Get the index of a given predefined attribute item in the program. More... | |
virtual SInt32 | GetAttributeIndex (IEnums::ShaderType shaderType, SInt32 id) const =0 |
Get the index of a specific attribute in the program. More... | |
virtual SInt32 | GetAttributeLocation (IEnums::ShaderType shaderType, IEnums::AttributeItem item) const =0 |
Get the location (register number) of a given predefined attribute item in the program. More... | |
virtual SInt32 | GetAttributeLocation (IEnums::ShaderType shaderType, SInt32 id) const =0 |
Get the location (register number) of a specific attribute in the program. More... | |
virtual UInt32 | GetNumberOfAttributes (IEnums::ShaderType shaderType) const =0 |
Get the total number of attributes in the program. More... | |
virtual IEnums::AttributeItem | GetAttributeItem (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the predefined attribute item at a given index. More... | |
virtual IEnums::AttributeType | GetAttributeType (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the data type of an attribute at a given index. More... | |
virtual SInt32 | GetAttributeId (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the unique integer ID of an attribute at a given index. More... | |
virtual const String & | GetAttributeName (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the actual name of an attribute at a given index. More... | |
virtual Bool | SetAttributeFloat (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IFloatAttribute. More... | |
virtual Bool | SetAttributeFloatVector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IFloatVector2Attribute. More... | |
virtual Bool | SetAttributeFloatVector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IFloatVector3Attribute. More... | |
virtual Bool | SetAttributeFloatVector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IFloatVector4Attribute. More... | |
virtual Bool | SetAttributeUInt8 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt8Attribute. More... | |
virtual Bool | SetAttributeUInt8Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt8Vector2Attribute. More... | |
virtual Bool | SetAttributeUInt8Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt8Vector3Attribute. More... | |
virtual Bool | SetAttributeUInt8Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt8Vector4Attribute. More... | |
virtual Bool | SetAttributeSInt8 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt8Attribute. More... | |
virtual Bool | SetAttributeSInt8Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt8Vector2Attribute. More... | |
virtual Bool | SetAttributeSInt8Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt8Vector3Attribute. More... | |
virtual Bool | SetAttributeSInt8Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt8Vector4Attribute. More... | |
virtual Bool | SetAttributeUInt16 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt16Attribute. More... | |
virtual Bool | SetAttributeUInt16Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt16Vector2Attribute. More... | |
virtual Bool | SetAttributeUInt16Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt16Vector3Attribute. More... | |
virtual Bool | SetAttributeUInt16Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt16Vector4Attribute. More... | |
virtual Bool | SetAttributeSInt16 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt16Attribute. More... | |
virtual Bool | SetAttributeSInt16Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt16Vector2Attribute. More... | |
virtual Bool | SetAttributeSInt16Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt16Vector3Attribute. More... | |
virtual Bool | SetAttributeSInt16Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt16Vector4Attribute. More... | |
virtual Bool | SetAttributeUInt32 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt32Attribute. More... | |
virtual Bool | SetAttributeUInt32Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt32Vector2Attribute. More... | |
virtual Bool | SetAttributeUInt32Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt32Vector3Attribute. More... | |
virtual Bool | SetAttributeUInt32Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined IUInt32Vector4Attribute. More... | |
virtual Bool | SetAttributeSInt32 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt32Attribute. More... | |
virtual Bool | SetAttributeSInt32Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt32Vector2Attribute. More... | |
virtual Bool | SetAttributeSInt32Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt32Vector3Attribute. More... | |
virtual Bool | SetAttributeSInt32Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined ISInt32Vector4Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt8 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized IUInt8Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt8Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized IUInt8Vector2Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt8Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized IUInt8Vector3Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt8Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized IUInt8Vector4Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt8 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized ISInt8Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt8Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized ISInt8Vector2Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt8Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized ISInt8Vector3Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt8Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized ISInt8Vector4Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt16 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized IUInt16Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt16Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized IUInt16Vector2Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt16Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized IUInt16Vector3Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt16Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized IUInt16Vector4Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt16 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized ISInt16Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt16Vector2 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized ISInt16Vector2Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt16Vector3 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized ISInt16Vector3Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt16Vector4 (IEnums::ShaderType shaderType, IEnums::AttributeItem item, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a predefined normalized ISInt16Vector4Attribute. More... | |
virtual Bool | SetAttributeFloat (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IFloatAttribute. More... | |
virtual Bool | SetAttributeFloatVector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IFloatVector2Attribute. More... | |
virtual Bool | SetAttributeFloatVector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IFloatVector3Attribute. More... | |
virtual Bool | SetAttributeFloatVector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IFloatVector4Attribute. More... | |
virtual Bool | SetAttributeUInt8 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt8Attribute. More... | |
virtual Bool | SetAttributeUInt8Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt8Vector2Attribute. More... | |
virtual Bool | SetAttributeUInt8Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt8Vector3Attribute. More... | |
virtual Bool | SetAttributeUInt8Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt8Vector4Attribute. More... | |
virtual Bool | SetAttributeSInt8 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt8Attribute. More... | |
virtual Bool | SetAttributeSInt8Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt8Vector2Attribute. More... | |
virtual Bool | SetAttributeSInt8Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt8Vector3Attribute. More... | |
virtual Bool | SetAttributeSInt8Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt8Vector4Attribute. More... | |
virtual Bool | SetAttributeUInt16 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt16Attribute. More... | |
virtual Bool | SetAttributeUInt16Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt16Vector2Attribute. More... | |
virtual Bool | SetAttributeUInt16Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt16Vector3Attribute. More... | |
virtual Bool | SetAttributeUInt16Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt16Vector4Attribute. More... | |
virtual Bool | SetAttributeSInt16 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt16Attribute. More... | |
virtual Bool | SetAttributeSInt16Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt16Vector2Attribute. More... | |
virtual Bool | SetAttributeSInt16Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt16Vector3Attribute. More... | |
virtual Bool | SetAttributeSInt16Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt16Vector4Attribute. More... | |
virtual Bool | SetAttributeUInt32 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt32Attribute. More... | |
virtual Bool | SetAttributeUInt32Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt32Vector2Attribute. More... | |
virtual Bool | SetAttributeUInt32Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt32Vector3Attribute. More... | |
virtual Bool | SetAttributeUInt32Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific IUInt32Vector4Attribute. More... | |
virtual Bool | SetAttributeSInt32 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt32Attribute. More... | |
virtual Bool | SetAttributeSInt32Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt32Vector2Attribute. More... | |
virtual Bool | SetAttributeSInt32Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt32Vector3Attribute. More... | |
virtual Bool | SetAttributeSInt32Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific ISInt32Vector4Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt8 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized IUInt8Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt8Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized IUInt8Vector2Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt8Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized IUInt8Vector3Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt8Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized IUInt8Vector4Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt8 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized ISInt8Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt8Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized ISInt8Vector2Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt8Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized ISInt8Vector3Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt8Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized ISInt8Vector4Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt16 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized IUInt16Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt16Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized IUInt16Vector2Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt16Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized IUInt16Vector3Attribute. More... | |
virtual Bool | SetAttributeNormalizedUInt16Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized IUInt16Vector4Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt16 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized ISInt16Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt16Vector2 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized ISInt16Vector2Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt16Vector3 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized ISInt16Vector3Attribute. More... | |
virtual Bool | SetAttributeNormalizedSInt16Vector4 (IEnums::ShaderType shaderType, SInt32 id, UInt32 byteStride, const void *buffer, const void *data)=0 |
Update the attribute in the program for a specific normalized ISInt16Vector4Attribute. More... | |
virtual Bool | HasTexture (IEnums::ShaderType shaderType, UInt32 unit) const =0 |
Check if a texture sampler is present at a given unit. More... | |
virtual SInt32 | GetTextureIndex (IEnums::ShaderType shaderType, UInt32 unit) const =0 |
Get the index of a given texture sampler in the program. More... | |
virtual UInt32 | GetNumberOfTextures (IEnums::ShaderType shaderType) const =0 |
Get the total number of texture samplers in the program. More... | |
virtual IEnums::TextureSemantic | GetTextureSemantic (IEnums::ShaderType shaderType, UInt32 index, IEnums::ColorComponent colorComponent) const =0 |
Get the semantic of a sampler for a given index and color component. More... | |
virtual SInt32 | GetTextureUnit (IEnums::ShaderType shaderType, UInt32 index) const =0 |
Get the used texture unit of a sampler at a given index. More... | |
virtual Bool | SetNumberOfTextureUnitsUsed (UInt32 numberOfUnits)=0 |
Set the number of texture units used. More... | |
virtual UInt32 | GetNumberOfTextureUnitsUsed () const =0 |
Get the number of texture units used. More... | |
virtual Bool | SetNumberOfLightUnitsUsed (UInt32 numberOfUnits)=0 |
Set the number of light units used. More... | |
virtual UInt32 | GetNumberOfLightUnitsUsed () const =0 |
Get the number of light units used. More... | |
virtual Bool | SetNumberOfBoneUnitsUsed (UInt32 numberOfUnits)=0 |
Set the number of bone units used. More... | |
virtual UInt32 | GetNumberOfBoneUnitsUsed () const =0 |
Get the number of bone units used. More... | |
virtual SInt32 | GetLightTextureUnit (UInt32 lightUnit) const =0 |
Get the texture unit used together with a given light unit, for rendering projective lights. More... | |
virtual Bool | IsValid () const =0 |
Check if the program is valid. More... | |
virtual const String & | GetLinkerLog () const =0 |
Get the shader linker log. More... | |
Detailed Description
The IProgram video object interface.
This interface represents a GPU program used during rendering.
Used internally by Graph::FixedProgram and Graph::ShaderProgram.
Member Function Documentation
◆ GetObjectInterface() [1/2]
|
pure virtual |
Get the mutable Video::IObject interface.
- Returns
- The IObject interface.
◆ GetObjectInterface() [2/2]
|
pure virtual |
Get the constant Video::IObject interface.
- Returns
- The IObject interface.
◆ Enable()
|
pure virtual |
Enable the program.
- Returns
- true if successful.
◆ Disable()
|
pure virtual |
Disable the program.
- Returns
- true if successful.
◆ Set()
Attach the new program to the current GPU program.
- Parameters
-
currentProgram The current GPU program.
- Returns
- true if successful.
◆ UsesFixedTechnique()
|
pure virtual |
Check if the program represents a fixed-function one.
- Returns
- true if the program represents a fixed-function one.
◆ GetBranch()
|
pure virtual |
Get a possible branch depending on some constants value.
- Parameters
-
constants The constants to check.
- Returns
- A program branch, or this if not depending on any value.
◆ HasConstantBuffer() [1/2]
|
pure virtual |
Check if a given predefined constant buffer item is present.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined constant buffer item to query.
- Returns
- true if present.
◆ HasConstantBuffer() [2/2]
|
pure virtual |
Check if a specific constant buffer is present.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the constant buffer to query.
- Returns
- true if present.
◆ GetConstantBufferIndex() [1/2]
|
pure virtual |
Get the index of a given predefined constant buffer item in the program.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined constant buffer item to retrieve.
- Returns
- The zero-based index of the constant buffer, or -1 if not found.
◆ GetConstantBufferIndex() [2/2]
|
pure virtual |
Get the index of a specific constant buffer in the program.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the constant buffer to retrieve.
- Returns
- The zero-based index of the constant buffer, or -1 if not found.
◆ GetConstantBufferLocation() [1/2]
|
pure virtual |
Get the location (register number) of a given predefined constant buffer item in the program.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined constant buffer item to retrieve.
- Returns
- The location of the constant buffer, or -1 if not found.
◆ GetConstantBufferLocation() [2/2]
|
pure virtual |
Get the location (register number) of a specific constant buffer in the program.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the constant buffer to retrieve.
- Returns
- The location of the constant buffer, or -1 if not found.
◆ GetNumberOfConstantBuffers()
|
pure virtual |
Get the total number of constant buffers in the program.
- Parameters
-
shaderType The type of the attached shader to check.
- Returns
- The number of constant buffers.
◆ GetConstantBufferItem()
|
pure virtual |
Get the predefined constant buffer item at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the constant buffer, from 0 to GetNumberOfConstantBuffers()-1.
- Returns
- The item, or IEnums::CONSTANT_BUFFER_ITEM_CUSTOM if the index is out of range.
◆ GetConstantBufferId()
|
pure virtual |
Get the unique integer ID of a constant buffer at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the constant buffer, from 0 to GetNumberOfConstantBuffers()-1.
- Returns
- The unique ID, or -1 if the index is out of range.
◆ GetConstantBufferName()
|
pure virtual |
Get the actual name of a constant buffer at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the constant buffer, from 0 to GetNumberOfConstantBuffers()-1.
- Returns
- The name, or an empty string if the index is out of range.
◆ SetConstantBuffer() [1/2]
|
pure virtual |
Update the constant buffer in the program for a predefined buffer.
- Parameters
-
shaderType The type of the attached shader for which to update the buffer. item The predefined constant buffer item. buffer A handle to the constant buffer. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetConstantBuffer() [2/2]
|
pure virtual |
Update the constant buffer in the program for a specific buffer.
- Parameters
-
shaderType The type of the attached shader for which to update the buffer. id The unique integer ID of the constant buffer. buffer A handle to the constant buffer. data The actual buffer data to update with.
- Returns
- true if successful.
◆ HasUniform() [1/2]
|
pure virtual |
Check if a given predefined uniform item is present.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item to query.
- Returns
- true if present.
◆ HasUniform() [2/2]
|
pure virtual |
Check if a specific uniform is present.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform to query.
- Returns
- true if present.
◆ GetUniformIndex() [1/2]
|
pure virtual |
Get the index of a given predefined uniform item in the program.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item to retrieve.
- Returns
- The zero-based index of the uniform, or -1 if not found.
◆ GetUniformIndex() [2/2]
|
pure virtual |
Get the index of a specific uniform in the program.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform to retrieve.
- Returns
- The zero-based index of the uniform, or -1 if not found.
◆ GetUniformLocation() [1/2]
|
pure virtual |
Get the location (register number) of a given predefined uniform item in the program.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item to retrieve.
- Returns
- The location of the uniform, or -1 if not found.
◆ GetUniformLocation() [2/2]
|
pure virtual |
Get the location (register number) of a specific uniform in the program.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform to retrieve.
- Returns
- The location of the uniform, or -1 if not found.
◆ GetNumberOfUniforms()
|
pure virtual |
Get the total number of uniforms in the program.
- Parameters
-
shaderType The type of the attached shader to check.
- Returns
- The number of uniforms.
◆ GetUniformItem()
|
pure virtual |
Get the predefined uniform item at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the uniform, from 0 to GetNumberOfUniforms()-1.
- Returns
- The item, or IEnums::UNIFORM_ITEM_CUSTOM if the index is out of range.
◆ GetUniformType()
|
pure virtual |
Get the data type of a uniform at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the uniform, from 0 to GetNumberOfUniforms()-1.
- Returns
- The data type, or IEnums::UNIFORM_TYPE_UNDEFINED if the index is out of range.
◆ GetUniformId()
|
pure virtual |
Get the unique integer ID of a uniform at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the uniform, from 0 to GetNumberOfUniforms()-1.
- Returns
- The unique ID, or -1 if the index is out of range.
◆ GetUniformName()
|
pure virtual |
Get the actual name of a uniform at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the uniform, from 0 to GetNumberOfUniforms()-1.
- Returns
- The name, or an empty string if the index is out of range.
◆ SetUniformFloat() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined IFloatUniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatVector2() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined IFloatVector2Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatVector3() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined IFloatVector3Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatVector4() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined IFloatVector4Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatMatrix2() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined IFloatMatrix2Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatMatrix3() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined IFloatMatrix3Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatMatrix4() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined IFloatMatrix4Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformSInt32() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined ISInt32Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformSInt32Vector2() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined ISInt32Vector2Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformSInt32Vector3() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined ISInt32Vector3Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformSInt32Vector4() [1/2]
|
pure virtual |
Update the uniform in the program for a predefined ISInt32Vector4Uniform.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined uniform item. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloat() [2/2]
|
pure virtual |
Update the uniform in the program for a specific IFloatUniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatVector2() [2/2]
|
pure virtual |
Update the uniform in the program for a specific IFloatVector2Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatVector3() [2/2]
|
pure virtual |
Update the uniform in the program for a specific IFloatVector3Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatVector4() [2/2]
|
pure virtual |
Update the uniform in the program for a specific IFloatVector4Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatMatrix2() [2/2]
|
pure virtual |
Update the uniform in the program for a specific IFloatMatrix2Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatMatrix3() [2/2]
|
pure virtual |
Update the uniform in the program for a specific IFloatMatrix3Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformFloatMatrix4() [2/2]
|
pure virtual |
Update the uniform in the program for a specific IFloatMatrix4Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformSInt32() [2/2]
|
pure virtual |
Update the uniform in the program for a specific ISInt32Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformSInt32Vector2() [2/2]
|
pure virtual |
Update the uniform in the program for a specific ISInt32Vector2Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformSInt32Vector3() [2/2]
|
pure virtual |
Update the uniform in the program for a specific ISInt32Vector3Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetUniformSInt32Vector4() [2/2]
|
pure virtual |
Update the uniform in the program for a specific ISInt32Vector4Uniform.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the uniform. buffer A handle to the constant buffer containing the uniform. data The actual buffer data to update with.
- Returns
- true if successful.
◆ HasAttribute() [1/2]
|
pure virtual |
Check if a given predefined attribute item is present.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item to query.
- Returns
- true if present.
◆ HasAttribute() [2/2]
|
pure virtual |
Check if a specific attribute is present.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute to query.
- Returns
- true if present.
◆ GetAttributeIndex() [1/2]
|
pure virtual |
Get the index of a given predefined attribute item in the program.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item to retrieve.
- Returns
- The zero-based index of the attribute, or -1 if not found.
◆ GetAttributeIndex() [2/2]
|
pure virtual |
Get the index of a specific attribute in the program.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute to retrieve.
- Returns
- The zero-based index of the attribute, or -1 if not found.
◆ GetAttributeLocation() [1/2]
|
pure virtual |
Get the location (register number) of a given predefined attribute item in the program.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item to retrieve.
- Returns
- The location of the attribute, or -1 if not found.
◆ GetAttributeLocation() [2/2]
|
pure virtual |
Get the location (register number) of a specific attribute in the program.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute to retrieve.
- Returns
- The location of the attribute, or -1 if not found.
◆ GetNumberOfAttributes()
|
pure virtual |
Get the total number of attributes in the program.
- Parameters
-
shaderType The type of the attached shader to check.
- Returns
- The number of attributes.
◆ GetAttributeItem()
|
pure virtual |
Get the predefined attribute item at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the attribute, from 0 to GetNumberOfAttributes()-1.
- Returns
- The item, or IEnums::ATTRIBUTE_ITEM_CUSTOM if the index is out of range.
◆ GetAttributeType()
|
pure virtual |
Get the data type of an attribute at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the attribute, from 0 to GetNumberOfAttributes()-1.
- Returns
- The data type, or IEnums::ATTRIBUTE_TYPE_UNDEFINED if the index is out of range.
◆ GetAttributeId()
|
pure virtual |
Get the unique integer ID of an attribute at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the attribute, from 0 to GetNumberOfAttributes()-1.
- Returns
- The unique ID, or -1 if the index is out of range.
◆ GetAttributeName()
|
pure virtual |
Get the actual name of an attribute at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the attribute, from 0 to GetNumberOfAttributes()-1.
- Returns
- The name, or an empty string if the index is out of range.
◆ SetAttributeFloat() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IFloatAttribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeFloatVector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IFloatVector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeFloatVector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IFloatVector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeFloatVector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IFloatVector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt8() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt8Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt8Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt8Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt8Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt8Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt8Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt8Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt8() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt8Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt8Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt8Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt8Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt8Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt8Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt8Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt16() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt16Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt16Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt16Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt16Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt16Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt16Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt16Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt16() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt16Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt16Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt16Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt16Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt16Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt16Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt16Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt32() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt32Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt32Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt32Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt32Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt32Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt32Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined IUInt32Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt32() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt32Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt32Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt32Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt32Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt32Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt32Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined ISInt32Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt8() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized IUInt8Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt8Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized IUInt8Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt8Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized IUInt8Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt8Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized IUInt8Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt8() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized ISInt8Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt8Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized ISInt8Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt8Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized ISInt8Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt8Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized ISInt8Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt16() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized IUInt16Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt16Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized IUInt16Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt16Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized IUInt16Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt16Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized IUInt16Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt16() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized ISInt16Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt16Vector2() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized ISInt16Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt16Vector3() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized ISInt16Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt16Vector4() [1/2]
|
pure virtual |
Update the attribute in the program for a predefined normalized ISInt16Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. item The predefined attribute item. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeFloat() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IFloatAttribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeFloatVector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IFloatVector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeFloatVector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IFloatVector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeFloatVector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IFloatVector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt8() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt8Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt8Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt8Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt8Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt8Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt8Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt8Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt8() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt8Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt8Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt8Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt8Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt8Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt8Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt8Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt16() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt16Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt16Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt16Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt16Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt16Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt16Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt16Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt16() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt16Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt16Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt16Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt16Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt16Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt16Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt16Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt32() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt32Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt32Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt32Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt32Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt32Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeUInt32Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific IUInt32Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt32() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt32Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt32Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt32Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt32Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt32Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeSInt32Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific ISInt32Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt8() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized IUInt8Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt8Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized IUInt8Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt8Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized IUInt8Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt8Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized IUInt8Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt8() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized ISInt8Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt8Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized ISInt8Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt8Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized ISInt8Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt8Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized ISInt8Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt16() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized IUInt16Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt16Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized IUInt16Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt16Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized IUInt16Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedUInt16Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized IUInt16Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt16() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized ISInt16Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt16Vector2() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized ISInt16Vector2Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt16Vector3() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized ISInt16Vector3Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ SetAttributeNormalizedSInt16Vector4() [2/2]
|
pure virtual |
Update the attribute in the program for a specific normalized ISInt16Vector4Attribute.
- Parameters
-
shaderType The type of the attached shader to check. id The unique integer ID of the attribute. byteStride The byte stride of the vertex buffer. buffer A handle to the vertex buffer containing the attribute. data The actual buffer data to update with.
- Returns
- true if successful.
◆ HasTexture()
|
pure virtual |
Check if a texture sampler is present at a given unit.
- Parameters
-
shaderType The type of the attached shader to check. unit The texture unit, from 0 to IEnums::NUM_TEXTURE_UNITS-1.
- Returns
- true if present.
◆ GetTextureIndex()
|
pure virtual |
Get the index of a given texture sampler in the program.
- Parameters
-
shaderType The type of the attached shader to check. unit The texture unit, from 0 to IEnums::NUM_TEXTURE_UNITS-1.
- Returns
- The zero-based index of the sampler, or -1 if not present.
◆ GetNumberOfTextures()
|
pure virtual |
Get the total number of texture samplers in the program.
- Parameters
-
shaderType The type of the attached shader to check.
- Returns
- The number of samplers.
◆ GetTextureSemantic()
|
pure virtual |
Get the semantic of a sampler for a given index and color component.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the sampler, from 0 to GetNumberOfTextures()-1. colorComponent The color component to query.
- Returns
- The semantic, or IEnums::TEXTURE_SEMANTIC_UNDEFINED if the index is out of range.
◆ GetTextureUnit()
|
pure virtual |
Get the used texture unit of a sampler at a given index.
- Parameters
-
shaderType The type of the attached shader to check. index The index of the sampler, from 0 to GetNumberOfTextures()-1.
- Returns
- The unit, or -1 if the index is out of range.
◆ SetNumberOfTextureUnitsUsed()
|
pure virtual |
Set the number of texture units used.
- Parameters
-
numberOfUnits The number of units, from 0 to IEnums::NUM_TEXTURE_UNITS.
- Returns
- true if successful.
◆ GetNumberOfTextureUnitsUsed()
|
pure virtual |
Get the number of texture units used.
- Returns
- The number of units.
◆ SetNumberOfLightUnitsUsed()
Set the number of light units used.
- Parameters
-
numberOfUnits The number of units, from 0 to IEnums::NUM_LIGHT_UNITS.
- Returns
- true if successful.
◆ GetNumberOfLightUnitsUsed()
|
pure virtual |
Get the number of light units used.
- Returns
- The number of units.
◆ SetNumberOfBoneUnitsUsed()
Set the number of bone units used.
- Parameters
-
numberOfUnits The number of units, from 0 to IEnums::NUM_BONE_UNITS.
- Returns
- true if successful.
◆ GetNumberOfBoneUnitsUsed()
|
pure virtual |
Get the number of bone units used.
- Returns
- The number of units.
◆ GetLightTextureUnit()
Get the texture unit used together with a given light unit, for rendering projective lights.
- Parameters
-
lightUnit The light unit to check, from 0 to IEnums::NUM_LIGHT_UNITS-1.
- Returns
- The texture unit, or -1 if projective lights are not used.
◆ IsValid()
|
pure virtual |
Check if the program is valid.
If linking of the program object fails, this method returns false.
- Returns
- true if program linking succeeded during initialization.
◆ GetLinkerLog()
|
pure virtual |
Get the shader linker log.
If linking of the program object fails, this method returns the output provided by the OS/video API. Otherwise, an empty string is returned.
- Returns
- The linker log message.
The documentation for this interface was generated from the following file:
- murl_video_i_program.h