nicegraf
ngf_graphics_pipeline_info Struct Reference

Data Fields

ngf_shader_stage shader_stages [5]
 
uint32_t nshader_stages
 
const ngf_rasterization_inforasterization
 
const ngf_multisample_infomultisample
 
const ngf_depth_stencil_infodepth_stencil
 
const ngf_vertex_input_infoinput_info
 
const ngf_input_assembly_infoinput_assembly_info
 
const ngf_specialization_infospec_info
 
const ngf_attachment_descriptionscompatible_rt_attachment_descs
 
const ngf_blend_infocolor_attachment_blend_states
 
float blend_consts [4]
 
const char * debug_name
 

Detailed Description

Contains all information necessary for creating a graphics pipeline object.

Field Documentation

◆ blend_consts

◆ color_attachment_blend_states

const ngf_blend_info* ngf_graphics_pipeline_info::color_attachment_blend_states

A pointer to an array of ngf_blend_info structures specifying the parameters for blending. The array must contain exactly the same number of elements as there are color attachments specified in ngf_graphics_pipeline_info::compatible_rt_attachment_descs. If set to NULL, all color attachments will have blending disabled and fully enabled color write mask.

◆ compatible_rt_attachment_descs

const ngf_attachment_descriptions* ngf_graphics_pipeline_info::compatible_rt_attachment_descs

Describes which render targets compatible with this pipeline. A compatible render target must have the same number of attachments as specified in the list, with matching type, format and sample count.

◆ depth_stencil

const ngf_depth_stencil_info* ngf_graphics_pipeline_info::depth_stencil

Specifies the parameters for depth and stencil testing.

◆ input_assembly_info

const ngf_input_assembly_info* ngf_graphics_pipeline_info::input_assembly_info

Specifies how primitives are assembled from vertices.

◆ input_info

const ngf_vertex_input_info* ngf_graphics_pipeline_info::input_info

Specifies vertex attributes and vertex attribute buffer bindings.

◆ multisample

const ngf_multisample_info* ngf_graphics_pipeline_info::multisample

Specifies the parameters for multisampling.

◆ nshader_stages

uint32_t ngf_graphics_pipeline_info::nshader_stages

The number of programmable stages involved.

◆ rasterization

const ngf_rasterization_info* ngf_graphics_pipeline_info::rasterization

Specifies the parameters for the rasterizer.

◆ shader_stages

ngf_shader_stage ngf_graphics_pipeline_info::shader_stages[5]

The programmable stages for this pipeline.

◆ spec_info

const ngf_specialization_info* ngf_graphics_pipeline_info::spec_info

Specifies the values for specialization constants (if any) used by the programmable stages.