Avatar Rendering Complexity

From Second Life Wiki
Revision as of 12:40, 2 September 2015 by Oz Linden (talk | contribs)
Jump to navigation Jump to search


KBnote.png Note: The features described here are currently only fully implemented in the QuickGraphics Project Viewer. See Current Limitations below. This page will be replaced by a Knowledge Base article when this feature is fully released.

Avatar Rendering Complexity is a measure of how difficult it is to draw an avatar. It is affected by your avatar shape and what you're wearing. Since drawing avatars can be one of the most expensive parts of rendering a Second Life scene, being aware of your own complexity and that of those around you can be an important part of managing the performance of your viewer and how you affect the performance of others.

Complexity is expressed as a number that can range from just a few hundred to several hundred thousand; avatars with complexities at the upper end of the range can cause severe viewer performance problems, especially for systems with lower end graphics subsystems.

How Do I Prevent Avatar-Induced Viewer Lag, and Why Are Some Avatars Solid Colors?

If an avatar in your view is too complex for your system to draw efficiently, it may cause your viewer performance to degrade severely. To help manage this problem, there is a preference setting 'Max Avatar Complexity' (Preferences > Graphics > Advanced). The default value of that preference depends on how powerful your graphics subsystem is. Any avatar whose complexity is above the value of that setting is drawn as a solid color silhouette, greatly reducing their impact on your viewer performance.

There are some other factors that can cause an avatar to be drawn as a solid color:

  1. total attachment surface area
  2. total attachment byte size

these other factors can be seen - see How Do I Examine Complexities?, but most avatars will be well under these limits.

How do I find out the Complexity of my Avatar?

Whenever you change what your avatar is wearing, a small notice will appear in the upper right of your screen to tell you the new complexity value.

How do I find out if the Complexity of my Avatar is too high?

If some of the people around you are rendering you as solid color outlines, their viewer will report that to the simulator. The simulator will in turn tell your viewer to display a message to let you know; it will appear in a notice along with the complexity of your avatar, and will be updated if it changes significantly.

How Do I Examine Complexities?

Activate Advanced > Perfomance Tools > Show avatar complexity information

This displays four values as floating text above each avatar:

  1. The complexity
  2. The 'rank' (how close the avatar is to your camera; the closest is 1, next closest is 2...)
  3. The attachment surface area in square meters
  4. The attachment size in kilobytes

Each value is color coded from green to red to indicate how it relates to your limits (values well under your limit are green, values at or over your limit are red and may be in bold type). Values shown in grey are ones for which you have no limit (your limit is set to zero).

Current Limitations

  1. Only the project viewer displays the notices about avatar complexity
  2. The project viewer provides an advanced preference to let you set the limit beyond which your viewer will not draw other avatars. Some earlier viewers had debug settings with similar functionality, but the feature has changed enough since those experimental versions that those older settings are no longer used.
  3. The project viewer displays messages to tell you about how many of the people around you may be rendering you. These messages are based on information from the simulator that ultimately comes from other viewers. At present, only the project viewer is sending that information to the simulator, so the messages may misrepresent how often your avatar is being drawn. The accuracy of these messages will improve as this technology is incorporated into more viewers.