SL project updates 16 8/2: TPVD meeting

Imesha; Inara Pey, February 2016, on Flickr Imesha – Blog post

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

Server Deployments – Recap

There was no scheduled Main (SLS) deployment on Tuesday, February 23rd. On Wednesday, February 24th, all three RC channels received the same new server maintenance package, comprising a server crash fix and “minor internal improvements.”

RC and Project Viewers

RC Viewers

[00:58] The Current Maintenance RC viewer was updated to version 4.0.2.311655 on Friday, February 26th. This should have a fix in it for a significant crash problem it has been experiencing. Otherwise all the current RC and project viewers remain as per part #1 of this week’s updates, with no view promotion to de facto release status as bugs in the three RC viewers continue to be worked on.

[00:49] It is now believed that the major issues with the HTTP / Vivox viewer have now been resolved, with the version released on Monday 22nd February (4.0.2.311302) performing “pretty well” within its cohort. [23:45] It is hoped that Rider is in the process of clearing the last significant bug which is stopping this viewer from progressing forward.

[01:20] The Quick Graphics viewer (version 4.0.2.311103, dated February 17th at the time of writing) is continuing to gather fixes for assorted issues. Oz is reasonably certain the anticipated update for this viewer will be released as an RC in week #9 (week commencing Monday, February 29th), which could mark its last RC update, making it eligible for promotion to the de facto viewer.

[26:43] At the current rate of progress it is likely these three RC viewer could all be vying for promotion to release status at around the same time.

Project Viewers

[01:49] As per my last Project Bento report, work is being put into the final version of the Bento skeleton. Once this work has been completed, there should be a further viewer update. This could likely be the last iteration of this viewer as a project viewer prior to it progressing to release candidate status at some point in the future.

[02:04] The Oculus Rift viewer update is also still in progress, with what is regarded as the last major bug now having been fixed, so an update will now be appearing “soon”.

OpenSSL

[02:46] There is a new version of OpenSSL  coming out. Depending on the vulnerabilities it fixes, it is possible this will be folded into the current release viewer to get this out of the door, but no firm decision on this will be taken until the update is available.

64-Bit Project

[03:30] Work is progressing on the 64-bit viewer build for Windows and Mac, with the Windows tool chain and infrastructure being rebuilt to support both 32-bit and 64-bit builds (once live, the Mac viewer is likely to be 64-bit only).

Viewer Stats

[04:48] The Lab gathers statistics on viewer log-ins and crash rates (and has long done so). The former allows them to gather data on the numbers of users logging-in by operating system, by operating system flavour (32-bit of 64-bit) and by viewer build (using the viewer channel number).

Changes to how the stats are gathered, coupled with other factors means that they have not been disseminated to TPVs was once the case. However, this now seems likely to resume from March, with TPVs being furnished with their own stats and those for the Lab’s viewers.

Firestorm see this as useful as it allows them to directly compare their most recent releases crash rates not only with previous releases of their viewer, but also with the crash rates of the versions of the Lab’s viewer using  the same core code base, thus potentially helping to identify potential underlying causes of any elevated crash rates they may be experiencing.

This discussion on stats segued into a general discussion on viewer channels, viewer spoofing (an illegal viewer trying to appear as a legal viewer), blocking viewers by channel number, etc., which can be heard within the video.

Future Viewer Projects

Visual Outfits Browser  Viewer

[24:00] The Visual Outfits viewer is not publicly visible, but is designed to provide a means by which users can store and browse images associated with their outfits in inventory. There is currently no time frame for when this viewer will reach a public status (project or RC).

Inventory Code Improvements

[27:14] In September 2015 I blogged about the inventory improvements projects being undertaken by Aura Linden. This is a two-step project:

  • The removal of redundant inventory messaging paths from within the viewer because they have been replaced by more robust mechanisms or they no longer have any server-side support and so are redundant
  • A complete rationalisation of the inventory code within the viewer to  more closely couple functions with their actual purpose, followed by a refactoring of the code to make it easier to maintain going forward.

It had originally been indicated that the first part of this work might appear within a project viewer before the end of 2015. However, as it is utilising HTTP, it has been delayed pending the release of the HTTP updates viewer.

It is now anticipated that once the HTTP updates reach release status, the initial phase of the inventory work will be released and allowed to progress through to a release status and gain adoption by TPVs. Once this has been done, the Lab will start removing legacy APIs from the simulator code.  One consequence of this will be that very old viewer versions which do not support the Advanced Inventory System (AIS v3) code updates (which have been available in most recent viewer releases for some time),  will no longer be unable to log-in to SL as a request of inventory load failures.

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

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 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.

 

SL project updates 16 2/2: SBUG / TPVD and 64-bit official viewers

Furillen; Inara Pey, December 2015, on FlickrFurillen (Flickr) – blog post

The following notes are primarily taken from the Server Beta User Group meeting of Thursday, January 14th and the TPV Developer (TPVD) meeting held on Friday, January 15th, 2016. A video of the meeting is included at the end of this report, my thanks as always to North for the video recording and providing it for embedding.

Server Deployments – Recap

There was no deployment to the Main (SLS) channel on Tuesday, January 12th. On Wednesday, January 13th, all three RC channels received the same sever maintenance package comprising:

  • 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.

RC Server Deployment Week #3

The RC server deployment scheduled for week #3 (week commencing Monday, January 18th), should include the feature request for llGetObjectDetails ( myKey, [OBJECT_REZZER_KEY] ), which 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).

SL Viewer Updates

[00:30] The Maintenance RC viewer, version 4.0.1.310054, was promoted to de facto release status on Friday, January 15. This view comprises some 38 fixes and improvements, including updates for some regressions introduced into the viewer with the previous release viewer, and some CEF bugs.

The Project Azumarill HTTP updates RC viewer and the Vivox voice updates RC viewer have been merged into a single release candidate, version 4.0.1.309943, release on Thursday, January 14th, 2016. This is expected to be updated in the next week to deal with a further issue, after which it is anticipated it will be promoted relatively soon to the de facto release viewer.

[01:43] The Quick Graphics RC (Avatar Complexity and graphics presets) is still undoing further refinement, particularly in the way that Avatar Complexity is calculated as a result of feedback provided by users testing the current RC version (4.0.1.309320 at the time of writing).

[0213] There is an update to the Oculus Rift project viewer (3.7.18.295296 at the time of writing) in progress, but no ETA on when it will appear.

Project Bento (Avatar Skeleton Extensions)

Main update: Project Bento User Group update 2 with audio

Issues with the Bento project viewer are viewed as a priority by the Lab. However, no time frames are being set for updates as the project is very much still in beta on Aditi.

There will be a “show and tell” event on Aditi on Tuesday, January 19th, where content creators working the new avatar skeleton extensions will be demonstrating their work for an upcoming episode of The Drax Files World Makers, which takes a look behind the scenes at the project.

CEF and 64-bit Official Viewers

[12:00] The switch to CEF has forced the Lab to re-think its position on 64-bit viewers. Essentially, the CEF code comes as a package, and those producing it ceased supporting Mac 32-bit a while ago (so CEF on the Mac viewer from the Lab is actually a release or so behind the version on Windows).

As a result, the Lab has started on a 64-bit viewer build project, which includes both Windows and Mac. It is possible that as a result of this, and once the 64-bit versions of the viewer are ready to go, the Lab may cease in offering a 32-bit Mac version of the viewer (obviously Windows will continue to be offered in both 32-, and 64-bit flavours).

The 64-bit versions of the official viewer will include 64-bit specific contributions from TPV developers, and Oz has also requested that a number of other open-source contributions which have been languishing since submission are folded into the project.

Aditi Log-in Issues and Inventory Syncing

[06:40] There are still issues being experienced by some people when logging-in to Aditi, which see them redirected to a “safe” zone (most frequently ACME H), rather than to their last log-in point. This is still subject to investigation by the Lab.

The new process for inventory syncing (see my report from 2015 week #52 for full details) between Agni and Aditi still has yet to be implemented. In essence, once this comes into effect, a password change will no longer trigger any syncing between your Agni and Aditi inventories. Instead, logging-in to Aditi will flag your account for inventory syncing. This takes place overnight (Pacific time), and cause your Agni inventory to be merged with your Aditi inventory, rather than overwriting it, thus preserving content unique to your Aditi inventory.

In the meantime, if you need your inventories syncing between the two grids, file a support ticket requesting a manual synchronising of inventories.

Continue reading “SL project updates 16 2/2: SBUG / TPVD and 64-bit official viewers”