Class GLShader<T>
public class GLShader<T> : Shader<T>, IEnumerable<EcsNode>, IResourceInfo, IArc, IDisposable, IInitializer, IGLShader, IEnumerable<KeyValuePair<GLShaderStages, string>>, IEnumerable, IInitializer<IGLShader>, IInitializer<GLShaderPromise>, IInitializer<GLShaderSource>, IInitializerBase where T : MaterialType Parameters
- T
- Inheritance
- 
      
      
      
      
      
      
      Shader<T>GLShader<T>
- Implements
- Derived
- Inherited Members
Properties
ActiveAttributesList
public IReadOnlyList<GLAttribute> ActiveAttributesList { get; }Property Value
ActiveAttributesMap
public IReadOnlyDictionary<string, GLAttribute> ActiveAttributesMap { get; }Property Value
ActiveUniformBlocksList
public IReadOnlyList<GLUniformBlock> ActiveUniformBlocksList { get; }Property Value
ActiveUniformBlocksMap
public IReadOnlyDictionary<string, GLUniformBlock> ActiveUniformBlocksMap { get; }Property Value
ActiveUniformsList
public IReadOnlyList<GLUniform> ActiveUniformsList { get; }Property Value
ActiveUniformsMap
public IReadOnlyDictionary<string, GLUniform> ActiveUniformsMap { get; }Property Value
Compute
public string? Compute { get; }Property Value
Fragment
public string? Fragment { get; }Property Value
Geometry
public string? Geometry { get; }Property Value
IsCompiled
public bool IsCompiled { get; }Property Value
IsCompute
public bool IsCompute { get; }Property Value
Program
public GLObject Program { get; }Property Value
Renderer
protected OpenGLRenderer Renderer { get; }Property Value
Stages
public GLShaderStages Stages { get; }Property Value
TesselationControl
public string? TesselationControl { get; }Property Value
TesselationEvaluation
public string? TesselationEvaluation { get; }Property Value
Vertex
public string? Vertex { get; }Property Value
Methods
AssertStatus()
public void AssertStatus()CheckShaderCompileStatus(int)
Check the compile status of a shader stage and log errors.
protected bool CheckShaderCompileStatus(int shader)Parameters
- shaderint
- The shader stage to check. 
Returns
- bool
- True if compiled successfully. 
CheckShaderLinkStatus()
Check the program link status of this shader.
protected bool CheckShaderLinkStatus()Returns
- bool
- True if the program linked successfully. 
CompileShader(bool)
public void CompileShader(bool force = false)Parameters
- forcebool
CreateComputeShader(out int)
protected bool CreateComputeShader(out int shader)Parameters
- shaderint
Returns
CreateShader(GLShaderStages, out int)
protected bool CreateShader(GLShaderStages stage, out int shader)Parameters
- stageGLShaderStages
- shaderint
Returns
Dispose(bool)
Internal function to handle dispose behavior.
protected override void Dispose(bool disposing)Parameters
- disposingbool
- True if disposing. 
GetAttributeLocation(string)
public int GetAttributeLocation(string name)Parameters
- namestring
Returns
GetFragDataLocation(string)
public int GetFragDataLocation(string name)Parameters
- namestring
Returns
GetUniformBlockLocation(string)
public int GetUniformBlockLocation(string name)Parameters
- namestring
Returns
GetUniformLocation(string)
public int GetUniformLocation(string name)Parameters
- namestring
Returns
Initialize(GLShaderPromise)
public void Initialize(GLShaderPromise promise)Parameters
- promiseGLShaderPromise
Initialize(GLShaderSource)
public void Initialize(GLShaderSource shader)Parameters
- shaderGLShaderSource
Initialize(IGLShader)
public void Initialize(IGLShader shader)Parameters
- shaderIGLShader
Operators
implicit operator int(GLShader<T>)
public static implicit operator int(GLShader<T> self)Parameters
- selfGLShader<T>