Showing the changes to libraries/render-utils/src/GeometryCache.cpp (1 of 5 files). Show all
Unified · Split
| @@ -597,14 +597,13 @@ void GeometryCache::renderGrid(int x, int y, int width, int height, int rows, in · 596 unmodified lines | |||
| 597 | buffer.release(); | 597 | buffer.release(); |
| 598 | } | 598 | } |
| 599 | 599 | ||
| 600 | void GeometryCache::updateLinestrip(int id, const QVector<glm::vec2>& points) { | 600 | void GeometryCache::updateVertices(int id, const QVector<glm::vec2>& points) { |
| 601 | BufferDetails& details = _registeredLinestrips[id]; | 601 | BufferDetails& details = _registeredVertices[id]; |
| 602 | 602 | ||
| 603 | // if this is a registered , and we have buffers, then check to see if the geometry changed and rebuild if needed | ||
| 604 | if (details.buffer.isCreated()) { | 603 | if (details.buffer.isCreated()) { |
| 605 | details.buffer.destroy(); | 604 | details.buffer.destroy(); |
| 606 | #if 1// def WANT_DEBUG | 605 | #if 1// def WANT_DEBUG |
| 607 | qDebug() << "updateLinestrip()... RELEASING REGISTERED"; | 606 | qDebug() << "updateVertices()... RELEASING REGISTERED"; |
| 608 | #endif // def WANT_DEBUG | 607 | #endif // def WANT_DEBUG |
| 609 | } | 608 | } |
| 610 | 609 | ||
| @@ -627,18 +626,17 @@ void GeometryCache::updateLinestrip(int id, const QVector<glm::vec2>& points) { · 16 unmodified lines | |||
| 627 | delete[] vertexData; | 626 | delete[] vertexData; |
| 628 | 627 | ||
| 629 | #if 1 //def WANT_DEBUG | 628 | #if 1 //def WANT_DEBUG |
| 630 | qDebug() << "new registered linestrip buffer made -- _registeredLinestrips.size():" << _registeredLinestrips.size(); | 629 | qDebug() << "new registered vertices buffer made -- _registeredVertices.size():" << _registeredVertices.size(); |
| 631 | #endif | 630 | #endif |
| 632 | } | 631 | } |
| 633 | 632 | ||
| 634 | void GeometryCache::updateLinestrip(int id, const QVector<glm::vec3>& points) { | 633 | void GeometryCache::updateVertices(int id, const QVector<glm::vec3>& points) { |
| 635 | BufferDetails& details = _registeredLinestrips[id]; | 634 | BufferDetails& details = _registeredVertices[id]; |
| 636 | 635 | ||
| 637 | // if this is a registered , and we have buffers, then check to see if the geometry changed and rebuild if needed | ||
| 638 | if (details.buffer.isCreated()) { | 636 | if (details.buffer.isCreated()) { |
| 639 | details.buffer.destroy(); | 637 | details.buffer.destroy(); |
| 640 | #if 1// def WANT_DEBUG | 638 | #if 1// def WANT_DEBUG |
| 641 | qDebug() << "updateLinestrip()... RELEASING REGISTERED"; | 639 | qDebug() << "updateVertices()... RELEASING REGISTERED"; |
| 642 | #endif // def WANT_DEBUG | 640 | #endif // def WANT_DEBUG |
| 643 | } | 641 | } |
| 644 | 642 | ||
| @@ -662,29 +660,17 @@ void GeometryCache::updateLinestrip(int id, const QVector<glm::vec3>& points) { · 17 unmodified lines | |||
| 662 | delete[] vertexData; | 660 | delete[] vertexData; |
| 663 | 661 | ||
| 664 | #if 1 //def WANT_DEBUG | 662 | #if 1 //def WANT_DEBUG |
| 665 | qDebug() << "new registered linestrip buffer made -- _registeredLinestrips.size():" << _registeredLinestrips.size(); | 663 | qDebug() << "new registered linestrip buffer made -- _registeredVertices.size():" << _registeredVertices.size(); |
| 666 | #endif | 664 | #endif |
| 667 | } | 665 | } |
| 668 | 666 | ||
| 669 | void GeometryCache::renderLinestrip(int id) { | 667 | void GeometryCache::renderVertices(GLenum mode, int id) { |
| 670 | BufferDetails& details = _registeredLinestrips[id]; | 668 | BufferDetails& details = _registeredVertices[id]; |
| 671 | if (details.buffer.isCreated()) { | 669 | if (details.buffer.isCreated()) { |
| 672 | details.buffer.bind(); | 670 | details.buffer.bind(); |
| 673 | glEnableClientState(GL_VERTEX_ARRAY); | 671 | glEnableClientState(GL_VERTEX_ARRAY); |
| 674 | glVertexPointer(details.vertexSize, GL_FLOAT, 0, 0); | 672 | glVertexPointer(details.vertexSize, GL_FLOAT, 0, 0); |
| 675 | glDrawArrays(GL_LINE_STRIP, 0, details.vertices); | 673 | glDrawArrays(mode, 0, details.vertices); |
| 676 | glDisableClientState(GL_VERTEX_ARRAY); | ||
| 677 | details.buffer.release(); | ||
| 678 | } | ||
| 679 | } | ||
| 680 | |||
| 681 | void GeometryCache::renderLines(int id) { | ||
| 682 | BufferDetails& details = _registeredLinestrips[id]; | ||
| 683 | if (details.buffer.isCreated()) { | ||
| 684 | details.buffer.bind(); | ||
| 685 | glEnableClientState(GL_VERTEX_ARRAY); | ||
| 686 | glVertexPointer(details.vertexSize, GL_FLOAT, 0, 0); | ||
| 687 | glDrawArrays(GL_LINES, 0, details.vertices); | ||
| 688 | glDisableClientState(GL_VERTEX_ARRAY); | 674 | glDisableClientState(GL_VERTEX_ARRAY); |
| 689 | details.buffer.release(); | 675 | details.buffer.release(); |
| 690 | } | 676 | } |
| @@ -1394,7 +1380,11 @@ void GeometryCache::renderDashedLine(const glm::vec3& start, const glm::vec3& en · 703 unmodified lines | |||
| 1394 | delete[] vertexData; | 1380 | delete[] vertexData; |
| 1395 | 1381 | ||
| 1396 | #if 1 //def WANT_DEBUG | 1382 | #if 1 //def WANT_DEBUG |
| 1397 | qDebug() << "new registered linestrip buffer made -- _registeredLinestrips.size():" << _registeredLinestrips.size(); | 1383 | if (registered) { |
| 1384 | qDebug() << "new registered dashed line buffer made -- _registeredVertices:" << _registeredDashedLines.size(); | ||
| 1385 | } else { | ||
| 1386 | qDebug() << "new dashed lines buffer made -- _dashedLines:" << _dashedLines.size(); | ||
| 1387 | } | ||
| 1398 | #endif | 1388 | #endif |
| 1399 | } else { | 1389 | } else { |
| 1400 | details.buffer.bind(); | 1390 | details.buffer.bind(); |