if (!(nvc0->vbo_user & (1 << b)))
continue;
- if (!vb->stride) {
+ if (nvc0->constant_vbos & (1 << b)) {
nvc0_set_constant_vertex_attrib(nvc0, i);
continue;
}
vb = &nvc0->vtxbuf[b];
if (!vb->buffer) {
- if (vb->stride) {
+ if (!(nvc0->constant_vbos & (1 << b))) {
if (ve->pipe.instance_divisor) {
BEGIN_NVC0(push, NVC0_3D(VERTEX_ARRAY_DIVISOR(i)), 1);
PUSH_DATA (push, ve->pipe.instance_divisor);
uint32_t offset, limit;
if (mask & (1 << b)) {
- if (vb->stride) {
+ if (!(nvc0->constant_vbos & (1 << b))) {
BEGIN_NVC0(push, NVC0_3D(VERTEX_ARRAY_FETCH(b)), 1);
PUSH_DATA (push, NVC0_3D_VERTEX_ARRAY_FETCH_ENABLE | vb->stride);
}