- if mesh.use_strips:
- for s in mesh.vertex_sequence:
- st = Statement("batch", Token("TRIANGLE_STRIP"))
- for i in range(0, len(s), 32):
- st.sub.append(Statement("indices", *(v.index for v in s[i:i+32])))
- statements.append(st)
- else:
- st = Statement("batch", Token('TRIANGLES'))
- for f in mesh.faces:
- st.sub.append(Statement("indices", *(v.index for v in f.vertices)))
- statements.append(st)
-
- if mesh.lines:
- st = Statement("batch", Token('LINES'))
- for l in mesh.lines:
- st.sub.append(Statement("indices", *(v.index for v in l.vertices)))
+ for b in mesh.batches:
+ st = Statement("batch", Token(b.primitive_type))
+ for i in range(0, len(b.vertices), 32):
+ st.sub.append(Statement("indices", *(v.index for v in b.vertices[i:i+32])))