mirror of
https://github.com/overte-org/overte.git
synced 2025-08-09 19:52:26 +02:00
added some rendering stats to OctreeRenderer
This commit is contained in:
parent
64fecba011
commit
770bc919bb
2 changed files with 42 additions and 1 deletions
|
@ -162,12 +162,23 @@ bool OctreeRenderer::renderOperation(OctreeElement* element, void* extraData) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void OctreeRenderer::render(RenderMode renderMode) {
|
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) {
|
if (_tree) {
|
||||||
_tree->lockForRead();
|
_tree->lockForRead();
|
||||||
_tree->recurseTreeWithOperation(renderOperation, &args);
|
_tree->recurseTreeWithOperation(renderOperation, &args);
|
||||||
_tree->unlock();
|
_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() {
|
void OctreeRenderer::clear() {
|
||||||
|
|
|
@ -63,10 +63,33 @@ public:
|
||||||
|
|
||||||
/// clears the tree
|
/// clears the tree
|
||||||
virtual void clear();
|
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:
|
protected:
|
||||||
Octree* _tree;
|
Octree* _tree;
|
||||||
bool _managedTree;
|
bool _managedTree;
|
||||||
ViewFrustum* _viewFrustum;
|
ViewFrustum* _viewFrustum;
|
||||||
|
|
||||||
|
int _elementsTouched;
|
||||||
|
int _itemsRendered;
|
||||||
|
int _itemsOutOfView;
|
||||||
|
|
||||||
|
int _meshesConsidered;
|
||||||
|
int _meshesRendered;
|
||||||
|
int _meshesOutOfView;
|
||||||
|
|
||||||
|
int _trianglesRendered;
|
||||||
|
int _quadsRendered;
|
||||||
};
|
};
|
||||||
|
|
||||||
class RenderArgs {
|
class RenderArgs {
|
||||||
|
@ -80,6 +103,13 @@ public:
|
||||||
int _elementsTouched;
|
int _elementsTouched;
|
||||||
int _itemsRendered;
|
int _itemsRendered;
|
||||||
int _itemsOutOfView;
|
int _itemsOutOfView;
|
||||||
|
|
||||||
|
int _meshesConsidered;
|
||||||
|
int _meshesRendered;
|
||||||
|
int _meshesOutOfView;
|
||||||
|
|
||||||
|
int _trianglesRendered;
|
||||||
|
int _quadsRendered;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue