History

put lodLevelOffset back

SamGondelman committed 9 years ago

Commit 971f1e71 parent 1930c8f1 file · +5 −5Browse files

Showing the changes to assignment-client/src/entities/EntityTreeSendThread.cpp (1 of 1 file). Show all

Unified · Split

assignment-client/src/entities/EntityTreeSendThread.cpp+5−5
@@ -84,7 +84,6 @@ void EntityTreeSendThread::preDistributionProcessing() { · 83 unmodified lines
84void EntityTreeSendThread::traverseTreeAndSendContents(SharedNodePointer node, OctreeQueryNode* nodeData,84void EntityTreeSendThread::traverseTreeAndSendContents(SharedNodePointer node, OctreeQueryNode* nodeData,
85 bool viewFrustumChanged, bool isFullScene) {85 bool viewFrustumChanged, bool isFullScene) {
86 // BEGIN EXPERIMENTAL DIFFERENTIAL TRAVERSAL86 // BEGIN EXPERIMENTAL DIFFERENTIAL TRAVERSAL
87 int32_t lodLevelOffset = nodeData->getBoundaryLevelAdjust() + (viewFrustumChanged ? LOW_RES_MOVING_ADJUST : NO_BOUNDARY_ADJUST);
88 if (nodeData->getUsesFrustum()) {87 if (nodeData->getUsesFrustum()) {
89 // DEBUG HACK: trigger traversal (Repeat) every so often88 // DEBUG HACK: trigger traversal (Repeat) every so often
90 const uint64_t TRAVERSE_AGAIN_PERIOD = 4 * USECS_PER_SECOND;89 const uint64_t TRAVERSE_AGAIN_PERIOD = 4 * USECS_PER_SECOND;
@@ -93,17 +92,18 @@ void EntityTreeSendThread::traverseTreeAndSendContents(SharedNodePointer node, O · 2 unmodified lines
93 ViewFrustum viewFrustum;92 ViewFrustum viewFrustum;
94 nodeData->copyCurrentViewFrustum(viewFrustum);93 nodeData->copyCurrentViewFrustum(viewFrustum);
95 EntityTreeElementPointer root = std::dynamic_pointer_cast<EntityTreeElement>(_myServer->getOctree()->getRoot());94 EntityTreeElementPointer root = std::dynamic_pointer_cast<EntityTreeElement>(_myServer->getOctree()->getRoot());
95 int32_t lodLevelOffset = nodeData->getBoundaryLevelAdjust() + (viewFrustumChanged ? LOW_RES_MOVING_ADJUST : NO_BOUNDARY_ADJUST);
96 startNewTraversal(viewFrustum, root, lodLevelOffset);96 startNewTraversal(viewFrustum, root, lodLevelOffset);
97 97
98 // If the previous traversal didn't finish, we'll need to resort the entities still in _sendQueue after calling traverse98 // If the previous traversal didn't finish, we'll need to resort the entities still in _sendQueue after calling traverse
99 if (!_sendQueue.empty()) {99 if (!_sendQueue.empty()) {
100 EntityPriorityQueue prevSendQueue;100 EntityPriorityQueue prevSendQueue;
101 _sendQueue.swap(prevSendQueue);101 _sendQueue.swap(prevSendQueue);
102 _entitiesToSend.clear();
102 // Re-add elements from previous traveral if they still need to be sent103 // Re-add elements from previous traveral if they still need to be sent
103 while (!prevSendQueue.empty()) {104 while (!prevSendQueue.empty()) {
104 EntityItemPointer entity = prevSendQueue.top().getEntity();105 EntityItemPointer entity = prevSendQueue.top().getEntity();
105 prevSendQueue.pop();106 prevSendQueue.pop();
106 _entitiesToSend.clear();
107 if (entity) {107 if (entity) {
108 bool success = false;108 bool success = false;
109 AACube cube = entity->getQueryAACube(success);109 AACube cube = entity->getQueryAACube(success);
@@ -113,9 +113,9 @@ void EntityTreeSendThread::traverseTreeAndSendContents(SharedNodePointer node, O · 3 unmodified lines
113 float priority = _conicalView.computePriority(cube);113 float priority = _conicalView.computePriority(cube);
114 if (priority != DO_NOT_SEND) {114 if (priority != DO_NOT_SEND) {
115 float renderAccuracy = calculateRenderAccuracy(_traversal.getCurrentView().getPosition(),115 float renderAccuracy = calculateRenderAccuracy(_traversal.getCurrentView().getPosition(),
116 cube,116 cube,
117 _traversal.getCurrentRootSizeScale(),117 _traversal.getCurrentRootSizeScale(),
118 lodLevelOffset);118 lodLevelOffset);
119 119
120 // Only send entities if they are large enough to see120 // Only send entities if they are large enough to see
121 if (renderAccuracy > 0.0f) {121 if (renderAccuracy > 0.0f) {

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