SL projects update 14 (1): CHUI, SSB, and getting immersive

The best laid plans of mice, men and Linden Lab gang aft a-gley…

Back in my week 12 update, I reported on the Lab’s hoped-for deployments, viewer-wise in the upcoming weeks, noting that if all went well, CHUI would reach the release viewer late in week 13, and open the door for Server-side Baking to move to the Beta viewer at the start of week 14 – possibly even on April 1st (and no, that wasn’t an early April Fool’s joke from Oz!).

However, a couple of things have come up which are tweaking things slightly.

Communications Hub User Interface

There are a number of unresolved issues with CHUI, not all of which might necessarily prevent the code moving to the release channel, but some of which do have  significant performance / useability impacts, such as:

  • CHUIBUG-132 – Frequent performance issues on recent CHUI builds – fast timers show problem is in “URL Complete”
  • CHUIBUG-183 – cancelling an inventory search before the search is complete results in blank inventory contents (issue thought to be the result of a refactoring of the inventory code which is included with the CHUI code)

As a result, there was a further release of the CHUI beta viewer on April 1st (3.5.0.273174), which was followed by a further development viewer update (3.5.1.273259) on the same day.

Server-side Baking

Server-side appearance baking - no beta viewer just yet
Server-side appearance baking – no beta viewer just yet

It had been hoped that the viewer code for SSB would move to the beta channel once CHUI had moved to the release channel. As CHUI is now remaining in beta for a while longer, the move with SSB has been delayed.

In terms of SSB’s viewer beta run, LL are re-assessing the time frame. Again, on March 22nd, Oz Linden suggested that the beta run would be between two and four weeks and liable to sway towards the latter – with the caveat that a lot depends on issues / bugs which are found during the beta run. The current thinking at LL appears to be more pragmatically focused on seeing what occurs during the beta run, rather than pinning matters to a firm timescale – as such, SSB is liable to be in beta for around two weeks, possibly longer.

However, in terms of the server code, the plan remains to cut-over to the new server code capability after the SSB code has reached the release channel of the SL viewer – although again, it is possible some initial testing regions may be running on Agni prior to the SSB code appearing in the release viewer. Until now, LL have indicated that the server-side deployment will be gradual, again as indicated in my week 12 notes linked-to above; however, exact plans still have to be confirmed within the Lab, so this may well also be subject to change in the future.

One issue with the SSB server-side code is that crossing from an SSB-enabled region to a non-SSB region triggers the need for a manual rebake (going from a non-SSB region to an SSB-enabled region will trigger and automatic rebake), and some concern has been raised that this might cause some upset as the SSB code is deployed. However, and as Oz Linden points out, manual rebakes are currently a fact-of-life on SL, and as such, this is unlikely to be seen as a reason for an immediate deployment of SSB right across the grid; nor does it warrant time being spent on ensuring rebakes are handled automatically during such region crossings as once server-side deployment does commence, the issue is liable to be relatively short-lived.

Oculus Rift and Leap Motion

The Oculus Rift headset has been garnering a lot of interest. While still very much under development, the headset has already gained considerable support from the likes of Valve Software and other game-makers. This has inevitably lead to some asking whether LL have their eye on the technology.

Whether they have or not is unclear. What is clear, and while not quite the same, is that there has been some informal experiments with the Leap Motion system, courtesy of Simon Linden, as reported on in the SL blog and also in these pages.

Commenting on the Leap Motion work which chairing the Open-source Dev meeting on monday April 1st, Oz Linden said, “If an open source dev wanted to pick up what Simon started, that would be great. That was a side project of his, and right now we don’t have time to do much more with it internally.”

The code for the work Simon has completed was also made available when his experiments were made public – so if anyone is up for the challenge, the links are still live!

SL projects update week 12 (3): viewer, CHUI, SSB, materials and releases

SL Viewer Updates

The SL beta and development viewers saw end-of-week updates in week 12, with the beta viewer rolling to release 3.5.0.272486 and the development viewer 3.5.1.272521, both on March 22nd.

The beta update is primarily focused on CHUI, and may be the final beta release for CHUI before the it appears in an official release version of the SL viewer (see below).

On March 20th, the Sunshine project viewer (Server-side Baking) updated to release 3.5.0.272211, which may be the last releases of the SSB code as a project viewer prior to the code arriving in the SL beta viewer – see the SSB section of this report (below).

Communications Hub User Interface (CHUI)

As indicated above, the Lab is hoping that CHUI, the Communications Hub User Interface, is now in its final beta viewer run with the release of 3.5.0.272486, and that the code should be appearing in the release version of the SL viewer, possibly later in week 13 (week commencing Monday 25th March).

CHUI: probably making a final appearance in the SL beta viewer prior to appearing in the release viewer
CHUI: probably making a final appearance in the SL beta viewer prior to appearing in the release viewer

However, TPVs are still considering how best to tackle CHUI in terms of integration and deployment in their viewers. Part of the problem here is that for some TPVs, the CHUI user interface changes conflict with changes the TPVs have themselves made, and so consideration needs to be given as to which parts of the UI updates and changes a given TPV wishes to adopt. A wider issue, however, is that CHUI also includes a large about of v3 code refactoring, all of which needs to be considered for implementation into views, particularly those which are v3-based.

Further, as most TPVs have been focused on SSB updates, it may take a while before CHUI itself appears either in whole or in part, in some third-party viewers.

The CHUI updates don’t only impact TPVs – there is a knock-on effect with some of the upcoming changes / code contributions flowing into the SL viewer code as well. For example, the viewer side of the request teleport feature (STORM-1838), which I originally commented on in week 4, has been delayed while it is re-worked in light of CHUI-generated changes.

Server-side Baking

Viewer-side SSB Code

Following-on from the recent pile-on / load tests carried out using the official viewer (Thursday March 14th) and Firestorm (Friday March 15th), the Lab believes that the viewer side of the code is doing “quite well” in testing, with both tests recording very similar results, including hitting the same problems related to inventory fetching / rezzing issues for attachments.

As a result of this, the Lab have been looking at releasing the SSB viewer code to the SL beta viewer (with CHUI integration) on or around April 1st (week 14). However, the discovery of a bug with the latest version of the SSB project viewer code ( version 3.5.0.272211), may delay matters.

SUN-57, raised by Tonya Souther, reports a fix for earlier issues (non-public JIRA SH-3941 and SH-3954), now appears to cause avatar bake fail issues when running the viewer-side SSB code on regions using the current avatar baking mechanism. Whirly Fizzle has been able to reproduce the issue when using pre-saved outfits in her My Outfits folder, and describes it thus:

Replace outfit with a ready saved Outfit A from My Outfits folder (Right click -> Replace current outfit). Relog Usually, but not always, I will see part of my baked textures as grey with this certain outfit A. This session my torso texture appears grey to me. My torso fully rezzed without needing to rebake in about a minute.

[Now] Replace outfit with Outfit B, which is a ready saved outfit from My outfits folder (Right click -> Replace current outfit).Outfit B bakes fast & looks correct to myself.

Wait 30 secs or so [and] replace outfit again with outfit A. My avatar will then show the correct head and lower baked layers from outfit A but my upper/torso layer will be that of outfit B.

The SUN-57 issue, as defined by Whirly Fizzle: left - Outfit A from her My Outfits folder replaces whatever she was previously wearing, and appears correct; centre - after a relog, she repalces Outfir A with Outfit B, and again, everything appears correct; right - she replaces Outfit B with Outfit A, but her skin fails to bake correctly, the head and legs showing the skin associated with Outfit A, the torso still showing the skin from Outfit B (shown naked for clarity) - images courtesy of Whirly Fizzle / JIRA SUN-57
The SUN-57 issue, as defined by Whirly Fizzle: left – Outfit A from her My Outfits folder replaces whatever she was previously wearing, and appears correct; centre – after a relog, she replaces Outfit A with Outfit B, and again, everything appears correct; right – she replaces Outfit B with Outfit A, but her skin fails to bake correctly, the head and legs showing the skin associated with Outfit A, the torso still showing the skin from Outfit B (shown naked for clarity) – images courtesy of Whirly Fizzle / JIRA SUN-57

Whirly further reports that the issue doesn’t resolve itself after several minutes, and rebaking using CTRL-SHIFT-R has no effect (other than reducing her to a cloud in other people’s view), while using Edit Appearance also fails to clear the problem.

Again, this issue only occurs when using viewers incorporating the latest SSB code, and only on regions which are not themselves running the server SSB code. It is of concern because the viewer code is designed to work with both the current baking mechanism and the upcoming SSB mechanism, and will be expected to do so during the SSB deployment to the main grid, when there will be a period when both the “old” and “new” baking services will for a time be running side-by-side as the latter is gradually rolled-out.

Continue reading “SL projects update week 12 (3): viewer, CHUI, SSB, materials and releases”

SL projects update week 12 (1): server releases, SSB and more

Sever Deployments for Week 12

Second Life Server (SLS)

On Tuesday March 19th, the Main channel received the server maintenance package which had been re-deployed to Magnum in week 11. As with the Magnum re-deploy, it excludes the fix for VWR-786 while LL go “back to the drawing board” to try to correct issues. However, it does include the following two fixes:

  • BUG-1612: region Owners and estate managers finding they are unable to teleport back to their region after disabling direct teleports to the region
  • SVC-8019: region visibility delays following region restarts.

The release notes for the deployment are available on the SL wiki, as usual.

Release Candidate Channels

On Wednesday March 20th, the Release Candidate channels should receive the following updates:

  • BlueSteel and LeTigre: should receive the same updates as deployed to the SLS channel on Tuesday March 19th, but otherwise retain the same updates received in week 11 – release notes (BlueSteel)
  • Magnum: should receive further updates to Andrew Linden’s interest list work, as per the release notes.  Specific interest list bug fixes included with this update comprise:
    • Updates for objects that are out of view are delayed for a maximum of 5 seconds, at which point they will be sent (mitigates BUG-1779)
    • Fix for “No object updates from vehicles after some region crossings” (BUG-1814)
    • Fix for “Agent appears in incorrect position to other agents after being moved by a sim teleporter” (BUG-1795).

Server-side Baking

As reported in week 11, the second official Server-side Baking pile-on / load test appeared to go well on Thursday March 14th. Speaking at the Content Creator’s User Group meeting, SSB project lead Nyx Linden reported:

Looks like things are going well overall – the back-end services are performing well. There are still some inventory and attachment rezzing issues, but these are believed to not be regressions from current limits.

A few reports of issues, some of which we have fixes for, others we’re investigating, and we’re looking at what it would take to fix up the systems that were falling over … there were a couple of new bug reports we’re investigating.

A further SSB pile-on / load test conducted in Friday 15th March, but exclusively with the Firestorm viewer pre-release with SSB support. Numbers at the Firestorm test were roughly the same as those for the “official” test, and overall, the outcome was the same – much lower reported SSB issues, but similar problems with outfit attachments rezzing from inventory (or rather, failing to), which was common to both parts of the test.

The Firestorm SSB pile-on  / load test, March 15th
Peoiple gather for the Firestorm SSB pile-on / load test, March 15th

The inventory issues have themselves become more of a focus of investigation outside of SSB itself (attachments aren’t affected by the SSB code changes, which  relate directly to the likes of skin, shape and clothing layer changes. While the inventory issues were thought to relate solely to Aditi, Nyx indicated that the problem is likely common to Agni as well. commenting:

We were seeing similar failures in inventory, etc on both the old pipeline and the new pipeline, and in areas that we didn’t change. So if we repeated the test on Agni we think we’d see similar failures. We’re looking at the root causes, but attachment rezzing failures won’t necessarily block our first release … We’re looking at the inventory & attachment issues and where their root causes are.

Expect further updates on the latter issue as they become known.

HTTP Testing

All of the test regions for Monty Linden’s upcoming HTTP updates are now up-and-running on Aditi, and available for public access (allowing for the caps on avatars in the primary test regions). The regions are:

As noted in previous project reports, Monty is keep to have TPVs and scripters test the capabilities in order to gather more comprehensive data on his work.

Continue reading “SL projects update week 12 (1): server releases, SSB and more”

SL project updates: week 11 (2): Server, SSB testing and HTTP news

Update Match 18th: The “mesh only” HTTP test regions, referred to as “coming soon” in the HTTP section of this report are now online on Aditi, and are called MeshTest2 (DRTSIM-203), MeshTest2A (DRTSIM-203A) and MeshTest2H (DRTSIM-203H), respectively. In addition, the sandbox areas (unrestricted access) are also now available as Sandbox HTTP (DRTSIM-203), Sandbox HTTP A (DRTSIM-203A) and Sandbox HTTP H (DRTSIM-203H).

Server Deployments

The planned deployments for the week went ahead as scheduled. Namely:

  • On Tuesday March 12th, the Second Life Server (SLS) Main channel received Baker Linden’s large (as in complex) object rezzing project, designed to improve region performance when rezzing large objects – release notes
  • On Wednesday March 13th, the BlueSteel and LeTigre Release Candidate (RC) channels received a server maintenance package, intended to fix a common crash mode – release notes
  • Also on Wednesday March 13th, the Magnum RC channel received an update to the server maintenance package deployed in week 10, with further improvements / fixes. These included the removal of the fix for VWR-786, which rather than correctly fixing the known issue (IMs to friends not respecting their privacy settings) resulted in all IMs to non friends returning the “User is not online” message, regardless as to whether the recipient was online or not. Release notes for the package are on the SL wiki. The Lab, according to Maestro Linden, is going to have to, “Go back to the drawing board,” to resolve this problem.

As I’ve mentioned in past reports, the aim of this “large object” rezzing project from Baker Linden is to improve how complex objects (those which have a lot of scripts and / or a large file size), with the focus of the work moving the parsing of object files onto a background thread in order to prevent the simulator being choked and performance spiking when such objects are rezzed. As such, the work applies to both in-world objects and attachments, with mesh potentially being a primary beneficiary of the changes. The thought is that the new code may also help frustrate griefers, as the simulator FPS should be better when multiple scripted objects are being rezzed.

SL Viewer

The SL beta and development viewer were both updated on March 14th. The beta viewer moved to release 3.5.0.271843, with updates primarily aimed at CHUI, as anticipated. The development viewer moved to release 3.5.1.271846, and remains broadly in sync with the beta version of the viewer.

Vivox  Updates

Alongside the FMODex (sound system) updates which will be forthcoming after the formal release of CHUI as mentioned in part 1 of this report, Vivox (the SL Voice service) is also due to be updated to version 4.5. Like FMODex, this is unlikely to happen until after CHUI has reached a formal release., but once implemented, this should result in an improvement in Voice quality.

Mesh Deformer

There is still no news on this. Both the issues relating to avatar shapes and weighting are still awaiting internal resources at LL. As such, there is no timeline as to when any movement might be seen on this project.

Interest List – Issues and Further Updates

More interest list updates on Aditi and likely heading for a Release Candidate channel in week 12.
More interest list updates on Aditi and likely heading for a Release Candidate channel in week 12.

The following fixes, related to the interest list code, should be in an RC deployment in week 12 (week commencing Monday March 18th):

  • A fix issue where you ‘lose track’ of a vehicle after a region crossing
  • A fix for BUG-1795 (“Agent appears in incorrect position to other agents after being moved by a sim teleporter”), which should see an end to avatars still appearing in view after they have used a teleport system
  • A fix for the issue where object moving off-camera would suddenly ‘snap’ into place when you turned your camera so they were in your field-of-view. Whereas up until now, the new interest list code has not sent any updates for such objects, the fix to be deployed in week 12 will once again allow updates to be sent to the viewer, but at a much lower rate than before the interest list code was originally deployed.

The code with these updates is currently available for testing on two regions on Aditi: Solariam (rated: Adult) and Tischeriidae (rated: Moderate). This code also includes updates to improve object rendering (particularly with the viewer set to low bandwidths) and to object cacheing as well, as noted in the first part of this report, and those wishing to do so are encouraged to do so, although testing any improvements to vehicle regions crossings might be contingent upon being Adult verified.

Server-side Baking (SSB) Pile-on / Load Test

The second SSB pile-on load test took place on Aditi on Thursday March 14th, immediately following the Server Beta User Group meeting. The test was undertaken using the latest version of the Sunshine project viewer and appeared to be broadly satisfactory, involving both users and a fair few LL personnel – Nyx (x2, as he had his alt there), Simon, Maestro, Monty, Dan, Don, Log, and others. As with the original test, this took place on two regions – one running the current baking system, the other running the new service. Participants were asked to change outfits using the current service, so that the project team could get some baseline / comparison stats, before everyone moved over to the “new” service on the adjoining region.

Continue reading “SL project updates: week 11 (2): Server, SSB testing and HTTP news”

SL project updates week 11 (1): server deployments, viewer, and interest list updates

Server Deployments

Second Life Server (Main channel)

On Tuesday March 12th, the Main channel received Baker Linden’s large object rezzing project which had been deployed to BlueSteel and LeTigre in week 10. This project is designed to improve simulator handling of “large” (as a file size / complexity, rather than physical object size) so that the simulator does not stall / choke when handling one or more such objects. makes sim performance smoother while objects are being rezzed. Further details on the project are in my week 10 update, and the server release notes are available in the SL wiki.

Release Candidate Channels

On Wednesday March 13th, the Release Candidate channels should be updated as follows:

  • BlueSteel and LeTigre: both of these channels should be receiving the same server maintenance package, intended to fix a common crash mode – release notes
  • Magnum should receive an update to the server maintenance package it received in week 10, with further improvements / fixes. These include the removal of the fix for VWR-786, which rather than correctly fixing the known issue (IMs to friends do not respect their privacy settings) resulted in all IMs to non friends returning the “User is not online” message, regardless as to whether the recipient was online or not. Release notes for the package are on the SL wiki

SL Viewer

There has been no major viewer movement since the last update in week 10.

CHUI, the Communication Hub User Interface

CHUI looks set to be merged-in to the Snowglobe code, with Oz Linden stating he was hoping to start on this on Monday 11th March. There are concerns as to how LL’s ongoing work with the viewer might impact TPVs going forward. As it is, CHUI is liable to remain in the SL beta viewer for a while (and there is expected to be one more CHUI release into beta, as perviously noted).

Materials Project

Work is continuing on clearing the current issues within the viewer code, with a further push of the non-public viewer expected this week, which may resolve some of the problems.

The Potential LL Roadmap for Viewer Releases

While things are always in a state of flux, the potential order of viewer releases from LL’s perspective is currently veering towards:

  • Materials is now unlikely to “be seen” until after the code has merged with the CHUI code  – this follow-on from the SSB code currently undergoing a merge with CHUI and the move to merge CHUI with the Snowglobe code mentioned above
  • This does not mean that a materials project viewer will not appear prior to CHUI reaching the SL release viewer; rather it means that when a materials project viewer appears, it is likely to have CHUI incorporated into it
  • That said, materials will likely only arrive in the release version of the SL viewer after CHUI has been formally released and (most likely) SSB has been deployed
  • Other updates – FMODex is currently awaiting CHUI as well, but has no clear release date; the same is true of the Mac Cocoa project. Currently, it appears as if these are unlikely to reach mainstream release until after CHUI has been formally released.

Most TPVs are currently focusing on the Server-side Baking (SSB) integration, as this has a significantly greater impact on viewers in terms of the impact on  users than CHUI (although the latter is by far the most complex update as it involves a lot of code refactoring as well as CHUI updates). As such, it is likely to be a while before CHUI starts appearing in the majority of third-party viewers (although Kokua has already merged with it, and now has the CHUI code in the beta branch of its code).

Merchant Outbox Project Viewer

As reported over the weekend, Linden Lab has re-issued the Merchant Outbox project viewer, updated to the 3.4.4 viewer code, but which does not incorporate CHUI. This release is purely to assist merchants who are encountering issues in migrating to Direct Delivery now that the initial retirement of Magic Boxes has been announced.

Those who have / are encountering problems in migrating to Direct Delivery can obtain the viewer from the Alternate Viewers wiki page.

This project viewer will be withdrawn at some point in the future, and will not impact other viewer releases.

Server-side Baking

A further reminder that there will be a further SSB pile-on / load test on Thursday March 14th, following-on, as with the last test, from the Server Beta meeting on Aditi. For wishing to participate:

  • The test is liable to be in much the same format as the first test
  • Those participating should be running the latest version of the official SSB project viewer (3.4.5.271419)
  • Participants should have a number of outfits of system clothing, preferably with multiple layers, which they can swap between during the course of the test. Library outfits are acceptable, but LL are keen for people to use their own outfits to add greater weight to the tests
  • Clearing the viewer cache prior to the test is suggested, but not an absolute requirement.
The first SSB pile-on / load test (image courtesy of Latif Khalifa
The first SSB pile-on / load test (image courtesy of Latif Khalifa

The project also seems to be going through a further informal name change: originally referred to as “Server-side Baked Texture Generation & Storage”, the project has generally been shortened to “Server-side Baking”, but is now tending to be referred to as “Server-side Appearance project”. I’ll be continuing to refer to it as “Server-side Baking” or “SSB” for ease of reference.

Continue reading “SL project updates week 11 (1): server deployments, viewer, and interest list updates”

SL project updates: week 10 (3): viewer, CHUI, SSB and HTTP work

SL Viewer Beta and Viewer Development  and CHUI

There have been updates to both the beta and development viewers. The beta viewer moved to release 3.5.0.271345, and development to 3.4.5.271386. Both releases were focused on CHUI, and according to Oz Linden, “Right now they are almost identical; different only in the viewer number I believe.” He went on to say, “There is significant uncertainty as to when CHUI will come out of the beta channels, and it’s very likely that will remain true for a while yet – that is, that the two will remain pretty similar.”

With one CHUI update having just gone to the beta viewer, the Lab anticipates there will be at least one more update for the project while in beta before it makes any more to the viewer release channel.

Server-side Baking (SSB)

Server-side Baking saw the release of a further viewer update – 3.4.5.271419 – on March 7th, which was partially in response from information gained from the first public pile-on / load test for SSB, held on Thursday February 21st.

Commenting on the ongoing work to integrate SSB into TPVs at the TPV Developer meeting on Friday March 8th, Oz linden thanked the TPVs for their work to date on trying to integrate the viewer-side SSB code into their offerings in order to keep the project on track. “I’m very pleased to say that right now it does not look like support for it [SSB] in third-party viewers is going to end up being the limiting factor on when it can be deployed,” he said, although he did caution against showing any complacency in getting the code to a deployable condition.

Merge with CHUI

Also at the TPV Developer meeting, Nyx indicated that overall, the project viewer for SSB is becoming more and more stable, and that his team now has and initial merge with the CHUI code, which they are going to be “hammering on”, prior to pushing it to the internal Sunshine branch. As such, the most recent release of the SSB project viewer is possibly the last push prior to CHUI appearing in the viewer.

Given there are concerns over the merger and its possible impact on TPVs, Nyx is going to see if it is possible to maintain a side branch of the SSB viewer code which does not include the CHUI merge, which could continue to receive fixes and make it easier for TPVs to obtain them, however, until this has been looked into in more detail, he is unwilling to commit to how easy it would be to achieve and maintain – or how long for.

Second Pile-on  / Load Test

Serer-side baking - further testing on March 14th
Serer-side baking – further testing on March 14th

Attending the Server Beta meeting in week 10, Nyx Linden announced that the updated viewer will be required  for a further pile-on / load test, which has been scheduled for Thursday March 14th. The test is liable to be in much the same format as the first test, and those wishing to participate are advised to attend the Server Beta meeting on Aditi ahead of time (the meeting commences at 15:00 SLT on Thursdays).

Those wishing to take part in the test should also ensure they are using the latest version of the SSB project viewer linked-to above, as this as this has been specifically set-up to enable correct logging of data, etc., for the test. Nyx hopes that the latest updates to the logging parameters, coupled with the recent inventory fixes applied to Aditi should do much to both lessen the impact of Aditi issues should they occur and make them easier to identify when analysing feedback. However, Nyx suggested that those who have experienced Aditi inventory issues and who wish to join-in the test on March 14th should log-into the Sunshine test regions ahead of time and confirm that they can access their inventory using the project viewer.

Continue reading “SL project updates: week 10 (3): viewer, CHUI, SSB and HTTP work”