LLGL 0.05 Beta
Loading...
Searching...
No Matches
LLGL::ShaderReflection Struct Reference

Shader reflection structure. More...

#include <ShaderReflection.h>

Public Attributes

std::vector< ShaderResourceReflection > resources
 List of all shader reflection resource views.
std::vector< UniformDescriptor > uniforms
 List of all uniforms (a.k.a. shader constants).
VertexShaderAttributes vertex
 Reflection data that is specifically for the vertex shader.
FragmentShaderAttributes fragment
 Reflection data that is specifically for the fragment shader.
ComputeShaderAttributes compute
 Reflection data that is specifically for the compute shader.

Detailed Description

Shader reflection structure.

Remarks
Contains all information of resources and attributes that can be queried from a shader program. This is not a "descriptor", because it is only used as output from an interface rather than a description to create something.
See also
Shader::Reflect

Member Data Documentation

◆ compute

ComputeShaderAttributes LLGL::ShaderReflection::compute

Reflection data that is specifically for the compute shader.

◆ fragment

FragmentShaderAttributes LLGL::ShaderReflection::fragment

Reflection data that is specifically for the fragment shader.

◆ resources

std::vector<ShaderResourceReflection> LLGL::ShaderReflection::resources

List of all shader reflection resource views.

◆ uniforms

std::vector<UniformDescriptor> LLGL::ShaderReflection::uniforms

List of all uniforms (a.k.a. shader constants).

Note
Only supported with: OpenGL, Vulkan.
Todo
Add support to D3D11 and D3D12 for global constants.

◆ vertex

VertexShaderAttributes LLGL::ShaderReflection::vertex

Reflection data that is specifically for the vertex shader.

Remarks
The shader reflection only considers the following members of the VertexAttribute structure, for both inputAttribs and outputAttribs in VertexShaderAttributes:
  • name
  • format
  • location
  • semanticIndex
  • systemValue

The documentation for this struct was generated from the following file: