An incorrect formula was used to compute bound_samplers_mask_vs.
Since s is above always 8 for vs and the variable is encoded on 8 bits,
it was always 0.
This resulted in commiting the samplers every call when
there was at least one texture read in the vs shader.
Signed-off-by: Axel Davy <davyaxel0@gmail.com>
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de>
context->changed.sampler[s] = ~0;
}
- context->bound_samplers_mask_vs |= (1 << s);
+ context->bound_samplers_mask_vs |= (1 << i);
}
cso_set_sampler_views(context->cso, PIPE_SHADER_VERTEX, num_textures, view);