Lines Matching refs:state
180 struct zink_gfx_pipeline_state *state = &ctx->gfx_pipeline_state;
183 if (state->element_state != &ctx->element_state->hw_state) {
226 state->element_state = &ctx->element_state->hw_state;
228 state->element_state = NULL;
365 /* TODO: these are multisampling-state, and should be set there instead of
416 struct zink_gfx_pipeline_state* state = &zink_context(pctx)->gfx_pipeline_state;
419 if (state->blend_state != cso) {
420 state->blend_state = cso;
421 state->blend_id = blend ? blend->hash : 0;
422 state->dirty = true;
424 blend && blend->dual_src_blend && state->blend_state->attachments[0].blendEnable;
479 ret.reference = 0; // not used: we'll use a dynamic state for this
528 struct zink_gfx_pipeline_state *state = &ctx->gfx_pipeline_state;
529 if (state->dyn_state1.depth_stencil_alpha_state != &ctx->dsa_state->hw_state) {
530 state->dyn_state1.depth_stencil_alpha_state = &ctx->dsa_state->hw_state;
531 state->dirty |= !zink_screen(pctx->screen)->info.have_EXT_extended_dynamic_state;
572 struct zink_rasterizer_state *state = CALLOC_STRUCT(zink_rasterizer_state);
573 if (!state)
576 state->base = *rs_state;
577 state->base.line_stipple_factor++;
578 state->hw_state.line_stipple_enable = rs_state->line_stipple_enable;
581 state->hw_state.depth_clip = rs_state->depth_clip_near;
582 state->hw_state.force_persample_interp = rs_state->force_persample_interp;
583 state->hw_state.pv_last = !rs_state->flatshade_first;
584 state->hw_state.clip_halfz = rs_state->clip_halfz;
589 state->hw_state.polygon_mode = rs_state->fill_front; // same values
590 state->cull_mode = rs_state->cull_face; // same bits
592 state->front_face = rs_state->front_ccw ?
596 state->hw_state.line_mode = VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT;
599 state->hw_state.line_mode = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT;
601 state->hw_state.line_mode = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT;
603 state->hw_state.line_mode = VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT;
607 state->base.line_stipple_factor = 1;
608 state->base.line_stipple_pattern = UINT16_MAX;
611 state->offset_point = rs_state->offset_point;
612 state->offset_line = rs_state->offset_line;
613 state->offset_tri = rs_state->offset_tri;
614 state->offset_units = rs_state->offset_units;
616 state->offset_units *= 2;
617 state->offset_clamp = rs_state->offset_clamp;
618 state->offset_scale = rs_state->offset_scale;
620 state->line_width = line_width(rs_state->line_width,
624 return state;
708 /* Initialize the vertex element state in state->element.
709 * Do it by creating a vertex element state object and copying it there.