Early looks: Avatar Complexity and Graphics Presets

secondlifeTwo new options which will be appearing in the official viewer in the near future, and which have been mentioned in this blog a number of times over the past few months are Avatar Complexity and the ability to create, save and restore graphics presets. Both are intended to provide options by which users can better tune the viewer and its settings to suit their needs and circumstances.

I’ve had the opportunity to look at both in a development viewer from the Lab, and what follows is an overview of how things may appear when both capabilities are released for general use. However, please keep in mind that things are sill very much a work-in-progress at the moment and aspects of either / both may well change between now and any functionality appearing in any public version of the viewer.

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 most popular term used to describe them being Jelly Babies after the sweet (candy) of the same name – greatly reducing the load placed on a system compared to having to render them in detail, so improving performance.

Avatar complexity is intended to help those who may hit performance issues as a result of their GPU struggling to render complex (hight render cost) avatars, by rendering such avatars as solid colours.
Avatar complexity is intended to help those who may hit performance issues as a result of their GPU struggling to render complex (hight render cost) avatars, by rendering such avatars as solid colours.

The intent with the capability is to allow people to adjust the setting according to circumstance, so that when in a crowded area with lots of avatars, the setting can be dialled down and more of those avatars which are harder to render become solid colours, while in quieter areas, the setting and can dialled back up, allowing more avatars to be seen in full detail.

Avatar Complexity is intended to sit alongside the avatar imposters functionality (Max # of non-impostors in the official viewer), allowing both to be used as required to produce more optimal performance in crowded or busy places.

By default, Avatar Complexity is set to No Limit, meaning all avatars in your field of view will fully render. As the slider is moved, it will list a render weight value, which is a revision of the RenderAutoMute function within the viewer previously used to help calculate the more familiar Avatar Draw /  Render Weight. The latter, viewed via Advanced > Performance Tools, has also been renamed to Show Avatar Complexity Information for consistency, with the displayed information updated.

The Avatar Complexity slider in Preferences > Graphics > Advanced Graphics Preferences (l) and the new format of information displayed when Advanced > Performance Tools > Show Avatar Complexity Information is enabled (r)
The Avatar Complexity slider in Preferences > Graphics > Advanced Graphics Preferences (l) and the new format of information displayed when Advanced > Performance Tools > Show Avatar Complexity Information is enabled (r) – click for full size

Graphics Presets

The initial work on Graphics Presets was undertaken by open source contributor Jonathan Yap (see STORM-2082) to provide a means by which users can save and restore different sets of graphics settings within the viewer. The idea being that users can then switch between different presets according to circumstance to help with viewer performance.

So, for example, one preset 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.

Like Avatar Complexity, Graphics Presets is still undergoing development internally with the Lab, and so what is presented here may be subject to change.

Perhaps the most significant change this brings to the viewer is the introduction of a new Advance Graphics Preferences floater (shown below right). This is designed to display all of the options than a user can set and save within a graphics preset without having to either scroll through options (an earlier iteration of the design did use a scroll bar, but they didn’t meet with favourable reactions during testing), or having to switch between different sub tabs.

The new graphics profile options - the Advanced Graphics floater (as it is at present), and the options for saving / restoring profiles from within Preferences.
The new graphics presets options – the Advanced Graphics floater (as it is at present), and the options for saving / restoring profiles from within Preferences – click for full size

As it is, the Advanced Graphics floater has been acknowledged as being less-than-optimal given it is currently a fixed size which may not suit all screen resolutions. It is therefore likely to go through further revision, such as perhaps being made resizeable. So again, please do not take what is presented here to be the final iteration; this is just a sneak peek / first look.

Once a profile has been set-up in the Advanced Graphics Preference panel, it can be uniquely saved using the Save Settings as a Preset button (shown above left). Note that several presets can be created in this way.

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

Once created and saved, a preset can then be loaded at any time in one of two ways: via the Load Graphic Preset button within Preferences > Graphics, as shown in the image above, lower centre; or more directly by the Graphics Presets icon located in the top right of the viewer.

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

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

Current Status

While it may seem I am belabouring the point, please do note that both Avatar Complexity and graphics presets are a work-in-progress, and things may change between what is seen here and what appears in the viewer in the near future. This is purely intended to give people a flavour of what is coming.

Currently, Avatar Complexity is subject to further work – a bug has been introduced into the capability, which is in the process of being tracked down in order to be stomped. There are also some simulator updates which, I believe have yet to be implemented / deployed. Similarly, as noted aspects of the graphic presets capability may be subject to further refinement.  Given this, I’ll have a more complete introduction to both once they have reached either project or RC viewer status.

14 thoughts on “Early looks: Avatar Complexity and Graphics Presets

  1. Reblogged this on A Kat and A Mouse and commented:
    I am looking forward to both of these items, though I am curious to see how the Avatar Complexity setting does/doesn’t work when attending a dance show.
    I don’t want to render complex avatars in the audience, but I may want to render complex avatars who are performers. Finding a balance may be interesting.


    1. It’ll largely come down to where your camera is pointing and who is in the field of view. Having experimented at various dance venues, I can say it’s an interesting option to play with, and after a few issues at the talk with Oz Linden at SL12B on Monday (despite having a pretty high spec PC!), I’m going to be road testing the viewer at the next Linden talk in the hope I actually get to record the entire event!

      Liked by 1 person

  2. I like the idea of presets. My PC does fairly well but I have friends with older machines and when we are just sitting in a room, it would be nice to dial down unnecessary settings for optimal performance.

    Both of these projects are not indicative of a company that is abandoning it’s first generation platform for the shiny new one of the future. Kudos to the Lab!


  3. Well, i do think there are other feautres that should make it on ll viewer first.
    A quick tools button, like firestorm or less complex, like uknaod. where one can change the draw distance, change windlight settings and a few other options.
    LL could include that and also add another choice there, like graphics savings, like when we do a windlight and save it and then can acess it.
    Why they are choosing another completely diff tab and menu? Instead of making the viewer easy they keep floading it with windows, tabs and all that distracts form the main goal, to have the most of the view around on screen.
    And as someone that does not have avatar imposters box checked, ever, i can not speak about the rest of this post.
    Yes im negative, cause i dont understand the need to put a new window a new menu and still ingnore the best feature of many tpv’s, a quick tools button.


    1. As noted in the article, the additional Advanced Graphics floater is the current approach; things might change (or they might not). The problem the Lab face is that the capability – requested and suggested by users – needs to allow a range of settings to be applied and saved, and users need a means of conveniently seeing all of those settings when adjusting them. Unfortunately, there are a lot of them, so there are only really three approaches that can be taken:

      • Leave them within the current Graphics tab within Preferences, and make that tab scrollable. However, this did not prove popular when undergoing closed testing
      • Leave them within the current Graphics tab within Preferences, but split them into sub-tabs. However, this again wasn’t seen as an optimal soultion
      • Present them in a new floater which allows everything to be visual scanned. This is what is currently being tried; however, and as noted, there are some issues with the approach still to be solved

      As to filling screen real estate, that’s debatable. The whole idea is that this panel is only open should settings need to be be adjusted, a new pre-set created. As such, it’s not something people are going to have open all the time to interfere with their in-world view.

      More to the point, when it is open, it is likely going to be the focus of people’s attention somewhat more than the in-world scene, so again, the question of how much interference it poses is perhaps moot; particularly given that once pre-sets have been created, there is no need to return to the panel (unless adding more or revising presets), as the Presets icon allows users to quickly and easily switch between those they have created.

      In terms of what else the Lab could do, that’s entirely subjective. We all have little things (and some quite big things) we’d like to see in the viewer. The Lab does as well – which is why they have quite a roadmap of things they’d like to achieve within the viewer (and within Second Life as a whole). Doubtless, some will get done in time, others might not. The reason these particular options were picked-up was two-fold.

      Firstly, an open source contributor saw that he could address the idea of having saved graphics presets within the viewer – which, as mentioned, has been the subject of many requests from users, and so offered to work on the code. Secondly, and again as noted in the article, rendering avatars is one of the highest loads placed on the viewer / people’s systems, so finding a way in which that load can be lightened is good for those on less capable systems than you or I. As this kind of setting is liable to be one people will want to adjust according to circumstance, combining it with the graphics presets work made obvious sense.


      1. I do not disagree in any you say, but perhaps it is time to add a quick draw distance scroll bar or a more easy way to change windlight settings and you must agree that the quick tools button from firestorm is a great solution even if i got used to crtl+p and set the prefernces window to be always on graphics, so i can change draw distance a bit faster under Ll viewer, but to change windlight is still a bit of a pain to have to go to 1+2+3 diff tabs on the top menu.


  4. Well done with the Avatar Complexity feature. Now just add a Linkset Complexity feature that does exactly the same but for laggy linksets and it will be even better


Comments are closed.