SL project news: week 4 (1): server, permissions, terrain and teleporting

Server Deployments Week 4

There was no Main Channel deployment on Tuesday 22nd January due to the issues encountered in week 3, which saw the interest list code on BlueSteel and LeTigre rolled back due to stability issues, and the maint-server release on Magnum having problems of its own (including regions not showing up in search, etc.).

There will be RC deployments on Wednesday 23rd January, as follows:

  • BlueSteel and LeTigre should receive the region crossing improvement project.  This project makes sim performance smoother when objects and avatars cross between regions.  This is the same project which was on BlueSteel and LeTigre in week 2; the only change is a fix for a crasher – release notes (BlueSteel)
  • Magnum should receive the interest list improvement project.  This update should reduce the bandwidth usage of viewers due to object updates, and should improve simulator performance, especially in sims with many connected avatars.  This is the same project which was on BlueSteel and LeTigre briefly in week 3; the only change is a fix for two crash modes – release notes
3rd time lucky? Interest List updates due for deployment to Magnum on Wednesday 23rd January
3rd time lucky? Interest List updates due for deployment to Magnum on Wednesday 23rd January

According to Simon Linden, speaking at the Simulator User Group on Tuesday 22nd January, the issue(s) relating to Magnum regions / parcels failing to show up in search also has a fix, which is apparently included in code due to be deployed to those regions, although there is no comment on this in the release notes themselves at the time of writing.

SL Viewer

Work continues on the viewer development side of things with further updates an merges and new versions appearing almost every other day, but little is currently filtering through to the beta viewer code branch at present.

Similarly, the CHUI developement viewer is going through a rapid series of updates, reaching 3.4.4.269264 on Tuesday 22nd January, although updates from the last series of development releases have yet to reach the CHUI project viewer.

Work has been promised to update the Sunshine (avatar baking) viewer code, whether this has been done or not is unclear as there was no Content Creation meeting on Monday 21st January due to Martin Luther King’s birthday; however, the current release of the project viewer remains 3.4.4.268071 at the time of writing.

Merges are also still awaiting on the Mesh project viewer in order to bring that back into line with more recent viewer-dev code updates.

Continue reading “SL project news: week 4 (1): server, permissions, terrain and teleporting”

SL project news: week 3 (1): Servers, Materials, Baking and more

Update 19th January: As is being reported in the deployment thread in the forums, further issues are arising with search, and also problems with scripted vehicles (as Wolf also nones in the comments for this article. Those using regions running on Magnum are advised to keep an eye on the deployment thread for news on issues as they are investigated by other users / feedback from the Lab.

Update 18th January: An issue has ben reported with Magnum regions no longer being listed in the main search floater, although shops, etc, within a Magnum region are still listed. The problem does not extend to the world map search. Maestro Linden has filed a bug report. A rolling restart of all LeTigre and BlueSteel regions commenced at 10:00 SLT due to instablility issues being reported with the regions. The restart will comprise a roll-back of server code on BlueSteel and LeTigre to 12.12.18.268345.

Deployments for Week 3

After the issues encountered last, week, there was no main channel release on Tuesday 15th January, 2013.

Changes also occurred with the RC channel deployments. As fixes for the threaded region crossing problems were not ready for release, this was removed from the schedule and replaced by a maint-server release. Then, a network hardware error forced the RC deployments to be postponed until Thursday 17th January.

The roll-outs duly took place on the 17th, and comprise:

BlueSteel and LeTigre received the interest list improvement project. Originally scheduled for Magnum in week 2, but was held up due to a last-minute bugs, this  update should reduce the bandwidth usage of viewers due to object updates, and should improve simulator performance, especially in sims with many connected avatars – release notes here (BlueSteel).

This release received an additional bug fix, related to seated avatars temporarily vanishing from other avatars’ view when  crossing between regions. This fix may have led to the server release notes as reported and wiki pages for BlueSteel and LeTigre slipping out of sync with the actual code release (this has now been corrected subsequent to my pointing it out to Maestro Linden).

Magnum received a new server maintenance project, which mostly contains bug fixes, together with the following:

  • Server-side code to support “neck” and “center” attach points, which didn’t get rolled out when these were added to the viewer (but which now also require a minor change to the viewer, which is forthcoming)
  • An update to improve the effectiveness of estate bans (i.e. preventing banned avatars returning)
  • An update for builders, which covers SVC-7996 and as a part of STORM-68 (ensuring all created items have the default permissions set within the viewer). This particular fix ensures that scripts created using the New Script button in the build floater inherit the permissions set within the viewer, rather than server-defined defaults
  • An update to how abandoned mainland is handled, as the automated buy-back option for abandoned land is being eliminated (see: Abandoned Land in the Knowledge Base)
  • Release notes here.

Deployments for Week 4 (Commencing Monday 21st January)

There is no major news on releases for week 4, other than the threaded region crossing code now has fixes for the last-minute issues which prevented its roll-out in week 2, so this should be on one of the RC channels for deployment on Wednesday 23rd January.

SL Viewer

The release version of the SL viewer rolled to the 3.4.4 codebase on Tuesday January 15th, with the release of 3.4.4.268864. See the release notes for details of updates and fixes.The development viewer is rapidly progressing through a series of releases, with 3.4.6.269073 released on January 15th, followed by 3.4.6.269108 on January 17th.

After a series of development version releases, the CHUI project viewer also moved to the 3.4.4 codebase with the release of version 3.4.4.268981, also on January 15th. The Development version of CHUI continues to keep pace with releases from viewer-development.

Server-side Baking

Work is continuing on avatar baking (otherwise know as server-side baking or Project Sunshine), with Nyx Linden reporting at the Content Creation User Group on Monday 14th January that the team has, “Been a bit heads-down focusing on some bug-stomping.”

Concern is growing that, since the initial release of the Sunshine Project viewer a month ago, there have been no further updates to the viewer-side code, despite extensive feedback from TPVs, which  – in the words of one developer – is not conducive to enabling everyone to adopt the latest code and get ready for the baking service within anticipated time frames (i.e. mid-to-late February).

Nyx has acknowledged the problem, and hopes that the Sunshine code will be merged-up to the latest viewer development code soon, together with verification that nothing has been broken as a result. In the meantime, and away from the SL viewer itself, Henri Beauchamp reported that he has server-side baking working in the experimental branch of his Cool VL viewer.

A further concern with the project is the manner in which JIRAs are being handled since last year’s changes to the system. Raised issues are effectively being cloned, with one version sitting internally to LL and “hidden” from general viewing, with the cloned version available for public viewing and update. This has resulted in worries that cooperation between TPVs and LL in resolving issues related to the Sunshine project could be hampered if the cloned public JIRA are not properly updated whenever LL update the internal versions of the same issues. Nyx Linden has promised to work to ensure that all cloned public JIRA are kept up-to-date.

Materials Processing

The server-side code for this is “inching towards” a point where it will be ready for deployment to an RC channel. When this will be is unclear, but it is likely to be ahead of any project viewer emerging from the Lab.

Concern is still being raised over the need to run the viewer in deferred mode in order to see materials processing in action once it has been rolled-out onto the grid. Some of this concern may be down to the confusing way in which deferred mode is labelled in the Graphics tab of the viewer preferences (“Lighting and Shadows”), with people thinking they must have shadows running in order to be in deferred mode (i.e. with the Shadows drop-down set to either Sun/Mon or Sun/Moon + Projectors). However, the viewer is running in deferred mode even with the drop-down set to None.

Continue reading “SL project news: week 3 (1): Servers, Materials, Baking and more”

SL project news: week 2 (3): server, mesh and materials

Server Deployments – week 2

As noted in the update to part 2 of this week’s report, the planned deployment of two new releases to the RC channels didn’t go as anticipated. Originally, it had been intended that BlueSteel and LeTigre would received the new threaded region crossing code while Magnum would receive Andrew Linden’s interest list code improvements.

Interest List Deployment Cancellation

The interest list deployment was cancelled after the 11th hour discovery of some bugs with the code. Speaking at the Server Beta meeting on Thursday 10th January, Maestro Linden described the main issues as – ironically – being connected with region crossings, and with object updates.

In the first, anyone crossing between regions several times in a vehicle would experience all of their non-rigged attachments disappearing from their world view, with the viewer itself eventually physically detaching them. Not only did this cause confusion as to what was happening with attachments for those experiencing the issue, it also resulted in some avatars ending up naked following a relog.

Interest listcode: bugs led to deployment cancellation on Wednesday 9th January
Interest list code: bugs led to deployment cancellation on Wednesday 9th January

The second problem was slightly more complicated, if potentially more rare. In it, if User A had an object on the ground and User B looked at then turned their camera away such that the object was no longer on their screen, User A could then wear the object as an attachment and teleport away; however, when User B subsequently turned their camera back to where the object had been, they would still see it on the ground despite the fact it had been taken away. What happened if User A (now wearing the object) teleported back to User B wasn’t actually tested.

As a result of both of these issues and the cancellation of the interest list deployment, Magnum received the same region crossing package as intended for BlueSteel and LeTigre.

Region Crossing Code Issues

However, the bad news did not end there, as Maestro Linden explained, “After a few hours, we saw that the [region/sim] crash rate was way too high.” As a result, the threaded region crossing code was disabled via a configuration change to the servers without the need to rollback the release. Once this had happened, region crash rates returned to “normal” levels. In all the new region crossing code was active for around five hours before being disabled once more.

Analysis of the crash rate revealed it to be linked to avatars crossing to / from heavily scripted regions. While the new code was extensively tested on Aditi, the regions there were not excessively loaded with scripts during testing, and so the problem did not manifest. However, subsequent testing with the test regions running heavy script loads did result in them also crashing, confirming the problem.

At the time of writing, Kelly Linden believes he has a fix for the issue; if so, it should hopefully find its way to the RC channels in week 3, commencing Monday 14th January.

Continue reading “SL project news: week 2 (3): server, mesh and materials”

SL project news week 2 / 1, 2013: avatar baking, materials processing, CHUI and more

SL Beta Viewer

There have been some rendering issues with the last release of the beta viewer (3.4.4.268497, December 20, 2012) which had caused the Lab a slight headache in that not all tests are giving the same results. However, a further 3.4.4 release is anticipated for either Monday 7th or Tuesday 8th January, 2013, which includes various fixes. Whether these are related to the rendering issues is unclear. However, they have not as yet been merged into the Sunshine Project (Avatar baking – see below).

CHUI – Communications Hub User Interface

As reported over the holiday period, the CHUI project is moving forward, with a further update of the project viewer and several updates to the development version of the viewer, possibly the result of code refactoring work which had been indicated as being required prior to the holidays. However, as of the TPV Developer Meeting of Friday 4th January, 2013, it was unclear as to whether this refactoring work has been completed.

CHUI: TPVs may cherry-pick from the code
CHUI: TPVs may cherry-pick from the code

Currently, the code has yet to be made available to TPVs, and concerns have been raised by some TPV developers that integrating the CHUI code could be as much a headache as the Avatar Baking code. Given the work some have put into the communications elements of their own viewers, it is also possible that some might opt to cherry-pick which elements of the CHUI code they will adopt. Whether CHUI is liable to be deployed before or after the Avatar Baking project remains to be seen, as the Lab has yet to make a decision either way.

Server-side Avatar Baking

Avatar bake fail
Avatar bake fail

Project Sunshine, the work to implement a new server-side baking process, kicked-off (as far as  TPVs are concerned) just before Christmas. This represents a substantial code merge for TPVs, and one which is going to take TPVs a while to handle as a result, hence the reason why LL have given TPVs a long lead-time on the project, with around an eight-week window available for them to work on the code, provide feedback and assist with testing.

As mentioned in my detailed look at the new service (see link above), any deployment of the server code will be dependant upon further and significant load tests, which are viewed as essential in ensuring the new compositing service has sufficient hardware for it to support avatar baking across the entire grid. At the time that article was written, Nyx indicated that details on how the load tests would be handed had not been finalised.

Speaking at the TPV Developer Meeting, Oz indicated that these tests are still under consideration, and as such, much in the project is still up in the air in terms of unknowns. Obviously, on way in which load tests can be carried out is to have more test / development viewers available to enable greater testing of the server-side code, so overall implementation of the new service is somewhat symbiotic, and it is unlikely there will be a large-scale deployment of the service prior to TPVs being sufficiently comfortable / up-to-speed with integrating the code into their viewers.

As such, it is unlikely that there will be any major move on the Lab’s part to push the project forward much before the end of February. With regards to this, Oz commented, “Obviously, what we’d like to know is that we’ve got at least one version of all the third-party viewers that are prepared to cope with it, and that certainly getting an affirmative on as many of those as possible before we make a final call on what our target dates are would be really great. So that’s why we’re keeping the pressure on you to do that testing, as we’d rather you were ready before we were.”

Materials Processing

The materials processing project continues to move forward, although there are growing concerns over the fact that the viewer will be required to run in deferred mode (i.e. with shadows & lighting active) in order for the new capabilities to be properly rendered. This means that computers which do not have sufficient processing capabilities to run in deferred mode will not be able to render the effects of normal and specular maps, and so will not see the effects of materials processing.

When life gives you lemons, map them: on the left, a normal map, on the right, a normal and a specular map together (credit: Mind Teat Studios)
When life gives you lemons, map them: on the left, a normal map, on the right, a normal and a specular map together (credit: Mind Teat Studios)

However, this does not mean that those unable to run SL reliably or reasonably with deferred rendering enabled will have their SL experience negatively impacted. The expectation is that users on such system will continue to see SL as we all see it today, regardless as to whether or not in-world objects and avatar attachments (prim, sculpt or mesh) are using the new materials capabilities.

However, this is also conditional on content creators understanding how to correctly make use of materials process as it will apply to Second Life (especially those trying to leverage the new capabilities, but who may not themselves be able to run the viewer in deferred mode), and ensuring they use underpinning diffuse maps (textures) of a suitable quality. To help ensure this, Oz Linden has stated he will give those at the Lab responsible for the Good Building Practices guide on the wiki a nudge so that it is expanded to cover materials processing.

That materials processing does require running the viewer in deferred mode has given rise to concerns as to how widely the capability will be adopted. However, the Lab has no plans to try to implement materials processing in a way which does not require deferred rendering (assuming this could be done). This is not to exclude anyone from experiencing it, but rather because the capability simply requires deferred rendering to be enabled. Whether or not the capability will introduce an additional overheads to running in deferred has yet to be fully determined.

In the meantime, the repro for the viewer-side code required for materials processing will be officially made available (it was accidentally exposed just before Christmas), some time in the next two weeks or so, and a project viewer should appear shortly thereafter. The server-side code is thought to be in, “Pretty good shape.”

Continue reading “SL project news week 2 / 1, 2013: avatar baking, materials processing, CHUI and more”

SL project news: week 1, 2013: forthcoming RC releases, viewer, and new work

RC Deployments for Week 2

The Lab is still getting back up to speed following the Christmas / New Year break, so expect further information to be forthcoming on Main and RC releases for week 2, 2013 via the Server topic of the Technology Forum.

However, as it stands, there are two projects which it is hoped will reach RC channel release in the week commencing Monday 7th January, 2013. These are Caleb Linden’s threaded region crossing code and Andre Linden’s interest list code.

As I’ve previously reported, the threaded region crossing code was subjected to a pile-on test on Aditi towards the end of 2012. The results were, on the whole, a little disappointing for those taking part – although expectations may have been set a little high. While there were some improvements noted – particularly when travelling between regions on foot and with a heavy script load – overall, there were sill issues with crossing between regions in vehicles (particularly ground vehicles).

Airbourne antics: vehicles still exhibited region crossing issues duing the threaded region pile-on test in December 2012
Airbourne antics: vehicles still exhibited region crossing issues duing the threaded region pile-on test in December 2012

Issues arising from the pile-on test are still being looked at, and Caleb repeated his request that anyone noting specific issues should raise a JIRA directed for his attention. For those wishing to try out the code, the GC Test regions are still available on Aditi.

The Interest List code is still subject to receiving an OK from the Lab’s QA team. There will doubtless be an update on this – and on the planned RC releases in general – at the Simulator User Group meeting on Tuesday 8th January, 2013.

SL Viewer News

Not a lot to report on here at present. The Beta viewer reached the 3.4.4 code base Just before Christmas 2012, (3.4.4.268497, December 20, 2012). There may be a rendering issue which may require addressing and might lead to a slight delay in releases; apparently, not all tests are giving the same results, so LL are still investigating the matter. Work is continuing to update the GPU tables for the viewer; further cards have been added to the table, and several blanket entries have been removed (such as all unrecognised nVidia cards being detected as nVidia Ion GPUs).

As reported over Christmas, CHUI rolled through a number of rapid releases in its development version, and the main project version rolling to 3.4.3.268587 on December 22nd. Both the development and project versions of the viewer are on the 3.4.3 codebase, and the most recent development release was made on January 4th (3.4.3.268703). Both versions are available from the Alternative Viewers download page.

While the core of the Mac version of the viewer is built using OSX 10.7 (with Xcode 4.3.3), work is progressing in moving the viewer to OSX 10.8 Mountain Lion, which is expected to happen “very soon” according to Oz Linden, although no date is available as to when.

New Pathfinding Capability

VoidPointer Linden is working on a new flag for pathfinding characters. STAY_WITHIN_PARCEL is designed so that when set, pathfinding characters will only set goal points during wander, evade, pursuit, etc that are within the parcel they get created in. If the parcel is a non-regular shape, it is still possible a character will cross between it and neighbouring parcels (unless the navmesh is cut through the use of an exclusion volume), but goal points will only be set within the originating parcel. The code is still in development, and so the constraints on where a character can wander when it comes to irregular parcel shapes, but VoidPointer is not making any promises on this.

He's completely batty! - Voidpoint Linde at the Server Beta UG meeting, Jan 3rd, 2013
He’s completely batty! – Voidpointer Linden’s avatar at the Server Beta UG meeting, Jan 3rd, 2013

There is no stated delivery time for this new feature, other than it is currently being worked on.

Server Object Rezzing Code

Baker Linden has been looking to improve how objects with large file sizes are handled by the simulator software when being rezzed. He describes the work thus, “What I’ve been working on is hopefully significantly decreasing lag spikes when rezzing large, complex objects. Large does not necessarily imply size, but size of the files being read. When an object is rezzing, we have to parse the object / mesh files and create our in-world objects with that data.”

Until now, reading and parsing of any files related to objects which require rezzing has been on the main thread. When several such objects requiring rezzing at the same time, the simulator stalls. Baker has been moving the reading / parsing operation to a background thread in the expectation that rezzing multiple “large” (again, in terms of file size, not the size of the object itself) objects will not choke the simulator.

The key point about this work is that it is specifically aimed at preventing the simulator processes from choking and a region stalling when there are a number of large object files being read / parsed, not at actually “speeding up” the physical rezzing process. As such, it is unlikely that objects will appear any faster in people’s in-world view as a result of this work. However, what it does mean is that the simulator code will be better able to handle rezzing multiple “large file” objects without the attendant region lagging which can occur as a result of the simulator being unable to process messages from viewers and other simulators, etc.

Information Sources

  • Opensource Developer meeting, Wednesday 2nd January, 2013
  • Beta Server meeting, Thursday 3rd January, 2013.

Related Links

CHUI: progressing towards mainstream release

I first took a look at the CHUI – the Communications Hub User Interface – project viewer on its announcement and release back in October. Since then, as noted in my SL project news updates it has gone through recent updates as it progresses towards readiness for mainstream release, quite possibly in the early part of 2013.

The past week has seen new updates to both the “release” version of the project viewer (December 22nd) and also to the “development” version of the viewer (December 24th). Both are available from the viewer download wiki page.

The “main” release – viewer 3.4.3.268591, was announced via a forum post, which highlighted the updates as:

  • Addition of notifications and notification preferences
  • Smaller Conversations and People windows with increased resizability
  • Adding more ways to get to certain functions. For example, we added a speak button to the Conversations window toolbar
  • Improved performance
  • Bug fixes and polish
The new "Speak" button in the confersations floater - available for IMs and open chat
The new “Speak” button in the conversations floater – available for IMs and open chat

The resized floaters is a good step forward, as is the greater control now available in resizing windows. There are still some elements missing from the conversations floater people my find convenient (or at least annoying because of their absence), in particular:

  • An ability to range IMs horizontally rather than vertically: many people prefer to have their IMs ranged horizontally, possible as a holdover from the “old” integrated conversations floaters which stretched back in 1.23.5. The problem here is that any move to incorporate this into the design would break with ergonomics of the “collapsible” nature of the current floater using the right / left pointing chevron buttons
  • The inclusion of a teleport button for the IM windows: this is altogether more useful, and it is hard to see why this was dropped from the redesign, given it is part of the current IM floater layout, and most likely a button which sees frequent use. OK, so teleports can still be achieved via the right-click context menu, but if convenience is the name of the game, it is hard to see why the teleport button has been ignored
The three compact views of the Conversations floater: one reason horizon IM tabs may not be incorporated
The three compact views of the Conversations floater: one reason horizon IM tabs may not be incorporated

Whither the Survey?

One thing still very much missing from the CHUI project is the promised user survey. When the project viewer was first launched in October, the Lab specifically asked people to try it out and consider a number of questions relating to it, noting that, “We’ll ask you to complete a survey in approximately one week to gather your thoughts on these questions.”

The survey has yet to appear. Whether this is because the feedback coming through the CHUI JIRA has been sufficient for the project team (and the amazing Whirly Fizzle has been generating an incredible amount of detailed and informative feeback!) is unclear.

Current Status

The precise status of the project is unclear, but it appears to be reaching a “feature complete” status – which again raises the question as to whether we ill see a survey on the project or not. Merging the project viewer to the 3.4.3 code base would appear to move it one step closer towards a viewer development  / beta viewer merge (both are now 3.4.4 code), but there are wider issues within the viewer still be rectified. For example, nothing happens at all when right clicking on any object contents – the usual context menu fails to appear. It’s therefore unlikely that the CHUI code will make an appearance in a development or beta viewer until such time as it has been confirmed problems like this have been identified and resolved.

In the meantime, and if you haven’t already done so and would like to, the CHUI JIRA remains open for comment, and the project viewer can be obtained from the SL Alternate Viewers wiki page (links below).

Related Links