diff options
Diffstat (limited to 'indra/newview/llvoavatar.h')
-rw-r--r-- | indra/newview/llvoavatar.h | 39 |
1 files changed, 37 insertions, 2 deletions
diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index 1502c25b4d..0bb19c4420 100644 --- a/indra/newview/llvoavatar.h +++ b/indra/newview/llvoavatar.h @@ -305,8 +305,27 @@ public: static const U32 VISUAL_COMPLEXITY_UNKNOWN; void updateVisualComplexity(); - U32 getVisualComplexity() { return mVisualComplexity; }; // Numbers calculated here by rendering AV - F32 getAttachmentSurfaceArea() { return mAttachmentSurfaceArea; }; // estimated surface area of attachments + // get the GPU time in ms of rendering this avatar including all attachments + // returns -1 if this avatar has not been profiled using gPipeline.profileAvatar + F32 getGPURenderTime() { return mGPURenderTime; } + + // get the CPU time in ms of rendering this avatar including all attachments + // return -1 if this avatar has not been profiled using gPipeline.mProfileAvatar + F32 getCPURenderTime() { return mCPURenderTime; } + + // get the number of samples passed during the avatar profile + // return -1 if this avatar has not been profiled using gPipeline.mProfileAvatar + S32 getGPUSamplesPassed() { return mGPUSamplesPassed; } + + // get the number of triangles rendered during the avatar profile + // return -1 if this avatar has not been profiled using gPipeline.mProfileAvatar + S32 getGPUTrianglesRendered() { return mGPUTrianglesRendered; } + + // DEPRECATED -- obsolete avatar render cost + U32 getVisualComplexity() { return mVisualComplexity; }; + + // DEPRECATED -- obsolete surface area calculation + F32 getAttachmentSurfaceArea() { return mAttachmentSurfaceArea; }; U32 getReportedVisualComplexity() { return mReportedVisualComplexity; }; // Numbers as reported by the SL server void setReportedVisualComplexity(U32 value) { mReportedVisualComplexity = value; }; @@ -523,6 +542,7 @@ public: S32 mSpecialRenderMode; // special lighting private: + friend class LLPipeline; AvatarOverallAppearance mOverallAppearance; F32 mAttachmentSurfaceArea; //estimated surface area of attachments U32 mAttachmentVisibleTriangleCount; @@ -535,7 +555,22 @@ private: S32 mUpdatePeriod; S32 mNumInitFaces; //number of faces generated when creating the avatar drawable, does not inculde splitted faces due to long vertex buffer. + // profile results + + // GPU render time in ms + F32 mGPURenderTime = -1.f; + + // CPU render time in ms + F32 mCPURenderTime = -1.f; + + // number of samples passed according to GPU + S32 mGPUSamplesPassed = -1; + + // number of triangles rendered according to GPU + S32 mGPUTrianglesRendered = -1; + // the isTooComplex method uses these mutable values to avoid recalculating too frequently + // DEPRECATED -- obsolete avatar render cost values mutable U32 mVisualComplexity; mutable bool mVisualComplexityStale; U32 mReportedVisualComplexity; // from other viewers through the simulator |