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.

SL project updates 16 4/2: TPVD meeting

High Water; Inara Pey, January 2016, on Flickr High Water (Flickr) – blog post

The following notes are taken from the TPV Developer (TPVD) meeting held on Friday, January 29th, 2016. At the time of the meeting, Second Life was experience voice issues, and so the meeting was held in text. However, the meeting was still recorded and is available here. The following notes have been taken from the chat log of the meeting.

Server Deployments – Recap

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

On Tuesday, January 26th, the Main (SLS) channel received server maintenance package 16.01.16.310114, previously deployed to the three RC channels, comprising a simulator crash fix and feature request OBJECT_REZZER_KEY) for llGetObjectDetails(), which returns the parent_id (object or avatar) of any task in the region. The function only works for those objects rezzed in-world after the code deployment (objects in-world prior to deployment will return NULL_KEY).

On Wednesday, January 27th, the three RC channels all received a new server maintenance package,16.01.21.310177, 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.

SL Viewer Updates

HTTP / Vivox

The HTTP / Vivox RC updated to version 4.0.2.310349 on Wednesday, January 27th, which sees the addition of MAINT-5977, “Create a MailDrop event pump”  to the list of resolved issues, and the removal of MAINT-6055, “[corehttp] Mac – voice does not stay connected on resume from sleep”.

Quick Graphics

The Quick Graphics RC viewer (currently version 4.0.2.310127, dated January 20th), is getting some fixes to more accurately account for Materials, and possibly some other tweaks to how Avatar Complexity is calculated. The update should be appearing in the release channel soon.

One problem yet to be fixed within this viewer is an issue whereby avatars will still appear as solid colour jelly babies even when the Avatar Complexity slider in the viewer is set to “no limit” (which in theory should render all avatars normally). Commenting on whether or not this will be fixed, Oz noted:

The problem with those cases is that there are 2 more factors that go into making the avatar a coloured impostor, and they’re not obvious enough. We will probably change the thresholds on those, and maybe make the response to them different somehow.

When asked if those who have suitable systems will have the means to disable Avatar Complexity from running in their viewer (i.e. never see jelly babies unless the capability is expressly re-enabled) should the above issue not be resolved, Oz indicated this is a possibility, but is still to be decided.

Maintenance RC

A further Maintenance RC viewer is on the horizon, with what is described as a “nice set of fixes”. This should also be appearing in the release channel in the near future.

Project Viewers

The Project Bento viewer continues to be worked on, and the Lab is trying to move things towards a “final” (for this phase of the work) selection of additional bones – see my separate report on the Bento project for details.

Work is all under way in updating the Oculus Rift project viewer, with an update expected in the near future. The indication is that this will be built to the 1.x SDK. Oz also indicated that the Lab is potentially looking at how many alternative HMDs they might be able to support with the viewer, including “taking a whack” at Google Cardboard support.

64-bit Viewer Builds

As noted in my last TPVD update, the Lab is starting work on 64-bit versions of their Mac and windows viewers. There is no time frame as to when the first project / TC versions might appear, but it does also mean that there will be a 64-bit viewer Havoc library made available to TPVs in due course. However, this may take a while to appear.

Mac Builds

Currently, the Lab is using OS X 10.10.5 and Xcode 7.x for Mac builds, but are working to resolve a cmake file issue in order to build on OS X 10.11.2 or greater. This requires the Lab to re-arrange the order in which the current build tests are run to ensure the required libraries can be located as the integration tests can be successfully run.

Vivox Exploits

There is still concern over Vivox voice exploits being employed by some users. One example of this is a user located on one region being able to listen in on conversations on another region without showing up on active speakers list for that region.

The problem here is that the weaknesses allowing these types of exploits tend to be within the code package supplied by Vivox, and over which LL has no direct control. They therefore require action on Vivox’s part to fix them. This is something Oz pointed out at the TPVD meeting, before going on to note that the Lab will continue to work with Vivox to get things corrected.

Other Items

Older Viewers

There are a number of changes which are being implemented throughout 2016 which will make older versions of viewers increasingly obsolete. These include further inventory improvements and the deprecation of outdated inventory messages which will impact older viewers and, most notably the switch to TLS 1.2, which is already available in the current release of the official viewer (and those TPVs adopting the CEF code base from the Lab).

As I noted (via a comment from Oz) in my last TPVD meeting report for 2015,  this switch-over is being driven out of compliance requirements, rather than for any technical reason. However, what it does mean that once it occurs – mostly likely in the spring – any viewer which does not support TLS 1.2 will be unable to carry out any interactions with the SL Cashier or anything that involves money, as there will be no back-end support.

Third-Party Viewer Releases

  • Catznip updated to release R10.0 for Windows only (at present) on Saturday, January 30th. This release brings Catznip back up to date with more recent code releases from the Lab, and I’ll have a review available shortly. Catznip users should note that R9 will be blocked from mid-February
  • Alchemy will be releasing an update “imminently”
  • Firestorm’s next release continues to look set for around early March.

 

Project Bento User Group update 3 with audio

Project Bento extends the avatar skeleton, adding a significant set of bones (e.g. 30 for the face, 30 for the hands (both of which can be seen inaction in the image above of an avatar by Matrice Laville), plus bones for wings, tails, additional limbs and ears / antennae
Project Bento extends the avatar skeleton, adding a significant set of bones (e.g. 30 for the face, 30 for the hands (both of which can be seen inaction in the image above of an avatar by Matrice Laville), plus bones for wings, tails, additional limbs and ears / antennae

The following notes and audio were taken from the weekly Bento User Group meeting, held on Aditi every Thursday at 13:00 SLT.

For details on each meeting and the location, please refer to the Bento User Group wiki page.

Bone Survey

The  Bento Bone Survey, intended to gauge the level of interest in various bone proposals for the Bento skeleton is now available. The Lab is requesting animators and content creators with a vested interest in Project Bento to rank the bone proposals 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.

If you are an animator / content creator with such an interest, and you haven’t already completed the survey, please ensure you do so as soon as possible, as it is likely to be closed on or shortly after Monday, February 1st.

The Lab notes they do not currently know how many additional bones we can reasonably add, or whether some of the associated bugs can be fixed.

Drax Files Filming

The final session of Bento filming for The Drax Files World Makers will take place on Monday,  February 1st at 11:00 SLT at the Bento Island region on Aditi. All those with an avatar developed using the Bento avatar skeleton extensions are invited to attend.

Deformed Avatars

Distortions with Altitude

Cathy Foil has been examining issues with deformations at altitude occurring in avatars using the Bento  skeleton. She first noticed the issue whilst Bento was in closed session and reported details to the Lab. However, efforts at pinning down he precise cause have been hampered up until recently by not being able to gather sufficient data from the skeleton and a lack of detailed comparisons between the effects as seen on various viewers utilising the Bento code.

Cathy has been addressing this using the most recent release of the Bento project viewer, and carrying out further detailed tests at various altitudes to document the severity of the issues more fully (they tend become noticeable at altitudes over 1000 metres). She has now passed her latest findings over to the Lab for their investigations.

Distortions and deformations in avatars using the Bento skeleton were noticed in the closed session Bento development cycle. Since then, Cathy Foil has been digging more deeply into the problems
Distortions and deformations in avatars using the Bento skeleton when at altitude (the greater the altitude, the more noticeable the issues, as seen left-to-right, above) were noticed in the closed session Bento development cycle. Since then, Cathy Foil has been digging more deeply into the problems

“Squished” Avatars”

Cathy has also been investigating the issue of avatars deforming as a result of using a mesh uploaded with different joint positions. This tend to result in avatars looking “squished” or otherwise deformed.

As she uses Maya, part of her investigations point towards possible issues with versions of the plug-ins used by Maya to convert .FBX format mesh files to .Collada .DAE (the format used by SL). Whether or not the plug-ins are the cause isn’t definitive as a cause, but may be a contributing factor. As Vir noted in the meeting, if this is the case, then it is unlikely the Lab can do much about it, but those using Maya affected by the issue may need to check the version of the Collada plug-in they are using, and make sure they have the most recent to see if this clears the problem.

If it is more of an issue with the mesh uploader, however (because the Lab have missed something, for example), then obviously, there is more of a chance of the Lab taking remedial action.

Cathy Foil discusses her investigations into avatar deformations at altitude

Joint Reset Issues

A long-term problem with Bento has been it is easy for joints to get into the wrong state and / or position when animating an avatar using the Bento skeleton extensions. It’s often not clear why this happens when it occurs, which can be somewhat random. Vir has started collecting data on the issue. Nothing definitive has been identified in terms of a cause or causes, but Vir will be continuing to work on the issue.

“First Frame” Animation / Default Avatar Pose Issues

Another issue which has been noted is that of a first frame of an animation begin played three times as the animation is run, and which may be connected to default avatar poses within Second Life. This is a fairly “old” bug, dating back as far as 2007 (see BUG-11194), and which seems to be more prevalent with Bento as a result of bones being used differently (e.g. arm bones being used as forelegs, etc).

Medhue demonstrates the forleg crossing using his wolf avatar. The issue is a lot more extensive than this, with the avatar sometimes looking as if it is standing with forelegs folded in the same way a human folds their arms
Medhue demonstrates the forleg crossing using his wolf avatar. The issue is a lot more extensive than this, with the avatar sometimes looking as if it is standing with forelegs folded in the same way a human folds their arms

Medhue Simoni demonstrated the issue using two of has non-human avatars, an elephant and a wolf, which saw both attempt to cross their front legs (as a human might try to fold their arms) when transitioning between animations.

A lengthy discussion followed on the problem, which might also involve a number of other issues, including poses “baked” into the default avatar skeleton, possible race conditions between the viewer and the server, and issues with animation prioritisation.

It may also be related to how Second Life handles transitions between animations (referred to as animations “easing out” and “easing in” when moving from one to another), which has had other problems reported against it as well – see also BUG-11122, for example.

As indicated in Vir’s comment on BUG-11194, and noted in the discussion, there is some initial concern from the Lab that if the playing in triplicate was an intentional change – and one made well before most developers currently at the Lab having joined the company – or if it requires symmetrical changes on both the viewer and the server, it might result in some content breakage without detailed analysis, although Vir has now started digging into the code to have a look.

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

SL project updates 16 4/1: server updates

Gates of Memories; Inara Pey, January 2016, on Flickr Gates of Memories – blog post

Server Deployments

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

On Tuesday, January 26th, the Main (SLS) channel received the server maintenance package, 16.01.16.310114, previously deployed to the three RC channels. This comprises:

  • A simulator crash fix
  • A further feature request: llGetObjectDetails() functionality to get the parent_id of any task in the region (OBJECT_REZZER_KEY).

OBJECT_REZZER_KEY returns the parent_id of any task in the region. If the object came from an object rezzer it returns the ID of the parent object, while If it was rezzed by an avatar, it returns the agent ID of the avatar. The function only works for those objects rezzed in-world after the code deployment (objects in-world prior to deployment will return NULL_KEY).

On Wednesday, January 27th, the three RC channels should all receive a new server maintenance package,16.01.21.310177, comprising:

  • Internal simulator fixes
  • 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.

Deployment Slowdown

“FWIW, we’re likely to slow down on server updates in the next couple of weeks,” Simon Linden informed those attending the Simulator User Group meeting on Tuesday, January 26th. “It’s not part of any evil plan, but I’m doing some internal maintenance work and travelling one week.”

How this plays out remains to be seen, but we should at least have one deployment to the Main (SLS) channel in week #5 (week commencing Monday, February 1st), assuming no issues are found, with the promotion of the this week’s RC deployment to that channel.

SL Viewer

no updates for the start of the week, with the current crop of viewers remaining:

  • 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.310097, dated January 19th
    • 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 OSX versions below 10.7), version 3.7.28.300847 dated May 8th, 2015.

Other Items

Greater Local Region Control

A bug which has been getting repeated requests for attention, particularly by those engaged in SL combat activities, is BUG-8974, “Temp rez object are not rezzed in a timely manner”. It’s also one which hasn’t seem to be working its way to the top of the pile of things to be done. During the Simulator User Group Meeting, Simon expanded on one of these reasons this is the case:

“As I remember, it’s tied up with a larger idea: letting region owners pick different settings for the region based on the performance and safety you want.  Part of the problem is due to a throttle which was added for anti-griefing. So if you want temp rezzing faster, you might want that [throttle] looser, while a venue owner would definitely not want that [the throttle looser, due to the risk of griefing]. I can’t make promises but I hope to get to it soon.  It’s still on my list.”

SL project updates 16 3/2: Server, viewer, Bento and CEF + Flash

The Keys; Inara Pey, January 2016, on Flickr The Keys (Flickr) – blog post

Server Deployments, Week 3 – Recap

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

On Tuesday, January 19th, the Main (SLS) channel received the server update package previously deployed to the three RC channel. This comprises:

  • Feature Request: llGetObjectDetails() constant OBJECT_TOTAL_INVENTORY_COUNT – when targeting an object, OBJECT_TOTAL_INVENTORY_COUNT will return the total of all inventory types in each link of the linkset. See BUG-10575 for further details
  • Feature Request: llGetObjectDetails() constant OBJECT_PRIM_COUNT – provides a means to get a worn attachment’s prim count (rather than just returning 0).  See BUG-10646 for further details.
  • Simulator crash fixes.

On Thursday, January 21st,  three RC channels received a new server maintenance package comprising a simulator crash fix and a further feature request: llGetObjectDetails() functionality to get the parent_id of any task in the region (OBJECT_REZZER_KEY). This returns the parent_id of any task in the region. If the object came from an object rezzer it returns the ID of the parent object, while If it was rezzed by an avatar, it returns the agent ID of the avatar. The function only works for those objects rezzed in-world after the code deployment (objects in-world prior to deployment will return NULL_KEY).

SL Viewer

The HTTP updates Vivox RC viewer updated  to version 4.0.2.310097 on January 19th, while January 20th saw the Quick Graphics RC viewer updated to version 4.0.2.310127, and the Project Bento (avatar skeleton extensions) viewer updated to version 5.0.0.310099.

Project Bento

I missed the greater part of the Project Bento meeting on Thursday, January 21st, so my apologies for not having a full report.

Cathy Foil demonstrates what can happen when an avatar using a mesh incorporating the new Bento bones deforms ...
Cathy Foil demonstrates what can happen when an avatar using a mesh incorporating the new Bento bones deforms …

Deformed Avatars: The lab is still asking for examples of avatars deforming as a result of using a mesh uploaded with different joint positions. If people have examples, Vir Linden requests that both the .DAE file and a copy of the mesh model are forwarded to him so that the Lab can test items for themselves.

Elizabeth Jarvinen (polysail), also points to some discussion on the Bento forum threat on how to possibly correct the problem when it occurs. see: here, here and here).

.BVH and .ANIM uploaders: It was noted at the meeting that the .BVH and .ANIM uploader have different capabilities. The .BVH uplaoder is viewed as being not as robust as the .ANIM uploader, although it does include optimisations for animations which are not present in the .ANIM uploader. Oz Linden suggested that it would be nice if both uploaders shared the same level of robustness / capabilities.

Vir pointed out that the .BVH uploader has various optimisations which are not present for .ANIM uploads. So how parity between the two is achieved is unclear. fore example:

  • Is the optimisation code removed from the .BVM uploader or added to the .ANIM uploader?
  • Are the updates server-side, or should they be viewer-side, with the ability to preview animations prior to final upload to ensure they are playing correctly?

It is also open to question whether any such work, were it to be undertaken, would form a part of this initial Bento project.

Bento Bone Survey

I was absent (as noted) when this particular item was discussed, so I may have the details wrong. However, it appears that, as previously reported, the Lab are going to put out a survey asking for creators and animators to indicated their preferred additional bones out of those which have been suggested. The survey is liable to be published via the Bento forum and / or the Bento user group wiki page.

World Makers Filming

There will be a final Bento filming session for the upcoming Drax Files World Makers special on Monday, February 1st. Creators and animators who have examples of content using the Bento skeleton extensions and are willing to take part in the filing should contact Draxtor Despres in-world for further details.

Aditi Inventory Syncing

The code for merging main (Agni) inventories into beta (Aditi) grid inventories is still subject to final testing before being deployed to Aditi. As previously noted in these updates, when this does happen, it will mean that logging-in to Aditi will trigger an automatic merge of your Agni inventory with your Aditi inventory as a part of an overnight (PDT) process. This means that items unique to people’s inventories on Aditi will no longer be lost as a result of their Aditi inventory being overwritten by their Agni inventory (as is currently the case). Once deployed, this update also means that a password change will no longer trigger an inventory sync between the two grids.

Suggestions have been put forward that rather than merging Agni inventory directly into the Aditi inventory structure, the incoming Agni items are delivered to a new top-level folder (perhaps called “Agni” or “Main Grid”) during the merge process, so that people can easily distinguish between unique versions of items they’ve been editing on both Aditi and Agni.

Adobe Flash on CEF Viewers

As has been covered in this blog and others, the Second Life viewer, version 4.0.0+, and all v3 TPVs using that code now makes use of the Chromium Embedded Framework for supporting rich media, including Adobe Flash.

However, for the latter to work with the viewer, it requires a specific version of Flash to be installed on your system. For those interested, Jeremy Linden has provided a knowledge base article on what needs to be installed for the official viewer, and how. With thanks to Willow Wilder for the pointer.

 

SL project updates 16 3/1: Server updates and Bento examples

Telrunya - Forest of Dreams; Inara Pey, January 2016, on Flickr Telrunya – Forest of Dreams (Flickr) – blog post

Server Deployments

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

On Tuesday, January 19th, the Main (SLS) channel received the server update package previously deployed to the three RC channel. This comprises:

  • Feature Request: llGetObjectDetails() constant OBJECT_TOTAL_INVENTORY_COUNT – when targeting an object, OBJECT_TOTAL_INVENTORY_COUNT will return the total of all inventory types in each link of the linkset. See BUG-10575 for further details
  • Feature Request: llGetObjectDetails() constant OBJECT_PRIM_COUNT – provides a means to get a worn attachment’s prim count (rather than just returning 0).  See BUG-10646 for further details.
  • Simulator crash fixes.

On Wednesday, January 20th, the three RC channels should be updated with a new server maintenance package. However, at the time of writing, it looked questionable if the deployment would go ahead. On  Tuesday, January 19th, Simon Linden informed the Simulator User Group meeting attendees that there was a problem on the latest deployment image for update which caused it to refuse to start, and was under investigation.

If the deployment does go ahead, it will comprise a simulator crash fix and a further feature request: llGetObjectDetails() functionality to get the parent_id of any task in the region (OBJECT_REZZER_KEY). This returns the parent_id of any task in the region:

  • If the object came from an object rezzer it returns the ID of the parent object
  • If it was rezzed by an avatar, it returns the agent ID of the avatar.

It will only return details for those objects rezzed in-world after the code has been implemented. Objects already in-world prior to deployment will be ignored (NULL_KEY is returned).

Project Bento

no major news here, other than initial filming for The Drax Files World Makers special on Bento took place on Tuesday, January 19th, 2016. There will be a further round of filming on Wednesday, January 20th. If you are an animator  / content creator who has something you’d like to demonstrate and possibly have filmed for the episode, please contact Draxtor Despres in-world ASAP.

In the meantime, a short piece I stitched together at the filming session, showing an avatar rigged to use the Bento finger extensions compared to a avatar without the rigging; a centaur and a part of bat wings (both by Aki Shichiroji)  utilising the Bento bones.

Finger animation in the video by Abramelin Wolfe. Elephant in the splash image by Medhue Simoni.