ReactOS 0.4.17-dev-934-g091855f
vkd3d_shader_varying_map_info Struct Reference

#include <vkd3d_shader.h>

Collaboration diagram for vkd3d_shader_varying_map_info:

Public Attributes

enum vkd3d_shader_structure_type type
 
const void * next
 
const struct vkd3d_shader_varying_map * varying_map
 
unsigned int varying_count
 

Detailed Description

A chained structure which describes how output varyings in this shader stage should be mapped to input varyings in the next stage.

This structure is optional. It should not be provided if there is no shader stage. However, depending on the input and output formats, this structure may be necessary in order to generate shaders which correctly match each other.

If this structure is absent, vkd3d-shader will map varyings from one stage to another based on their register index. For Direct3D shader model 3.0, such a default mapping will be incorrect unless the registers are allocated in the same order, and hence this field is necessary to correctly match inter-stage varyings. This mapping may also be necessary under other circumstances where the varying interface does not match exactly.

This structure is passed to vkd3d_shader_compile() and extends vkd3d_shader_compile_info.

This structure contains only input parameters.

Since
1.9

Definition at line 2381 of file vkd3d_shader.h.

Member Data Documentation

◆ next

const void* vkd3d_shader_varying_map_info::next

Optional pointer to a structure containing further parameters.

Definition at line 2386 of file vkd3d_shader.h.

◆ type

enum vkd3d_shader_structure_type vkd3d_shader_varying_map_info::type

Must be set to VKD3D_SHADER_STRUCTURE_TYPE_VARYING_MAP_INFO.

Definition at line 2384 of file vkd3d_shader.h.

◆ varying_count

unsigned int vkd3d_shader_varying_map_info::varying_count

The number of registers provided in varying_map.

Definition at line 2401 of file vkd3d_shader.h.

Referenced by find_varying_map(), and vsir_program_remap_output_signature().

◆ varying_map

const struct vkd3d_shader_varying_map* vkd3d_shader_varying_map_info::varying_map

A mapping of output varyings in this shader stage to input varyings in the next shader stage.

This mapping should include exactly one element for each varying consumed by the next shader stage. If this shader stage outputs a varying that is not consumed by the next shader stage, that varying should be absent from this array.

This mapping may be constructed by vkd3d_shader_build_varying_map().

Definition at line 2399 of file vkd3d_shader.h.

Referenced by find_varying_map(), and vsir_program_remap_output_signature().


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