History

multi-mode renderVertices

ZappoMan committed 11 years ago

Commit ac1f7c91 parent 570607c5 files · +28 −39Browse files

Showing the changes to libraries/render-utils/src/GeometryCache.cpp (1 of 5 files). Show all

Unified · Split

libraries/render-utils/src/GeometryCache.cpp+16−26
@@ -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
600void GeometryCache::updateLinestrip(int id, const QVector<glm::vec2>& points) {600void 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_DEBUG605 #if 1// def WANT_DEBUG
607 qDebug() << "updateLinestrip()... RELEASING REGISTERED";606 qDebug() << "updateVertices()... RELEASING REGISTERED";
608 #endif // def WANT_DEBUG607 #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_DEBUG628 #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 #endif630 #endif
632}631}
633 632
634void GeometryCache::updateLinestrip(int id, const QVector<glm::vec3>& points) {633void 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_DEBUG638 #if 1// def WANT_DEBUG
641 qDebug() << "updateLinestrip()... RELEASING REGISTERED";639 qDebug() << "updateVertices()... RELEASING REGISTERED";
642 #endif // def WANT_DEBUG640 #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_DEBUG662 #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 #endif664 #endif
667}665}
668 666
669void GeometryCache::renderLinestrip(int id) {667void 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
681void 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_DEBUG1382 #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 #endif1388 #endif
1399 } else {1389 } else {
1400 details.buffer.bind();1390 details.buffer.bind();

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t