Avatar Complexity and Graphics Presets in Second Life

Avatar Complexity provides users with the adbility to
Avatar Complexity is a means to help people who may suffer from performance issues in crowd areas

On Wednesday, May 18th, Linden Lab promoted the long-awaited Quick Graphics viewer to de facto release status. This viewer includes two important new features:

  • The updated Avatar Complexity settings
  • The ability to create, save and load different groups of graphics settings quickly and easily.

Avatar Complexity

As avatars can often be the single biggest impact on the viewer in terms of rendering, particularly in crowded places, so  Avatar Complexity adds a new slider to the viewer which can be used to set a level above which avatars requiring a lot of processing will appear as a solid colour – the casual term to refer to them being “Jelly Dolls” – greatly reducing the load placed on a system compared to having to render them in detail, so improving performance.

The idea is that you can adjust the setting according to circumstance, so that when in a crowded area with lots of avatars, you can dial down the Avatar Complexity setting, found in Preferences > Graphics (and in the Advanced Settings floater), with the result that more of the avatars around you are rendered as solid colours, reducing the load on your graphics card and system, thus improving performance. Then, in quieter areas, the setting can be dialled back up, allowing more avatars to fully render in your view.

Note: this only applies to other avatars in your world view: your own avatar will always fully render in your view.

The Avatar Maximum Complexity slider sets a threshold on avatar rendering by your viewer. Any avatars in your view exceeding this value will be rendered as a
The Avatar Maximum Complexity slider sets a threshold on avatar rendering by your viewer. Any avatars in your view exceeding this value will be rendered as a “Jelly Doll”, sans attachments

If you have a good system with a high-end graphics car, you can set the value on the slider quite high and thus ensure all avatars render fully for you wherever you are.

Note: You can sett the Avatar Maximum Complexity to “No Limit”. However, this is not entirely recommended. some irritants in Second Life still use worn graphics crashers to overload GPUs and crash the viewer. If you set Avatar Maximum complexity to “No Limit”, then such tools, should you ever encounter an irritant using one, will still be effective; so it’s better to set a reasonable high value, leaving your viewer with a cut-off point which should defeat their efforts in crashing you.

There are a few other points to note with Avatar Complexity:

  • You can opt to always render or to not render avatars around you, regardless of your Avatar Maximum Complexity setting by right-clicking on them and selecting your desired action from the context menu
    You can opt to always render or to not render avatars around you, regardless of your Avatar Maximum Complexity setting by right-clicking on them and selecting your desired action from the context menu

    To help you understand how complex you own avatar is, every time you change your appearance, each time you change the appearance of your avatar, a small notice with your new complexity value will appear in the upper right of your display for a few seconds

  • The complexity value of your avatar is transmitted to each simulator as you travel around Second Life. In return, you’ll get a brief notice in the upper right of your screen telling you approximately how many of those around you are (or are not) rendering you because of your complexity
  • If you have a friend or friend you wish to see fully rendered no matter how low you dial Avatar Maximum Complexity (while out at a club, for example, where it may be beneficial to set a lower complexity threshold), you can right-click on those individuals and select “Render Fully” from the context menu
  • Similarly, and if you prefer, you can selectivity render avatars in your view as grey imposters, by right-clicking on them and selecting “Do Not Render” from the context menu.

Note: Both “Render Fully” and “Do Not Render” will only apply during your current log-in session; the options are not persistent between re-logs.

To help people understand Avatar Complexity, the Lab has produced the following:

  • A blog post to accompany the promotion of the Quick Graphics viewer to release status
  • An Avatar Complexity Knowledge Base article
  • A video tuTORial, which I’ve embedded below.


Graphic Presets

Graphics Presets allows you to save and restore different sets of graphics settings within the viewer. The idea being that users can then switch between these different pre-sets according to circumstance to help with viewer performance.

So, for example, one pre-set might have all the performance hitting items – shadows, projectors, etc., – turned on / up for times when the overall quality and depth of detail in a scene is important (such as when taking photos). Another might have these more taxing capabilities turned down / off to ease the processing load on a computer during more general activities. A third might be established for “in door” uses, with things like draw distance and the level of detail for external items (the sky, trees, terrain, reflections, etc.) all turned down, again easing the processing load.

The capability started as a contribution from open-source developer Jonathan Yapp, and is easy to use. Simply use the Graphics Preferences options (main tab in Preferences and the Advanced Setting panel) to set your desired pre-sets for a given situation (including the Avatar Complexity setting you might wish to use), then click on the Save Settings As A Preset… button on Graphics Preferences, enter a name for the set, and click Save. You can do this for as many sets as you feel the need to set-up.

You can set-up as many groups of different graphics presets as you like
You can set-up as many groups of different graphics pre-sets as you like

Once created and saved, a pre-set can then be loaded at any time in one of two ways: via the Load Preset… button within Preferences > Graphics, as shown in the image above. However, a much quicker way of loading / changing pre-sets is to use the Pre-set icon in the top right-hand corner of the viewer window.

The new Graphics Presets icon profiles a quick menus of applying previously saved graphics presets and accessing Graphics Preferences
The new Graphics Presets icon profiles a quick menus of applying previously saved graphics presets and accessing Graphics Preferences

When the mouse is hovered over this icon, a list of all saved pre-sets is displayed, a tick appearing alongside the one currently being used. Clicking on any other pre-set will immediately apply it.

In addition, this panel also has a button which will open the viewer’s graphics settings in Preferences.

To delete a pre-set you have created, go to Graphics Preferences, click on the Delete Preset… button and select the pre-set you wish to delete from the drop-down list and click Delete.

In addition, as noted in Oz Linden’s blog post, linked to above, the Advance section of Graphics Preferences has a newer, two-column format designed to make it easier to locate and set options. However, these are now in a separate floater, opened by clicking the Advanced Settings button in the Graphics Preferences tab, which is a bit of a nuisance, given the extra screen real estate it requires.

The updated Advanced Graphics floater
The updated Advanced Graphics floater

Avatar Complexity has been a long time coming, and many have been eagerly awaiting its arrival. There may be some upset in some quarters as the capability spreads to more TPVs, but as the Lab’s blog post states:

Our hope is that over time this will encourage people to consider the complexity they create – after all, it’s not much good having the most elaborate and amazing avatar in Second Life if no one else is seeing it.

Which is a fair point.

11 thoughts on “Avatar Complexity and Graphics Presets in Second Life

  1. Reblogged this on Magick Thoughts of Second Life and commented:
    WOW!!! I am going to try this out. I love going into the innards of the viewer. It seems easy enough too. What a great new feature! — AmandaMagick


  2. I think this sucks in a game that has showing off as its core mechanic.There should be a policy of policing the complexity at upload.


    1. Sadly, it’s always been that way: no penalties for worn items. Hence the tendency towards the over-use of multiple 1024×1024 texture even on tiny elements of clothing and attachments. Avatar Complexity is potentially a good way of getting people to think about things without actually being draconian in the approach.


  3. Its about time this became the default viewer. It will help people avoid lag a LOT. And inform people about what they are doing that is causing lag.

    I’ve blogged about this several times. While it is not yet in Firestorm, you CAN set your firestorm up to use it:

    And I’ve also got a basic explanation of it in my getting started in SL guide:

    Now that this is the regular viewer, I can update that reflect that (as opposed to telling people to download a beta viewer).

    This feature is a way for people to reduce their own lag, by not having to load those around them that are causing their graphics cards to suffer. It is not about “LL needs to update the graphics” or “LL is blocking my precious toys”. It is about the fact that most of us do NOT have a $2000 GPU embed in a $3000 gaming rig…

    These settings are to protect your graphics card from frying because the person next to you is wearing flexi hair… This is long overdue.


    1. Yup… I’ve covered the use of RENDERAUTOMUTEFUNCTIONS and RENDERAUTOMUTERENDERWEIGHTLIMIT numerous times myself, since November 2014. Where Firestorm is concerned, and as reported, The Avatar Complexity code is being merged and tested, although there are other issues also to be resolved before the next release.


    1. Yes, the Avatar Complexity calculation utilises a modified version of ARW. Unfortunately, the nature of the beast means it is isn’t a “one size fits all” calculation, as it does have a reliance on the hardware running the viewer as well; thus there are variances. That said, the Lab will be endeavouring to tweak and refine it as far as they can over time.

      There are also a number of issues emerging with it as well, which may well be addressed, and the issue you note here would appear to be akin to BUG-37631 “Rigged mesh with partially transparent texture on it have 4 times higher complexity”.

      For a more detailed look at some of the limitations of the calculation and on the reported bugs, please see the section “Avatar Complexity” in this project update.


Comments are closed.