SL project updates 16 7/1: server and viewer

Sorrow; Inara Pey, February 2016, on Flickr Sorrowblog post

Server Deployments

There are no server deployments planned for this week, and no planned restarts for any of the channels.

There is an RC deployment planned for week #8 (week commencing Monday, February 22nd), details of which are still TBA.

As there have not been any rolling restarts, and won’t be any across the entire grid until around week #9, the advice is that if your region is behaving abnormally, file a support ticket to have it restarted. The Lab’s support team are aware that there are no scheduled restarts at present, so they should process requests OK.

SL Viewer

With Monday having been a holiday in the United States (Presidents’ Day), there was no meeting at the Lab to discuss viewer promotions.  This leaves the current list of Lab viewer unchanged from the end of week #6:

  • Current Release version: 4.0.1.310054, January 15 – formerly the Maintenance RC viewer download page, release notes
  • RC viewers:
    • HTTP updates and Vivox RC viewer updated to version 4.0.2.310660 on February 4 – combines the Project Azumarill RC and Vivox Voice RC updates into a single viewer  (download and release notes)
    • Maintenance RC viewer version 4.0.2.310545 released on February 2 – 38 updates. fixes and tweaks for memory leaks; viewer crashes; UI, permissions and mesh uploader bugs; visual muting issues, autopilot issues and duplicated calling cards (download and release notes)
    • Quick Graphics RC viewer updated to version 4.0.2.310127 on January 20 – provides the new Avatar Complexity options and the new graphics preset capabilities for setting, saving and restoring graphic settings for use in difference environments / circumstances (download and release notes)
  • Project viewers:
    • Project Bento (avatar skeleton extensions) version 5.0.0.310099 released on January 20 – adds 90+ bones to the existing avatar skeleton (download and release notes)
    • Oculus Rift project viewer updated to version 3.7.18.295296 on October 13, 2015 – Oculus Rift DK2 support (download and release notes)
  • Obsolete platform viewer version 3.7.28.300847 dated May 8, 2015 – provided for users on Windows XP and OS X versions below 10.7 (download and release notes).

As noted in my recent TPVD meeting report, further updates are expected to the HTTP / Vivox RC viewer and the Quick Graphics RC viewer, but these may not appear this week.

Region Crossings – Grey Box Issue

There have been increasing reports of region crossing issues, including the return of the “grey box” attachment issue which was originally seen in 2013 when crossing from a BlueSteel RC to any other region. This would see any passenger(s) sitting on a vehicle surrounded by (or even replaced by) a grey prim, and left with no choice but to relog, leaving the prim behind, attached to the vehicle.

Caitlyn recently got caught by the "grey box" issue as we were sailing on the north side of Blake Sea. If you encounter the problem, please file a JIRA with as much information as possible (see below)
Caitlyn recently got caught by the “grey box” issue as we were sailing on the north side of Blake Sea. If you encounter the problem, please file a JIRA with as much information as possible (see below)

At the time of the problem first appearing, Kelly Linden described it thus:

Every agent has a ‘task’ representation on the server that is the same as a prim. The bug is in sending the linked set w/ avatars to the other region: avatars after the first are losing the special avatar treatment and getting passed as a regular linked prim. So that prim is what the server thinks all avatars look like.

Simon then added:

The region crossing code basically un-sits avatars from an object, sends both the avatars and object to the next region [as separate sets of data], which puts them back together. In this case, the 2nd avatar doesn’t get detached properly and things go south from there. So the 2nd avatar gets sent over bundled up with the object … which it’s not designed to do.

It had been thought this issue had been dealt with via a fix for (non-public) BUG-3547. However, if it is resurfacing, the problem now is to pin it down in a reproducible manner, if indeed it is returning. Should you encounter it, please make sure you file a JIRA providing as much information as possible, including your viewer log files, the regions you were crossing between when it happened yo you (or your passengers), the date and time, details of the vehicle you were using, etc.

SL project updates 16 6/2: TPVD meeting

The Village & BarDeco; Inara Pey, February 2016, on Flickr The Village & BarDecoblog post

The following notes are primarily taken from the  TPV Developer (TPVD) meeting held on Friday, February 12th, 2016. A video of the meeting is embedded at the end of this report, and time stamps in the text relate to that recording. My thanks as always to North for supplying the video.

Server Deployments – Recap

There were no server deployments for week #6, as the majority of staff at the Lab directly involved in developing and enhancing the platform were meeting to discuss plans for further enhancements and improvement to Second Life.

This more than likely means the next deployment will take place Wednesday, February 17th, 2016, to at least one of the RC channels.

SL Viewers

[00:19] The current version of the HTTP / Vivox viewer (4.0.2.310660) has HTTP pipelining disabled as a result of bug within it which was causing the viewer to crash. The Lab is now looking to fix the underlying cause of the issue.

Oz arrived at the TPVD meeting suitably attired for the dunk-a-Linden fest at Isle of View, also taking place on Friday, February 12th
Oz arrived at the TPVD meeting suitably attired for the dunk-a-Linden fest at Isle of View, which also took place on Friday, February 12th

[00:55] The Quick Graphics viewer is undergoing a further round of changes to refine how it performs the avatar complexity calculations.

[02:40] It is thought that all of the remaining issues in this regard (such as blocked avatars not rendering correctly, elevated costs involved when using alpha masking instead of alpha blending and materials are not being accounted for correctly.

[03:22} Further changes to the viewer mean that from the next release it will no longer use a LOD of 3 on which to base avatar complexity calculations,  but will be more responsive to the different LODs set within a mesh, depending on which you are seeing

So, for example, this means if you are close enough for the high poly version of the mesh to be rendered, the Avatar complexity calculation will be based on that; if you are further away, and a lower polycount version is rendered, then the LOD for that will be used in calculating the Avatar complexity.

Once all of these updates have been incorporated into the viewer, which should be in the next week or two, an updated RC will be issued, paving the way for this viewer to be promoted as the de facto release viewer sometime in the not too distant future after that.

An interesting point with this Quick Graphics viewer is that those using the RC version are tending to run longer log-in sessions which are “significantly longer” than with those users running the current release viewer.

The Oculus Rift project viewer is still anticipated as appearing “soon”, and will lift this viewer to being compatible with the latest SDK from Oculus VR, but will be for Windows only, given the Oculus SDK currently doesn’t support Mac.

64-Bit Viewer Versions

[05:00] The viewer team continue to pursue 64-bit versions of the official viewer, but it will still be a while before any initial versions are visible and available for people to try. It is likely that any project viewer will not be appearing for a “few weeks”. Once project viewers are released into the wild, it a likely the Lab will make available 64-bit versions of the pre-built Havoc extensions libraries to TPVs with the licence as well.  The release of the 64-bit viewers will also see the Lab cease support for 32-bit versions of OS X, something which should hardly affect any Mac users.

Project Bento

[01:20] With the Bento Bones survey closed and feedback also gathered through meetings, it is hoped that the skeleton changes can be finalised relatively soon, allowing the Lab to focus on issues of bug fixing within the viewer and readying it for a release (project or C) on the main (Agni) grid. This will also see the server-side support for Bento enabled on Agni, having been deployed last year as a part of the routine server releases (week #48 2015 for the Main (SLS) channel and originally to the RC channels in week #46 of 2015).

[06:46] The Lab, with content creators, is continuing to experiment with reconfiguring the bones, and also to look into the issues of joints getting out of position. As noted in my Bento Project reports, there are a number of different circumstances where this can occur, some of which have yet to be fully diagnosed, and others of which could be caused by race conditions between the viewer and the server when it comes to message handling, or which may even be due to message packets being lost for those on poorer network connections.

A further issue is to do with the default human T-pose attempting to load between animations, which can cause quadruped avatars appear to try to cross their forelegs, depending on the bones used in rigging them. For a details discussion on all these issues, see my Project Bento update #4, with audio.

Other Items

CEF, and Firestorm  and Anti-Virus software

[14:08] One of the significant factors in delaying the next Firestorm release is the merge with the Chrome embedded Framework (CEF) code which is now used for media handing, etc., within the viewer. A set of fixes for CEF are already available in the current Maintenance RC viewer (version  4.0.2.310545 at the time of writing), with further updates expected in the next Maintenance RC thereafter – although none of these are considered major issues.

[15:43] There have been reports that one or two anti-virus packages (one of them being Webroot) don’t play nice with CEF versions of the viewer. There’s not a lot the Lab can do about this, and users experiencing problems may want to look into the AV software and see if the viewer requires whitelisting, etc.

Find out more on this through my TLS 1.2 implementation notes.

Continue reading “SL project updates 16 6/2: TPVD meeting”

SL project updates 16 6/1: server and viewer

Calas Galadhon; Inara Pey, February 2016, on Flickr Calas Galadhon – Gulf of Lune – blog post

Server Deployments

There are no server deployments planned for week #6. The reason for this is that most of the staff directly involved in developing and enhancing the platform – the engineering team, product teams, etc., are meeting to discuss plans for further enhancements and improvement to Second Life in the coming month, as existing projects such as Bento continue to unfold.

This more than likely means the next deployment will take place Wednesday, February 17th, 2016, to at least one of the RC channels.

This also means the detailed project information is liable to be a little light this week as well.

SL Viewer

The HTTP / Vivox RC viewer was updated post my last SL projects Updates in week #5. Version 4.0.2.310660, issued on February 4th. This update includes three new fixes:

  • MAINT-6055 [corehttp] Win or Mac – voice does not stay connected on resume from sleep
  • MAINT-6064 Voice disappeared after rejected IM call
  • MAINT-6108 Cannot turn off ‘Console Window on next Run’ option in develop menu.

There has been no promotion to release viewer for any of the current RCs, which leaves things as follows for the release channel and project viewers:

  • Current Release version: 4.0.1.310054, January 15 – formerly the Maintenance RC viewer download page, release notes
  • RC viewer (+ the HTTP / Vivox RC above):
    • Maintenance RC viewer version 4.0.2.310545 released on February 2 – 38 updates. fixes and tweaks (download and release notes)
    • Quick Graphics RC viewer updated to version 4.0.2.310127 on January 20 – Avatar Complexity and graphics pre-sets (download and release notes)
  • Project viewers:
    • Project Bento (avatar skeleton extensions) version 5.0.0.310099 released on January 20 – adds 90+ bones to the existing avatar skeleton (download and release notes)
    • Oculus Rift project viewer updated to version 3.7.18.295296 on October 13, 2015 – Oculus Rift DK2 support (download and release notes)
  • Obsolete platform viewer version 3.7.28.300847 dated May 8, 2015 – Windows XP and OS X older than 10.7 (download and release notes)

Open Development Meeting

The Open Development (also called the open source developer meeting), hosted in-world by Oz Linden, will be moving from Monday to Wednesday from February 17th, the time remains unchanged.

Core User Group Meetings

As a reminder, information on current LL technical user group meetings can be found on the SL wiki, and are summarised here. Meetings have an open attendance, but please note that are specifically for discussing the subjects listed. Question on matter such as support issues, the Terms of Service, LL’s general policies, etc., cannot be addressed at these meetings, which are chaired purely by members of the engineering and QA teams.

  • Tuesday, 12:00-13:00 SLT: Simulator User Group (formerly the Server / Sim Scripting group) – Simulator issues and technology. Held in text chat. Meeting SLurl
  • Wednesday,  07:00-08:00 SLT: Open Development – discussion of SL development, including open source contributions. Held in text chat. Meeting SLurl
  • Thursday, 13:00-14:00 SLT Project Bento  – Avatar Skeleton Extension project. Held in voice + text chat. Meeting SLurl (Aditi): Mesh Sandbox 2
  • Thursday, Server Beta User Group (SBUG) – server changes and public beta testing.  Held in text chat. Meeting SLurl (Aditi): Morris

There is also the TPV Developer meeting, held on alternate Fridays, which is specifically aimed at TPV Developers, and which is primarily held in voice.

Project Bento User Group update 4 with audio

Project Bento extends the avatar skeleton, adding a significant set of bones (e.g. 30 for the face, 30 for the hands Project Bento - extending the SL avatar skeleton
Project Bento extends the avatar skeleton, adding a significant set of bones to the existing skeleton (avatar by Matrice Laville)

The following notes and audio were taken from the weekly Bento User Group meeting, held on Thursday, February 4th at 13:00 SLT on Aditi.  For details on each meeting and the location, please refer to the Bento User Group wiki page.

Bent Bones Survey

The Bento bones survey is now closed. Vir presented an overview of the results during the meeting and subsequently published the results on the Bento forum thread. Some 54 responses were received, which he has been analysing.

Additional Bone Groups

In terms of the questions on the 7 proposed joints or sets of joints, no clear winner emerged, with the average ranking for the seven coming between 3.18 and 4.32 (lower being better). Additional wing bones fairing the poorest of all, with additional facial bones and / or additional ear bones fairing the best.

Since the survey results were published, Gaia Clary has pointed out that it did not include the proposal for a group of three additional bones for the centre lip and forehead, which have been viewed as being important for natural facial expressions such as decent smiles. The exclusion might explain why one of the proposals was effectively listed twice in the survey (options 1 and 3). There’s currently no indication as to how group indicated by Gaia might now be considered.

Gaia Clary indicated the bone survey missed a proposal for 3 additional forehead / lip bones to allow more natural expressions, the inclusion of which would also allow for better automatic weighting of the lips (the pictures above, as Gaia notes, use the default avatar head)
Gaia Clary indicated the bone survey missed a proposal for 3 additional forehead / lip bones to allow more natural expressions, the inclusion of which would also allow for better automatic weighting of the lips (the pictures above, as Gaia notes, use the default avatar head)

Written Feedback

The open questions asking for written feedback did produce a clear winner: more tails / limbs or more tail joints, with most of the respondents to the questions (18 and 14 respectively) citing a desire to support hexapods, centaurs, or other multi-limbed creatures.

The requests for additional tail  / limb bones saw Vir ask for further feedback on matters to make sure he was grasping the reasons for the requests correctly – notably that people would be using bone translations for the additional limbs, allowing the spine to act as an initial anchor point for the bones, which then could be translated into their preferred positions.

Wing Roots, Pelvis Bones and Options

A contributing factor for wing root bones not proving popular is because they were originally included to compensate for the fact that Bento initially didn’t support bone translation, only rotation; thus additional bones were required to assist with achieve more natural wing, etc., movement. Now that bone translation is considered part of Bento, the need for multiple extra wing root bones is removed, with the result that some could be replaced by more meaningful bones used elsewhere.

A set of bones which came in for particular discussion were extra pelvic bones, with Vir asking for clarification on the benefits would be in having them. My apologies for the extract from this part of the meeting, a mis-click on my part meant that part of the conversation in which Teager explained how it would allow for easier compatibility with existing animations so that, for example a centaur might be able to make use of existing upper body animations for arm / head movements wasn’t cleanly recorded and so is not a part of the extract.

Bone Constraints

When  discussing working with initial versions of the Bento skeleton and developing the Avastar face rig to help in producing facial animations in early January, Gaia Clary raised the subject of utilising bone constraints as a means of adding a further level of control for bone movement within the avatar.

This would allow root bones to effectively be paired such that the movement of one is controlled / constrained by the movement of another (see this comment from Television as well).  This is a common approach to animation, and greatly eases the animation process, and if completely followed through, could add enormous flexibility in what could be done with the avatar skeleton, as Gaia notes:

If constraints can be implemented in general, then this concept could be generalized to work for all limbs, then users can for example constrain the root bones of the legs, arms, wings and tail to mSpine and create a 7 legged creature that can be animated without adding odd rules to the animation.

Thinking even further, if location constraints were allowed, then this idea allows to constrain any limb to any bone. Wings could then be constrained to eye brows for antennas, tail(s) could be constrained to chest for 4 winged creatures, etc.

The problem here is how to implement such a system of constraints within Second Life. While there are animation programmes and system which do allow for constraining bone movement, it’s not clear if they all utilised a standardise approach, or whether then could be easily replicated within Second Life, or what the overhead involved would be in trying to develop the means for the platform to support bone constraints.

Given this, and while the ideally has not been ruled out for future evaluation, adding such a capability at this put in time for Bento has been seen as being out-of-scope for this phase of the project.

Continue reading “Project Bento User Group update 4 with audio”

The Drax Files 35: exposing the bones of Project Bento

Project Bento extends the avatar skeleton, adding a significant set of bones (e.g. 30 for the face, 30 for the hands Project Bento - extending the SL avatar skeleton
Project Bento extending the SL avatar skeleton

Project Bento is an ongoing project running as a collaboration between Linden Lab and content creators / animators to extend what is possible with the standard Second Life avatar. It’s also the subject of a series of reports and updates in this blog and, more importantly in this particular context, the subject of segment #35 of The Drax Files World Makers.

At just under 3.5 minutes in length, the segment is somewhat shorter than previous editions of World Makers, but what it lacks in time, it more than makes up for in terms of content. Anyone wishing to grasp the intent of the project, its complexity, and its collaborative nature can do no better than to sit down and watch World Makers 35.

Bento’s roots as a real project go back to around the start of 2015. The Second Life team at the Lab (which is probably larger than many people are prepared to give credit, comprising as it does product managers, engineers, designers, coders, the viewer team, etc.), periodically get together to discuss how and where they might improve Second life and offer new features.

Improvements to the avatar skeleton is one of those things that has long been requested by SL users and content creators, and thanks to work previously undertaken under-the-hood within Second Life, both within the servers and the viewer, it had, by early 2015, reached the point where it was felt it could be undertaken in a manner which would both yield a positive outcome.

Vir Linden, Senior Software Engineer at Linden Lab, and technical project lead for Bento
Vir Linden, Senior Software Engineer at Linden Lab, and technical project lead for Bento

Vir Linden has been the engineering lead in the project, which is by managed from a product perspective by Troy Linden and from an engineering standpoint by Oz Linden. It has over the months involved many from the SL team at the Lab including Aura Linden, Grumpity Linden, Dan Linden, Simon Linden, Rider Linden, and Coyot Linden, many of whom feature in the World Maker’s Video.

Perhaps most importantly of all, from a user’s perspective, is that from very early on, Bento featured – one might say almost driven – by content creators themselves, including Cathy Foil, Siddean Munro, Flea Bussy, Toady Nakamura, and Matrice Laville.

These are the people who focused on what bones should be thought about in order to extend the avatar skeleton, and who undertook a lot of the work testing ideas and feasibility, options for integration into tools already available to support avatar creation (such as Avastar, Mayastar), and so on. Several of the LDPW moles were also involved in the work, offering input and ideas based on their long-term experiences as content creators and developers.

Meetings for the project were held on a weekly basis (transitioning into the public Bento User Group meetings on Aditi once the work had reached to point of being available in a project viewer), and both Drax and I were invited along to witness the collaborative nature of the work between residents and Lab staff (although I admit, my attendance was sporadic, as the scheduled meeting time ended up being awkward for me to make in the latter part of 2015).

Bento project meetings were held in-world, allowing Lab staff and content creators / animators develop the project collaboratively.
Bento project meetings were held in-world, allowing Lab staff and content creators / animators develop the project collaboratively.

The complexity evident in Bento can be summed up in the fact that there are now 106 bones in the SL avatar skeleton, plus the original 26 collision volumes of the basic avatar, giving a total of 132 joints. These new bones include:

  • 11 extra limb bones for wings, additional arms, or extra legs.
  • 6 tail bones
  • 30 bones in the hands (all 10 fingers!)
  • 30 bones for facial expressions
  • 2 other new bones in the head for animating ears or antennae
  • 13 new attachment points associated with the new bones
Bento has huge implications for avatars of all kinds - even bunnies, as Etheria Parrott demonstrates with the facial features on this Bento Bunny . watch the video
Bento has huge implications for avatars of all kinds – even bunnies, as Etheria Parrott demonstrates with the facial features on this Bento Bunny . watch the video

Getting to this point alone took time and effort – and no small amount of testing. How many bones could the avatar realistically support within Second Life? What would be the data load placed on the simulator (allowing for a considerable amount of work the simulator used to do having been moved to the CDN service, something we’ll also be seeing more of in the future)? What happens when you get a lot of animated avatar appendages all operating in the same space?

These are just some of the questions which had to be addressed by those initially working on Bento, and are still being considered now in the more open Bento beta. Nor is it just a case of providing the bones and the options for animating them: there’s also the matter of ensuring the data relating to  bone movements, etc., can be reliably managed, tracked, communicated and visualised by both the simulator and the viewer.

All of which adds up to a complex project, but it is one seen as genuinely important by those at the Lab working on it, as Troy, Coyot, Aura, and Vir note in the video:

[Troy] The avatar is an extension of the resident. It’s an extension of their personality in a Very detailed way. [Coyot] Enabling  that imaginative element of ourselves is really important and not to be under-rated. People can go, “ah well, it’s fantasy, whatever,” but the imagination is an expression of who we really are. [Aura] By allowing avatars to have these new expressive modes, we can really increase this visual communication that people have. [Vir]  That’s going to increase the sense of presence in the 3D world.

Continue reading “The Drax Files 35: exposing the bones of Project Bento”

SL project updates 16 5/1: Server and viewer

Calas Galadhon; Inara Pey, February 2016, on Flickr Calas Galadhon – the view along the revised coastline from Dimrill Dale towards Glanduinblog post

Server Deployments

As always, check the server deployment thread for the latest updates.

On Tuesday, February 2nd, the Main (SLS) channel received server maintenance package 16.01.21.310177, previously deployed to the three RC channels, comprising Internal simulator fixes and a fix for BUG-1313 “LSL llSetPos in root prim of attachment behaves differently at high altitudes – viewer does not show updates”, which can cause attachments to fail to update correctly at altitudes over approximately 1500 metres.

There are no scheduled deployments to the RC channels for this week, and there are currently no plans for any deployments in week #6 (week commencing Monday, February 8th). Some suspect this is because nest week will see one of the semi-regular meetings those at the Lab directly involved in Second Life have to determine projects and priorities taking place.

Simulator Moves

The Tuesday rolling restart apparently included a number of simulators previously on the RC channels also being redeployed onto the Main (SLS) channel. There has been no word on why this is the case, although it might simply be a re-balancing of simulators between the various channels (Main, Magnum, LeTigre and BlueSteel), or part of a server load balancing operation (the Lab used to undertake periodic re-distribution of simulators by server, but I believe that process is far more automated nowadays).

SL Viewer

The anticipated Maintenance RC viewer arrived in the viewer release channel on Tuesday, February 2nd. Version 4.0.2.310545 includes some 38 updates and fixes for, but not limited to: memory leaks; viewer crashes; UI, permissions and mesh uploader bugs; visual muting issues, autopilot issues and duplicated calling cards (which should hopefully prevent people seeing some / many of the calling cards in their inventory duplicated each time they log-in to Second Life).

Outside of this, the current official viewers remain as:

  • Current Release version: 4.0.1.310054, January 15 – formerly the Maintenance RC viewer download page, release notes
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself):
    • HTTP updates and Vivox RC viewer, version 4.0.2.310349, dated January 27th
    • Quick Graphics RC viewer, version 4.0.2.310127, dated January 20th
  • Project viewers:
    • Project Bento (avatar skeleton extensions), version 5.0.0.310099, dated January 20th
    • Oculus Rift project viewer, version 3.7.18.295296, dated October 13th, 2015
  • Obsolete platform viewer (Windows XP and OS X versions below 10.7), version 3.7.28.300847 dated May 8th, 2015.

Project Bento Bone Survey

Those involved in work with the Project Bento avatar skeleton extensions are reminded that the  Bento Bone Survey,  while currently open, but is liable to be closed soon. The survey intended to gauge the level of interest in various bone proposals for the Bento skeleton is now available. So if you are an animator or content creator with a vested interest in Project Bento, and if you haven’t already completed the survey, please make sure you do so sooner rather than later. The Lab will be using the results to help with prioritising which additional bones people would like to see added to the Second Life avatar skeleton as a part of the Bento work.