ReShade
A generic post-processing injector for games and video software.
Public Attributes | List of all members
reshade::api::descriptor_range Struct Reference

Describes a range of descriptors of a descriptor table in a pipeline layout. More...

#include <reshade_api_pipeline.hpp>

Public Attributes

uint32_t binding
 OpenGL/Vulkan binding index (layout(binding=X) in GLSL). In D3D this is equivalent to the offset (in descriptors) of this range in the descriptor table (since each binding can only have an array size of 1). More...
 
uint32_t dx_register_index
 D3D9/D3D10/D3D11/D3D12 shader register index (register(xX) in HLSL). More...
 
uint32_t dx_register_space
 D3D12 register space (register(..., spaceX) in HLSL). More...
 
uint32_t count
 Number of descriptors in this range. Set to -1 (UINT32_MAX) to indicate an unbounded range. More...
 
shader_stage visibility
 Shader pipeline stages that can make use of the descriptors in this range. More...
 
uint32_t array_size
 Size of the array in case this is an array binding. Only meaningful in Vulkan, in OpenGL and other APIs this has to be 1 (since each array element is a separate binding there). If this is less than the total number of descriptors specified in count, then the remaining descriptors are assigned a separate binding (with an array size of 1), with the binding index incrementing with each additional descriptor. More...
 
descriptor_type type
 Type of the descriptors in this range. More...
 

Detailed Description

Describes a range of descriptors of a descriptor table in a pipeline layout.

Member Data Documentation

◆ array_size

uint32_t reshade::api::descriptor_range::array_size

Size of the array in case this is an array binding. Only meaningful in Vulkan, in OpenGL and other APIs this has to be 1 (since each array element is a separate binding there). If this is less than the total number of descriptors specified in count, then the remaining descriptors are assigned a separate binding (with an array size of 1), with the binding index incrementing with each additional descriptor.

◆ binding

uint32_t reshade::api::descriptor_range::binding

OpenGL/Vulkan binding index (layout(binding=X) in GLSL). In D3D this is equivalent to the offset (in descriptors) of this range in the descriptor table (since each binding can only have an array size of 1).

◆ count

uint32_t reshade::api::descriptor_range::count

Number of descriptors in this range. Set to -1 (UINT32_MAX) to indicate an unbounded range.

◆ dx_register_index

uint32_t reshade::api::descriptor_range::dx_register_index

D3D9/D3D10/D3D11/D3D12 shader register index (register(xX) in HLSL).

◆ dx_register_space

uint32_t reshade::api::descriptor_range::dx_register_space

D3D12 register space (register(..., spaceX) in HLSL).

◆ type

descriptor_type reshade::api::descriptor_range::type

Type of the descriptors in this range.

◆ visibility

shader_stage reshade::api::descriptor_range::visibility

Shader pipeline stages that can make use of the descriptors in this range.


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