SL project news week 6 (1): servers, viewer, materials

Deployments for Week 6

A full set of deployments on the channels this week.

On Tuesday 5th February, the Main channel received the server maintenance project deployed to LeTigre in week 5. This has miscellaneous minor bug fixes and new features – release notes.

On Wednesday 6th February, the Release candidate channels should receive the following:

  • BlueSteel should receive code for materials processing. There is still no project viewer publicly available for this project. When one becomes available, notices will be posted on the Project Viewer page, the Tools and Technology Blog, and STORM-1905release notes
  • LeTigre should receive a new maint-server project to fix miscellaneous crash modes, and which  offers minor performance improvements – release notes
  • Magnum should receive an update to the interest list code and support for materials processing. The interest list update should specifically address the bot / bandwidth problem reported on in last week’s updaterelease notes

As ever, a forum thread has been created for the discussion of the deployment packages, or any issues arising therefrom.

In late 2012 some regions (noticeably Homesteads) starting experiencing issues related to their physics memory. Investigations by Simon Linden revealed that part of the problem lay with these regions experiencing repeated navmesh rebakes, with each rebake consuming server memory with the result that multiple rebakes were leaving regions in need of a restart. Simon also confirmed that not all of the triggers generating a request appear to be linked to the actual need for a rebake (altering some estate / parcel settings can trigger a request, for example), and developed a fix for the issue. Simon believes this fix will be promoted to a Release Channel this week, although it is absent by name and description from the release notes at present.

Viewer News

Viewer releases are again unblocked, with further development viewer (incl. CHUI) made at the end of the week 5. Currently, CHUI looks to be the next project in line to be merged to the 3.4.5 code (with the project version already merged to the viewer-dev 3.4.6 code). This could make CHUI the first of the current projects affecting the viewer to reach a beta viewer release, but the timescales and order are far from definitive at this point – so it is possible CHUI may still be delayed in reaching the 3.4.5 beta code.

Materials Processing

Further to the week 4 update, it now appears scripting support may become available with  materials processing, although a) it will not be in the initial release; b) there appear to be considerable concerns on the Lab’s side of things as to the potential impact. Speaking at the Server Beta meeting on Thursday 31st January, Maestro Linden said the option for scripted control of normal and specular maps had been removed from the original proposal out of concern for it being exploited and used to thrash the server and rendering pipeline.

Speaking at the Content Creation User Group meeting on Monday 5th February, Geenz Spad, who co-authored the original proposal and who is working on the viewer side of the project, struck a more conciliatory tone. While confirming script support will not be available for normal and specular maps, he commented that this is in part because normal and specular maps don’t “plug into” existing means to manipulate diffuse (texture) maps using scripts. He went on, “I’m not saying no one would add scripting for the *new* parameters. Just that it won’t make it as part of the first release; think of it as a ‘we didn’t have time’ sort of thing.”  Whether or not support for scripted control of normal and specular maps remains to be seen, commenting on the matter, Nyx Linden said, “That would be a feature request to submit after the first release :),” – so it is likely the Lab will see what the demand is like prior to committing to anything, one way or the other, again allowing for the network / rendering concerns which have been voiced on their side.

In terms of animating normal and specular maps, Geenz confirmed that all current methods of animating textures will work with the additional maps, which I had more-or-less confirmed through my own rough tests, as reported in my sneak peek at the (then) latest version of the pre-release materials viewer.

Back in week 3, I discussed the fact that normal and specular maps require a viewer to be running in deferred mode (“Lighting and Shadows” in the Advanced options of the Graphic tab in v3-based viewers) in order for their effects to be seen, and gave a short overview how deferred can be used without actually having to have shadows enabled. This post was followed by a short discussion on possibly renaming the option to something more obvious to users.

Well, it appears that someone is a few steps ahead of things on this. In the most recent versions of the pre-release materials viewer, Lighting and Shadows is renamed to “Advance Lighting Model”.

Materials processing: the option formerly known as "Lighting and Shadows" - soon to appear in a project viewer Materials processing: the option formerly known as “Lighting and Shadows” – soon to appear in a project viewer

It’s still a little bit of a mouthful, but it may help when it comes to explaining how materials processing works. As it stands a project viewer for materials might be available by the end of week 6.

Other Items

What’s in a Name?

Those who make  full permission items intended for use by other creators as a part of their products can often face a frustrating problem: finding themselves in receipt of a call for assistance about the items in which their products have been used – as it is their name recorded in the Creator field, rather than the name of the person who made the item itself.

While this can be negated in some degree, results aren’t always perfect, and requires no small amount of fiddling around when it comes to full perm mesh items. This being the case, there was some discussion at the Content Creation user Group Meeting on Monday 5th February as to how the situation might be improved through the introduction of an additional field which could sit alongside the Creator and Owner fields and  which would identify the person who utilised a full permission mesh in their own work as well as the maker of the mesh itself – so that support questions could then be addressed to that person. One suggestion has even been to call the new field “Support”.

However, such a change could have wide-ranging impact, both in the viewer and server, making it a potentially complex matter to implement. During the Content Creation meeting on Tuesday February 4th, it was clear that there were several views on the subject of how to handle things, as well as some discussion on the complexities of actually implementing it.

Commenting on the matter, Nyx Linden requested that if a consensus view can be reached on the matter – or if people do feel it is a pressing matter which needs more consideration / discussion – that it should be raised as a feature request on the JIRA (i.e. file a bug report, but put “Feature Request” in the title / subject), so that it is at least on the Linden radar.

Viewer release summary 2013: week 5

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 Viewer Round-up 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 as the week progresses
  • 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.  

Updates for the week ending: 3 February, 2013

The major news for the week is that the Zen viewer has officially ceased development and has been delisted from the SL Third-party viewer directory at the developer’s request and all repositories removed from public access. The reason for this is unknown at the time of going to print with this summary.

  • SL Viewer updates:
      • Beta version rolled to  3.4.5.269698 on Janunary 31st –  release notes
      • Development rolled to 3.4.6.269703 on January 30th
      • Mesh deformer project viewer rolled to 3.4.4.268558 on January 29th – core updates: code merged to 3.4.4 codebase
      • Sunshine viewer (avatar baking (SSB)) rolled to 3.4.5.269555 on January 30th – wiki page
      • CHUI development viewer rolled to 3.4.6.269797 on January 30th and then 3.4.6.269877 on February 1st
  • Dolphin rolled to 3.4.12.27293 on February 3rd – core updates: source up-to-date with latest LL development viewer code – release notes
  • Cool VL updates – three versions for the time being, all updated on February 2nd:
    • Stable version: 1.26.6.8
    • Legacy version: (v2.6 renderer) rolled to 1.26.4.51
    • Experimental: 1.26.7.8
    • Release notes
  • Lumiya released version 2.4.1 on January 31st – core update: mesh object support; some mesh clothing support; RLV support; server-side baking (SSB) support; fixes and tweaks – release notes

Discontinued Viewers

  • Phoenix officially reached end-of-line for SL on December 31st – read more here
  • Zen viewer was withdrawn from the SL TPV directory and all repositories shutdown on January 27th, 2013.

Related Links

SL project news week 5 (2): servers, issues, viewer, SSB, deformer

Server Deployments week 5

On Tuesday 29th January, the Main channel received the threaded region crossing code previously deployed to BlueSteel and LeTigre in week 4release notes.

On Wednesday 29th January, the following updates were deployed to the Release Candidate channels:

  • BlueSteel received the server-side materials processing code – release notes
  • LeTigre received the maint-server project originally deployed to Magnum in week 3. This deployment includes the bug fix for the places / search indexing issue which occurred following the original deployment of the code to Magnum – release notes
  • Magnum received a further update to the interest list code deployed in week 4, with fixes intended to deal with issues of high packet lossrelease notes.

Reported Issues

Main Channel

A number of initial problems were reported  in the forum discussion thread, Several of which  appeared to be related to initial region caching / capabilities problems which lead to some strange initial experiences for users, ranging from teleport failures / potential viewer crashes on region crossings (physical or teleport) and  out-of-range controlled flight (i.e. avatars could continue to fly under full control when apparently at coordinates well outside the region (e.g. 320, 128, 75). These issues seem to cease once regions were correctly caching following a (protracted) restart period.

There were also some reports in the forum discussion thread that use of the estate tools to eject / teleport home / ban an avatar can lead to a region cross. However, as the reports appear to be the same / similar to previously filed SEC JIRA (SEC-1215 and SEC-1204, neither of which are open to public viewing), and may be an isolated series of incidents (others are not reporting the same problems, so they have not been repro’d outside of the affected region), there is a reluctance within LL to attribute them directly to the region crossing code.

Magnum RC (Interest List Code)

The Interest List Code problem relates to the use of bots. Originally, it had been hoped that one of the fixes deployed this week would correct the issue; however this has not entirely been the case.

Following further investigation by Latif Khalifa and Andrew Linden, an explanation of the problem is provided in the deployment forum thread. The issue has its routes in the fact that the Second Life UDP protocol requires an acknowledgement (or “ACK”) for all messages sent to the viewer. However, rather than sending a distinct “message received” back to the server for each packet received, certain types of bot append the acknowledgement to other outgoing messages. A bug in the interest list code means these appended ACKs aren’t read. This results in original data been regarded as a packet loss, so it is repeatedly re-sent to the viewer controlling the bot, leading to the huge increases of bandwidth which have been witnessed. Andrew is currently working on a fix for this issue.

Deployments for Week 6

There is currently no clear news on deployment plans for the week commencing Monday 4th February. Currently, it appears that the main-server release re-deployed to LeTigre will most likely be promoted to the Main channel.

SL Viewer Updates

Issues relating to the beta viewer 3.4.5 code have been resolved, and an updated beta viewer (3.4.5.269698), was released on Thursday January 31st – see the release notes for updates. Also released on the 31st was a new version of the CHUI development viewer, 2.4.6.269797. The SL development viewer rolled to 3.4.6.703 on Wednesday January 30th.

An interesting issue has been noted recently by those using multiple versions of the SL viewer. When swapping between more recent versions of the SL development viewer and older versions of the code base, toolbar buttons can vanish from the viewer’s UI. The exact cause is unclear, and the problem appears intermittent (I’ve personally only encountered it once jumping between project and release versions of the viewer).

Mesh Deformer Project Viewer

Sovereign Engineer assisted with code merges for the parametric deformer project viewer with the result that the code is now merged-up to the 3.4.4 codebase with the latest release of the mesh project viewer (3.4.4.269558) on January 29th. There are apparently no functional changes to the deformer itself.

The updated shape selection options for mesh clothing and human shapes in the mesh upload floater
The mesh deformer project viewer has now been merged-up to the 3.4.4 viewer codebase. There are apparently no updates to the deformer itself with this release

This removes one of the three bottlenecks to the project as noted in the first part of this week’s reports. However, the issue of internal resources at the Lab remains a problem, although Oz Linden is attempting to address this and there may be further news in week 6.

Continue reading “SL project news week 5 (2): servers, issues, viewer, SSB, deformer”

Materials processing – more sneak peeks

The server-side materials code reached the main grid in week 5, with a deployment to the BlueSteel Release Candidate channel. As stated in my project report marking the deployment, the code will not be usable until there are suitable viewers on the grid which can utilise it, and they have yet to be released.

As it stands, viewer-side work is progressing, and it is likely that a project viewer will be made available in the near future, although time frames are still a little hard to determine. Commenting on possible viewer availability on Wednesday January 30th, Geenz Spad, lead developer for the viewer, stated, “At this point, it’s hard to say; the majority of the rendering bits are finished at this point. The UI’s there, but needs a bit of polish; so all in all I’d say a public testing version should be out really soon.”

During the conversation, Geenz provided further preview pictures to those in attendance, some of which are reproduced here.

Materials in action: a prim with a texture (diffuse map) and normal map applied (courtesy of Geenz Spad) - click to enlarge and see in detail
Materials in action: a prim with a texture (diffuse map) and normal map applied (courtesy of Geenz Spad)

Viewer UI

In week 4 I was able to provide a quick look at the changes to the Build floater’s Texture tab which are directly relevant to materials processing. Since then, the developer leading this work, Tonya Souther, has progressed the tab to a point where it is close to finished. In particular, pickers have been added to the normal and specular map options, and the diffuse (texture) option now has a drop-down for the alpha mode selection, also as discussed in a previous project report.

Materils Build floater Texture tab revisions (31-01-13): The diffuse (texture) option, showing the Alpha mode drop-down options (l); the normal map options, with map picker and default texture list drop-down (c); the specular map options, in which the Use texture drop-down displays the familiar low, medium & high shiny options (r)
Materials Build floater Texture tab revisions (31-01-13): The diffuse (texture) option, showing the Alpha mode drop-down options (l); the normal map options, with map picker and default texture list drop-down (c); the specular map options, in which the Use texture drop-down displays the familiar low, medium & high shiny options (r). Materials can be applied per face of an object, with scale, rotation, etc., applied across all maps on a face / object – click to enlarge

Viewing Materials: How Things Will Look

Materials processing will require viewers to be running in deferred mode (i.e. with lighting and shadows enabled, although not necessary with shadows activated – see my notes here). While it is not possible for materials to be implemented in such a way that it can run in a non-deferred mode, materials should not have any major negative impact on how second life looks to those who are unable to run their viewer in deferred mode. In fact, SL should continue to look to them much as it does today, hopefully as show in the image below.

With and without: how materials will look when running a viewer in differed mode (top) and in non-deiffered mode (bottom). The differences are clear, but the in-world experience in non-differred mode is not in any way "broken"
With and without: how materials will look when running a viewer in differed mode (top) and in non-deferred mode (bottom). The differences are clear, but the in-world experience in non-deferred mode is not in any way “broken”

In the meantime, Linden Lab are continuing to try to gather data on the number of users running their viewers in differed mode and – perhaps equally as important – the number of users who could be running with deferred active (again, if not with shadows active), particularly given the continuing improvements being made to the rendering system.

So materials processing is progressing and drawing close to an initial release. There is a lot going on within Second Life as a whole at the moment in terms of projects coming into the viewer, with both avatar baking/server-side baking (SSB) and the Communications Hub User Interface (CHUI) also on the horizon as well. As such, the Lab still need to establish priorities on the various projects and plan releases accordingly. Similarly, TPV’s need to consider the impact of these various projects on their work and determine their own priorities for integrating the projects into their viewers. Given the complexity some will face in implementing CHUI, it would appear likely that the materials capabilities might reach some TPVs ahead of that work, even if CHUI and materials are released in relatively close order.

As always, updates will be provided as news emerges.

Another preview of a  normal map and a  diffuse map (texture) in action (courtesy of Geenz Spad)  - click to enlarge
Another preview of a normal map and a diffuse map (texture) in action (courtesy of Geenz Spad) – click to enlarge

Related Links

SL project news: week 5 (1): servers, viewer, deformer

Server Deployments Week 5

There are a full set of deployments this week, Main channel and RCs.

On Tuesday 29th January, the Main channel received the threaded region crossing code deployed to BlueSteel and LeTigre in week 4. This project makes sim performance smoother when objects and avatars cross between regions. Please refer to the release notes for further information.

On Wednesday 29th January, the Release Candidate channels should receive the following deployments:

  • BlueSteel should receive the server-side materials processing code. This code will require a a project viewer in order to be used, As reported in week 4, there is no definitive timeframe as to when a viewer is liable to be available, but it would be reasonable to expect something in the next few weeks (possibly sooner) – release notes
  • LeTigre should receive the maint-server project originally deployed to Magnum in week 3. This deployment includes the bug fix for the places / search indexing issue which occurred following the original deployment of the code to Magnum – release notes
  • Magnum will receive a further update to the interest list code deployed in week 4. This update addresses high packet loss problems, leading to issues such as not seeing avatars or objects in-world, specifically:
    • A fix for bots which do not specify a valid draw distance in order to prevent them downloading huge amounts of unwanted data
    • A fix to keep ObjectUpdate packets within an ethernet MTU of 1500
    • Release notes.

Please check with the forum discussion thread for these deployments to keep abreast of updates / changes / issues.

Materials processing: server-side code to go to BluseSteel on Wednesday 30th January - but no project viewer yet
Materials processing: server-side code to go to BlueSteel on Wednesday 30th January – but no project viewer yet

SL Viewer News

Problems remain with the beta viewer code, but it is hoped a new beta will be appearing shortly. In te meantime, Kelly Linden has committed the viewer-side code for extending the maximum avatar animation length from 30 seconds to 60 seconds (MAINT-1492). This should be appearing in the 3.4.5 beta viewer, and should also be appearing in TPVs in the near future.

Mesh Deformer

Delays continue with the mesh deformer, which can be summarised as:

  • The Lab has limited internal resources for testing it – although attempts are being made to address this
  • There is concern that there is no clear way for a designer and a user to be sure that they are using the same avatar base model – and if they are not, then the deformer will very likely make things worse. While there are some provisions within the current deformer for the base model to be taken into consideration, there is apparently concern that it may not be sufficient
  • The project veiewer code is now significantly behind the current viewer release, although work is underway to merge it up (and I received a report that this has been done while preparing this update).

A further potential issue in progressing the deformer  – as Karl Stiefvater (Qarl Fizz), who wrote the original code points out – is there are a lot of expectations that the deformer will do a lot of things which were not in the original specification (or indeed, the code as originally written). Some of this scope creep has resulted in further updates to the code from other contributors. However, there appear to be concerns that if the Lab prematurely release if, there will be a risk that a) it breaks existing content, b) it is viewed as not addressing problems correctly.

This latter aspect was also commented upon by Oz Linden, when speaking Open-source Development meeting on Monday 28th January. He said, “We are often (and frequently with justification) accused of throwing things out that are not really finished enough… indeed, the lack of some solution for the problem the deformer is trying to solve is one of the more prominent recent examples, but I don’t want to make the situation even worse by putting out a ‘solution’ that turns out not to solve enough of the problem and/or creates bigger ones down the road.”

Avatar Baking (SSB)

A set of code updates for the viewer are in progress. However, an issue with the Mac build means they have not been pushed as an update to the project viewer as yet. It is hoped that the updates will reach all three versions of the viewer (Windows, Linux and Mac) once the Mac build problem has been resolved.

Kokua 3.4.4 goes CHUI

Update February 28th: Nicky has posted that the CHUI code has now been merged with the main Kokua code, and a new version of Kokua is available for testing with it.

kokua-logoNicky  Perian, working on the Kokua viewer for SL / OpenSim, issued an experimental version of the viewer on January 24th which includes the new SL Communications Hub User Interface (CHUI).

Release 3.4.4 (CHUI) has a dedicated repository, and is available for Windows and Linux.

As reported on its launch, CHUI complete overhauls the communications floater within the official viewer, and introduces a new Conversations Logs floater, allowing users to access saved chat and IM histories from within the viewer. In updating the Conversations floater, CHUI brings some functionality to it which users of several TPVs may find somewhat familiar, even if the presentation doesn’t match anything they’ve been used to in the past.

CHUI goes purple: the initial integration of the CHUI code into Kokua
CHUI goes purple: the initial integration of the CHUI code into Kokua

A Kokua blog post accompanying the release of the experimental viewer provides additional information:

The Communication Hub UI  has Instant Messaging , Chat,  and Voice controls in one floater as was done in version 1 viewers.

Imprudence users have asked that Kokua implement the Imprudence UI for communications. I would like comments from Imprudence users about this interface .

This merge affected many parts of Kokua code. Please test and report problems using our bug tracker.

There is also a link to the Kokua wiki page on recommended practices for using Kokua experimental viewers.

The implementation appears to be a “straightforward”  merge of the code, with the familiar Kokua UI colour changes, but otherwise no additional updates. “Straightforward” is given in inverted commas because, as the Kokua blog post notes, the CHUI changes impact many areas of the viewer’s code, making integration somewhat difficult – particularly if the TPV merging the code already has modifications to how  communications within the viewer are presented to the user.

The experimental viewer also includes the default “account creation” prompt found in the beta and development versions of the SL viewer which appears to be in relation to the forthcoming SL / Steam link-up, and which is displayed on the viewer’s log-in splash screen if no account details are found on the local computer when the viewer loads. As with other viewers which have merged-up with SL viewer development code, this should be taken as a sign that the code has been included in Kokua by default rather than having any deeper meaning associated with it.

Other recent updates for Kokua (from the 3.4.4.25633 release of January 13th, 2013) include:

  • The use of Vivox as the default Voice system, as a result of the latter relaxing licencing requirements for grids
  • The addition of a draw distance slider to the top right of the menu bar
  • The ability to set a minimum draw distance of 3 metres (seen as a means of improving performance for those involved in close-quarter combat / duelling)
  • Minor UI changes (such as the “Me” menu being renamed “Avatar”).

Overall, this looks to be a clean implementation of CHUI, and one which gives OpenSim users a further opportunity to get a look ad feel for the revised  / new floaters for communications.

Related Links