Commit a5a1b714e92028e6b8a9036c44e2bc015a8c7e90
Fix interleaved mode in QGLVertexBuffer.
| |   |
| 733 | 733 | if (count <= 0) |
| 734 | 734 | continue; |
| 735 | 735 | count = qMin(count, sectionSize); |
| int components = attr->elementSize() / sizeof(float); |
| 736 | 737 | vertexBufferInterleave |
| (dst + attrPosn, stride, attr->value.floatData(), |
| attr->elementSize() / sizeof(float), count); |
| (dst + attrPosn, stride, |
| attr->value.floatData() + vertex * components, |
| components, count); |
| 739 | 741 | attrPosn += attr->elementSize() / sizeof(float); |
| 740 | 742 | } |
| 741 | 743 | size = sectionSize * stride; |
| |   |
| 813 | 813 | if (!d->vertexBuffer) |
| 814 | 814 | { |
| 815 | 815 | d->vertexBuffer = new QGLVertexBuffer; |
| d->vertexBuffer->setPackingHint(QGLVertexBuffer::Append); |
| 817 | 816 | const quint32 mask = 0x01; |
| 818 | 817 | quint32 fields = d->fields; |
| 819 | 818 | for (int field = 0; fields; ++field, fields >>= 1) |