}
// draw->index_size > 0
- if (1) {
+ if (draw->index_size > 0) {
struct iris_resource *res = (struct iris_resource *)draw->index.resource;
assert(!draw->has_user_indices);
// XXX: gah, addresses :( need two different combine address funcs
// ib.BufferStartingAddress = res->bo;
}
+ }
- assert(!draw->indirect); // XXX: indirect support
-
- iris_emit_cmd(batch, GENX(3DPRIMITIVE), prim) {
- prim.StartInstanceLocation = draw->start_instance;
- prim.InstanceCount = draw->instance_count;
+ assert(!draw->indirect); // XXX: indirect support
- // XXX: this is probably bonkers.
- prim.StartVertexLocation = draw->start;
+ iris_emit_cmd(batch, GENX(3DPRIMITIVE), prim) {
+ prim.StartInstanceLocation = draw->start_instance;
+ prim.InstanceCount = draw->instance_count;
- if (draw->index_size) {
- prim.BaseVertexLocation += draw->index_bias;
- } else {
- prim.StartVertexLocation += draw->index_bias;
- }
+ // XXX: this is probably bonkers.
+ prim.StartVertexLocation = draw->start;
- //prim.BaseVertexLocation = ...;
+ if (draw->index_size) {
+ prim.BaseVertexLocation += draw->index_bias;
+ } else {
+ prim.StartVertexLocation += draw->index_bias;
}
+
+ //prim.BaseVertexLocation = ...;
}
#if 0
l3 configuration