added some rendering stats to OctreeRenderer

This commit is contained in:
ZappoMan 2014-10-15 09:22:31 -07:00
parent 64fecba011
commit 770bc919bb
2 changed files with 42 additions and 1 deletions

View file

@ -162,12 +162,23 @@ bool OctreeRenderer::renderOperation(OctreeElement* element, void* extraData) {
}
void OctreeRenderer::render(RenderMode renderMode) {
RenderArgs args = { this, _viewFrustum, getSizeScale(), getBoundaryLevelAdjust(), renderMode, 0, 0, 0 };
RenderArgs args = { this, _viewFrustum, getSizeScale(), getBoundaryLevelAdjust(), renderMode, 0, 0, 0, 0, 0, 0, 0, 0 };
if (_tree) {
_tree->lockForRead();
_tree->recurseTreeWithOperation(renderOperation, &args);
_tree->unlock();
}
_meshesConsidered = args._meshesConsidered;
_meshesRendered = args._meshesRendered;
_meshesOutOfView = args._meshesOutOfView;
_elementsTouched = args._elementsTouched;
_itemsRendered = args._itemsRendered;
_itemsOutOfView = args._itemsOutOfView;
_trianglesRendered = args._trianglesRendered;
_quadsRendered = args._quadsRendered;
}
void OctreeRenderer::clear() {

View file

@ -63,10 +63,33 @@ public:
/// clears the tree
virtual void clear();
int getElementsTouched() const { return _elementsTouched; }
int getItemsRendered() const { return _itemsRendered; }
int getItemsOutOfView() const { return _itemsOutOfView; }
int getMeshesConsidered() const { return _meshesConsidered; }
int getMeshesRendered() const { return _meshesRendered; }
int getMeshesOutOfView() const { return _meshesOutOfView; }
int getTrianglesRendered() const { return _trianglesRendered; }
int getQuadsRendered() const { return _quadsRendered; }
protected:
Octree* _tree;
bool _managedTree;
ViewFrustum* _viewFrustum;
int _elementsTouched;
int _itemsRendered;
int _itemsOutOfView;
int _meshesConsidered;
int _meshesRendered;
int _meshesOutOfView;
int _trianglesRendered;
int _quadsRendered;
};
class RenderArgs {
@ -80,6 +103,13 @@ public:
int _elementsTouched;
int _itemsRendered;
int _itemsOutOfView;
int _meshesConsidered;
int _meshesRendered;
int _meshesOutOfView;
int _trianglesRendered;
int _quadsRendered;
};