SL projects update week 9/3: viewer, Vivox and Fitted Mesh

Server Deployments: week 9 – recap

As always, please refer to the server deployment thread in the forums for the latest updates / changes.

On Tuesday February 25th, the Main channel was updated with the server maintenance package previously on all three RCs, which comprises the following:

  • Fix for BUG-5034 “If an EM restarts a region and then teleports out immediately, the EM will disconnect just after teleport”
  • Fixed a rare case in which e-mails read by LSL scripts immediately after rez or region change would sometimes be missing the message body
  • Fixed some crash modes.

On Wednesday February 26th, the BlueSteel and LeTigre Release Candidate channels were updated with an infrastructure update, with no functional changes. The Magnum RC received the same infrastructure update and had the server-side AIS v3 code is enabled. As noted in part 1 of this report, the new AIS code is designed to improve performance and reliability when changing outfits, but is reliant on new viewer code, which is currently available from the Lab in the Sunshine Project viewer (of which mor below), and will doubtless start appearing in TPVs soon.

While no details were given, the infrastructure updates deployed to the RC channels are apparently system changes to make simulators easier to manage.

TP Developer Meeting Video

A TPV developer meeting took place on February 28th. The core items discussed in the meeting are reported below, with timestamps in the relevant paragraphs indicating the point at they are discussed in the video embedded here. My thanks as always to North for the latter.

SL Viewer Updates

Release Candidates

  • The “Project Interesting” interest list RC  viewer updated to version 3.7.3.287127 on February 26th
  • The Maintenance RC viewer updates to version 3.7.3.287263 on February 27th.

[0:29] These updates put both of these viewers on a par with the current release viewer, and both are doing “well” in terms of low crash rates, but as Oz Linden said at the TPV Developer meeting on Friday February 28th, “it’s still early days”.

Upcoming Release Candidates

[0:43] The Google Breakpad viewer is expected to reappear as a release candidate “pretty soon”. The last version of this viewer had significant issues related to Windows XP, and so a “different tack” will be taken to handling XP and older versions of Windows with the next update, XP itself having a “truly horrific” crash rate for the viewer. However, and to ease any concerns,  the “new tack” doesn’t involve blocking Windows XP systems from accessing Second Life.

[2:33] The Breakpad update is described as being “important” for TPVs to pick-up and include in their own code, in order to ensure viewers are all reporting stats in the same manner.

[6:48] Both the Sunshine (AIS v3) project viewer and the Merchant Outbox project viewer are expected to move to release candidate status very shortly. These are described as being in the “last stages of the QA pipeline”, and so will be entering the viewer release channel,  once again increasing the number of RC viewers vying for promotion.

Project Zipper Viewer

[7:20] On Wednesday February 26th, the Lab issued the “Zipper” project viewer (version 3.7.2.286810), designed to speed-up viewer installation time (cutting it by roughly 50% in a clean install on my own PC) – from 35.6 seconds to  16.4 seconds. Most of this appears to be the result of compressing / combining files, and there have been questions raised on whether doing so might result in an actual performance hit.

It is anticipated that this viewer will also be shortly rebuilt as a release candidate viewer in the release channel.

Other Viewer Projects

  • [9:12] Group Bans – as I’ve noted in part 2 of this week’s report, the viewer-side code for Group Ban (lists) should be appearing as a project viewer in week 10, ready for the Group Ban functionally to be tested on Aditi
  •  [10:07] Oculus Rift – the Rift viewer is still with LL’s QA team.

Continue reading “SL projects update week 9/3: viewer, Vivox and Fitted Mesh”

SL projects update week 9/2: group bans update

Group Bans, or Group Ban Lists as I’ve tended to refer to them, as some people appeared confused by the term “group bans” and have taken it to mean banning groups from parcels or regions, is nearing a status where it will be ready for testing on Aditi.

“I’ve gotten the backend almost ready for release (I’m waiting on some builds at the moment),” Baker Linden said of the server-side element of his work, while speaking at the Server Beta Meeting on Thursday February 27th. Baker is hoping that the viewer code will be appearing in a project viewer in the course of the next week.

Recap on Functionality

Baker Linden has been working on the ability to ban people from groups for some 10 months
Baker Linden has been working on the ability to ban people from groups for some 10 months

While discussing the project status, Baker gave a recap of the new functionality:

I’ve talked many previous times about group bans, and now that it’s finally boarding the release train, I’d like to just do a quick overview of what known issues are and what it can do:

    • Group Ban provides the ability to permanently prevent a resident from joining your group.  Currently, the limit will be set to 500 bans per group
  • By default, only Owners will have this ability set
  • Owners must then grant the ability to the roles they want to have manage the ban list
  • You can ban members from the “Members” tab of the group panel, and pre-emptively ban residents through the new “Banned Agents” tab
  • The “Roles” tab will allow you to grant the “Manage Ban List” ability to a role.  when doing this, keep in mind that allowing this ability will also automatically grand the “Eject Members from the Group” and “Remove Roles from Members” ability
  • You will NOT be allowed to disable the “Eject” and “Remove Roles” ability while “Manage Ban List” is allowed
  • You will also be able to (hopefully) batch up bans in groups of 100 at a time (through the “Banned Agents” tab). [It’s the] same as inviting residents; it’s the same code, I just refactored it so I could use it for bans too.

In the initial release, group members can only be banned from within the group floater (right-click on a name and click the Ban button), it will not be possible to right-click on a name in group chat and ban the individual; however, this may be added in the future, as it is considered a relatively straightforward addition.

Group Ban will introduce a new tab to the Groups floater, called "Banned Agents"
Group Ban will introduce a new tab to the Groups floater, called “Banned Agents”, allowing group owners and designated roles to ban people from joining a group

A FAQ has been produced, purely for the purposes of testing on Aditi, but which also helps further explain the group ban functionality. This can be found here, but do note that:

  • The instructions apply to the yet-to-be-released project viewer
  • The final functionality of group bans may vary from that described in the FAQ as a result of bugs or issues arising during testing.

In order to function correctly, the ban ability requires that the Eject and Remove Roles are enabled, as Baker explained above. To make this clear, when a group owner grants a role the ability to ban people from the group, a pop-up will be displayed reminding them that Eject and Remove Roles will also be granted. Similarly, when the ban ability is revoked, a message is displayed confirming that both Eject and Remove Roles have also been revoked.

Known Issues / Initial limitations

  • There may be an initial issue with the new capability during initial deployment as the code starts to reach Agni, when there is the “new” and “old” server-side code running on different channels. This may result in someone being able to re-join a group after being banned, simply because the ban was executed on a simulator which does not have the new code. Obviously, once the code is fully deployed to Agni, this will no longer be a problem
  • There is a risk of some “overlapping” bans may not be processed as anticipated. For example, if two people have the ban role, and one bans users A,B, and C and the other C, D, and E at the same time, “C” should be banned, but there is a slight chance this may not be the case
  • If two (or more) people have the ban ability, then their own view of the group member list will not be updated to reflect bans made by others until such time as they refresh the list
  • The list will cap-out at 500 bans. When that limit is reached, someone with the ban ability must remove names from the list in order for new names to be added, otherwise further ban attempts will fail.

Group Bans represents some 10 months of work for Baker Linden, including a large amount of code refactoring on both the server and viewer sides. The capability still won’t be deployed to the main grid for a little while longer, but progress has now reached a point where more widespread testing should be taking place on Aditi, most likely starting in week 10 (week commencing Monday March 3rd). Deployment to the main grid will most likely remain a combination of resolving any unforeseen issues during the more widespread testing on Aditi and on how it takes for the viewer code to progress from project viewer to release candidate to release viewer.

SL projects update week 9/1: server releases, viewer updates

Server Deployments: week 9

As always, please refer to the server deployment thread in the forums for the latest updates / changes.

Main (SLS) Channel

On Tuesday February 25th, the Main channel was updated with the server maintenance package previously on all three RCs, which comprises the following:

  • Fix for BUG-5034 “If an EM restarts a region and then teleports out immediately, the EM will disconnect just after teleport”
  • Fixed a rare case in which e-mails read by LSL scripts immediately after rez or region change would sometimes be missing the message body
  • Fixed some crash modes

Release Candidate Channels

On Wednesday February 26th, the Release Candidate channels should be updated as follows:

  • BlueSteel and LeTigre should receive an infrastructure update, with no functional changes
  • Magnum should also receive the infrastructure update, and in addition have the server-side AIS v3 code enabled (the code having already been rolled-out to the grid – see the AIS section of my week 7 report). This code requires viewer-side updates to work (currently available as a project viewer), and should Improve performance and reliability when changing outfits (see my AIS reports in this blog).

SL Viewer Updates

HTTP Viewer Promoted

The HTTP viewer, version 3.7.2.286707 was promoted to the de facto release viewer on February 25th. This currently leaves just two RC viewers in the release channel: the Maintenance RC (3.7.2.286708) and the Interest List viewer (3.6.14.285213), both of which should  be rebuilt using the HTTP viewer code base in due course.

Sunshine / AIS Viewer

With only two RCs in the release channel, it is possible the Sunshine / AIS viewer may be moved to release candidate status this week. Given that the server-side AIS code is starting to be enabled on the main grid, this viewer could be on course to reach a release status in week 11.

Group Ban Lists

Baker Linden is currently filing for the server-side code to be deployed to Aditi, which he hopes will happen by the end of the week. In the meantime, he describes the status of the Viewer code as, “testing it for compatibility with old viewers and such. Once that’s stable and I know I didn’t break anything, I’ll start filing for the viewer to become a release candidate.”

Other Items

Region Restart Oopsie

The new on-screen region restart warning, accompanied by a sound and camera shake
The new on-screen region restart warning, accompanied by a sound and camera shake

A slight issue has come to light with the recently implemented new region restart alert, now active in the SL viewer and in the most recent updates to a number of TPVs. Essentially, the sound accompanying the 5-minute countdown (and which is played alongside the camera shake at the top of each minute in the countdown) is actually played in-world rather than locally.

The result is that if there are several avatars close together who are using viewers with the new restart alert code, the noise can either be very loud or something of a mess (particularly if some of those users have opted to set custom warning sounds within their viewer).

The fix is relatively straightforward, and will doubtless be incorporated into an upcoming viewer release. In the meantime, the Firestorm team have implemented their own fix ready for the next release of that viewer due in early(ish) in March, which will be the first version of Firestorm to incorporate the new code.

Pocket Metaverse Users Inadvertently Blocked at Weekend

There were a number of reports over the weekend that users on the iOS Pocket Metaverse third-party client were unable to log-in to Second Life, as a result of their hardware being blocked. This caused a number of forum posts on the subject, such as this one and this one, and some upset on Twitter.

It turned out the client was apparently presenting the wrong information to LL’s servers, triggering the hardware block. On becoming aware of the problem, the Lab immediately set about reversing the blocks, and the matter appeared to be cleared-up by the end of the weekend.

The Pocket Metaverse issue caused some users to complain on Twitter, prompting a resonse from Ebbe Altberg
The Pocket Metaverse issue caused some users to complain on Twitter, prompting a response from Ebbe Altberg

Kokua 3.7.1.30956: Fitted Mesh and refresh scene option

kokua-logoKokua, the SL and OpenSim v3-style viewer, updated on Tuesday February 18th to version 3.7.1.30956. With it came support for the Lab’s Fitted Mesh solution and the Facebook log-in hotfix.

As well as bringing the viewer up to parity with the Lab’s code base through to 3.7.1, this release also sees a set of updates from the Kokua team, the core of which can be summarised as:

  • The Mac version of the viewer (issued as a test version in January) is now available as a release version with this update, thanks to the help and support of Mac users
  • The Draw Distance slider on the status bar is now turned off by default as new users were apparently confusing it with a volume slider. It can be re-enabled via the debug setting ShowDDSlider (Advanced > Show Debug Settings)
  • The Windows version of Kokua now uses the FmodEx library for music streaming, and incorporates the avatar name in the title bar (port from Firestorm)
  • Opensim variable-sized regions and Aurora Sim regions are now supported
  • A number of issues with the UI have been resolved with assistance from CtrlAltStudio’s Strachan OFarrell.

Refresh Scene

Perhaps the most interesting update to Kokua with this release is a new Refresh Scene feature. This is primarily aimed at mitigating the missing prim issue, and can be accessed through both the Commands and Advanced menus or by pressing CTRL-ALT-SHIFT-R.

The Scene Refrsh option in the Command and Advanced menus
The Scene Refresh option in the Commands and Advanced menus

When selected, the option carries out a number of tasks:

  • Basic Shaders are deselected, increasing the viewer’s frame rate and allowing the viewer to more quickly pull-in the basics of a scene
  • A message is sent to the viewer log, allowing the viewer to run a little longer without the shaders
  • Basic Shaders are re-enabled to complete re-dressing the scene, which should now be correctly rendered.

Other Notes

There have been some reports in the comments following the release notes of issues running the 64-bit Linux version of the viewer on Ubuntu, which are apparently under investigation.

I did encounter initial issues running the viewer on 64-bit Windows using my Crash Test Alt, which saw the viewer repeatedly going non-responsive within a minute or so of logging-in. However, I confess to not having performed a clean install,  so this particular issue could have been as much my end as anything else. When I did perform a completely clean install, the issue went away. So if you do encounter issues, try a clean install, if you haven’t already.

All told, another nicely packaged update to Kokua, one which probably hides a lot more in the way of under-the-hood changes than might at first appear to be the case. The Refresh Scene option is an interesting approach to resolving the missing prim issue, and may well prove to have other benefits in the future as well.

Related Links

Viewer release summaries 2014: week 8

Updates for the week ending: February 23rd, 2014

This summary is published every Monday and is a list of SL viewer / client releases (official and TPV) made during the previous week. When reading it, please note:

  • It is based on my Current Viewer Releases Page, a list of  all Second Life viewers and clients that are in popular use (and of which I am aware), and which are recognised as adhering to the TPV Policy
  • By its nature, this summary will always be in arrears
  • The Viewer Round-up Page is updated as soon as I’m aware of any releases / changes to viewers & clients, and should be referred to for more up-to-date information
  • The Viewer Round-up Page also includes comprehensive links to download pages, blog notes, release notes, etc., as well as links to any / all reviews of specific viewers / clients made within this blog.

Official LL Viewers

  • Current Release version: no change
  • Release channel cohorts (See my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself):
    • HTTP RC updated on February 19th to version 3.7.2.286707 – core updates: DNS look ups changed; improvements to mesh uploads / downloads (download and release notes)
    • Maintenance RC updated on February 18th to version 3.7.2.286708 – core updates: assorted MAINT fixes (download and release notes)
  • Project viewers:
    • No updates

LL Viewer Resources

Third-party Viewers

V3-style

  • Kokua updates to version 3.7.1.30956 on February 18th – core updates: parity with LL code base through to 3.7.1; FmodEx implemented for Windows; “scene refresh” option in Graphics Preferences (helps with missing prims issue); Opensim variable region sizes & Aurora sim regions support; more (release notes)
  • Restrained Love viewer (Windows) updated to version 2.8.5.10 on February 22nd – core updates:  (release notes) – party with LL 3.7.1 codebase; RLV updates (release notes)

V1-style

  • Cool VL Stable version updated to 1.26.10.12; Experimental version to 1.26.11.12 and Legacy version to 1.26.8.49 all on February 22nd – core updates: backports of assorted updates from LL code base to all three versions (release notes)

Mobile / Other Clients

  • Group Tools updated to version 2.2.27.7 on February 20th – core updates: unknown, but possibly includes support for the new Group Tools Cleaner, released on February 21st and which helps with Group Tools clean installs (download page)

Additional TPV Resources

Related Links

SL projects news week 8/1: server, viewer and log-in issue PSA

My apologies for the late release of this update; things have been a little bit hectic, and I’ve been rushing to catch-up on posts and news.

Server Deployments: week 8 – recap

As always, please refer to the server deployment thread in the forums for the latest updates / changes.

  • As there was no update to the RC channels in week 7, there was no update to the Main channel on Tuesday February 18th.
  • On Wednesday February 19th, all three RCs received a new server maintenance package which comprised the following updates:
    • Fix for BUG-5034 “If an EM restarts a region and then teleports out immediately, the EM will disconnect just after teleport”
    • Fixed a rare case in which e-mails read by LSL scripts immediately after rez or region change would sometimes be missing the message body
    • Fixed some crash modes
Maestro Linden
Maestro Linden

The region restart issue (BUG-5034) was described in part 2 of my week 7 report.

Commenting on the e-mail issue during the Server Beta Meeting on Thursday February 20th, Maestro Linden said:

The other bug fix was for some obscure e-mail issue that Kelly found, where e-mails to LSL scripts would be missing their message bodies under very obscure circumstances. Nobody’s filed a bug report about that happening, so maybe nobody ever saw it regularly.

 In this case you’d see the e-mail, and see the subject but not the body. Or rather, I guess the body would be an empty string … I guess you’d only know if you had sent the e-mail yourself.

 According to Kelly, it would only happen during a very narrow time window as the sim was starting up, so I could imagine most people who saw it once just shrugging after the issue didn’t occur a second time.

SL Viewer Updates

  • The Maintenance release RC was updated on Tuesday February 18th to version 3.7.2.286708
  • The HTTP RC was updated on Wednesday, February 19th to version 3.7.2.286707
  • The Google Breakpad RC has been removed from the release channel, having completed this round of tests.

Group Ban Lists

There’s not much more to report here than last week. Commenting on the overall status of the work at the Simulator User Group meeting on Tuesday February 18th, Baker Linden said:

I’m in the last stages of code cleanup and ensuring there aren’t any major bugs (which QA will surely find) and I’m wrapping everything up for deployment to Aditi this week (server-side stuff only right now).

 It’s not clear if the server code did reach Aditi, or whether it may appear in week 9. Commenting on the status at the Server Beta meeting later in the week, Maestro Linden indicated the code was “inching closer to Aditi”, and will be available “as soon as we’re confident that the backend host and simulators are playing nicely. If there’s a bug which is definitely viewer-only, that’s not a blocker for Aditi at all.”

Materials Handling

Scripted Control

The ability to control materials (normal and specular maps) via scripts has been an oft-discussed topic in User Group meetings and the subject of MATBUG-359.  The subject was again raised at the Simulator User Group Meeting on Tuesday February 18th, to which Simon replied, “I’ve been looking into that, and hope to get to it soon, but it keeps getting pushed back with other more immediate issues cropping up.”

One of the concerns with scripted control of materials maps in that if manual changes are made to materials too quickly in the build floater, they will often revert, as if the server is unhappy in receiving  too many quick updates. Commenting on this, Simon added:

That’s an interesting point and something we’ll have to look at after doing the basic scripting change.   If it’s somehow worse than the current scripted texture changes, we’ll have to have some sort of throttle to slow it down.

The question was raised on why normal and specular maps appear to work different to diffuse (texture maps), with the server better able to handle fast changes to textures when compared to normal and specular maps. Simon indicated that both normal and specular maps are handled differently in order to minimise the impact of multiple usage.  Expanding on this is terms of scripted control, he went on:

I was just looking at the materials code, and the complication this has compared to regular textures is how materials have their own layer of special data packaging instead of a just a UUID on a face.  I’m not sure yet how script access is going to thrash that data or not.

There also may be something of a cost / benefit issue within the Lab when it comes to adding scripted control to materials – would the potential uses be broad enough to justify the time required to avoid issues of data thrashing, introducing throttles on updates, etc. Hence Simon asked for some specific examples of where scripted control of materials would be beneficial, so he could carry them back to the Lab’s product managers.

Continue reading “SL projects news week 8/1: server, viewer and log-in issue PSA”