SL project updates 16 3/2: Server, viewer, Bento and CEF + Flash

The Keys; Inara Pey, January 2016, on Flickr The Keys (Flickr) – blog post

Server Deployments, Week 3 – Recap

As always, check the server deployment thread for any updates.

On Tuesday, January 19th, the Main (SLS) channel received the server update package previously deployed to the three RC channel. This comprises:

  • Feature Request: llGetObjectDetails() constant OBJECT_TOTAL_INVENTORY_COUNT – when targeting an object, OBJECT_TOTAL_INVENTORY_COUNT will return the total of all inventory types in each link of the linkset. See BUG-10575 for further details
  • Feature Request: llGetObjectDetails() constant OBJECT_PRIM_COUNT – provides a means to get a worn attachment’s prim count (rather than just returning 0).  See BUG-10646 for further details.
  • Simulator crash fixes.

On Thursday, January 21st,  three RC channels received a new server maintenance package comprising a simulator crash fix and a further feature request: llGetObjectDetails() functionality to get the parent_id of any task in the region (OBJECT_REZZER_KEY). This returns the parent_id of any task in the region. If the object came from an object rezzer it returns the ID of the parent object, while If it was rezzed by an avatar, it returns the agent ID of the avatar. The function only works for those objects rezzed in-world after the code deployment (objects in-world prior to deployment will return NULL_KEY).

SL Viewer

The HTTP updates Vivox RC viewer updated  to version 4.0.2.310097 on January 19th, while January 20th saw the Quick Graphics RC viewer updated to version 4.0.2.310127, and the Project Bento (avatar skeleton extensions) viewer updated to version 5.0.0.310099.

Project Bento

I missed the greater part of the Project Bento meeting on Thursday, January 21st, so my apologies for not having a full report.

Cathy Foil demonstrates what can happen when an avatar using a mesh incorporating the new Bento bones deforms ...
Cathy Foil demonstrates what can happen when an avatar using a mesh incorporating the new Bento bones deforms …

Deformed Avatars: The lab is still asking for examples of avatars deforming as a result of using a mesh uploaded with different joint positions. If people have examples, Vir Linden requests that both the .DAE file and a copy of the mesh model are forwarded to him so that the Lab can test items for themselves.

Elizabeth Jarvinen (polysail), also points to some discussion on the Bento forum threat on how to possibly correct the problem when it occurs. see: here, here and here).

.BVH and .ANIM uploaders: It was noted at the meeting that the .BVH and .ANIM uploader have different capabilities. The .BVH uplaoder is viewed as being not as robust as the .ANIM uploader, although it does include optimisations for animations which are not present in the .ANIM uploader. Oz Linden suggested that it would be nice if both uploaders shared the same level of robustness / capabilities.

Vir pointed out that the .BVH uploader has various optimisations which are not present for .ANIM uploads. So how parity between the two is achieved is unclear. fore example:

  • Is the optimisation code removed from the .BVM uploader or added to the .ANIM uploader?
  • Are the updates server-side, or should they be viewer-side, with the ability to preview animations prior to final upload to ensure they are playing correctly?

It is also open to question whether any such work, were it to be undertaken, would form a part of this initial Bento project.

Bento Bone Survey

I was absent (as noted) when this particular item was discussed, so I may have the details wrong. However, it appears that, as previously reported, the Lab are going to put out a survey asking for creators and animators to indicated their preferred additional bones out of those which have been suggested. The survey is liable to be published via the Bento forum and / or the Bento user group wiki page.

World Makers Filming

There will be a final Bento filming session for the upcoming Drax Files World Makers special on Monday, February 1st. Creators and animators who have examples of content using the Bento skeleton extensions and are willing to take part in the filing should contact Draxtor Despres in-world for further details.

Aditi Inventory Syncing

The code for merging main (Agni) inventories into beta (Aditi) grid inventories is still subject to final testing before being deployed to Aditi. As previously noted in these updates, when this does happen, it will mean that logging-in to Aditi will trigger an automatic merge of your Agni inventory with your Aditi inventory as a part of an overnight (PDT) process. This means that items unique to people’s inventories on Aditi will no longer be lost as a result of their Aditi inventory being overwritten by their Agni inventory (as is currently the case). Once deployed, this update also means that a password change will no longer trigger an inventory sync between the two grids.

Suggestions have been put forward that rather than merging Agni inventory directly into the Aditi inventory structure, the incoming Agni items are delivered to a new top-level folder (perhaps called “Agni” or “Main Grid”) during the merge process, so that people can easily distinguish between unique versions of items they’ve been editing on both Aditi and Agni.

Adobe Flash on CEF Viewers

As has been covered in this blog and others, the Second Life viewer, version 4.0.0+, and all v3 TPVs using that code now makes use of the Chromium Embedded Framework for supporting rich media, including Adobe Flash.

However, for the latter to work with the viewer, it requires a specific version of Flash to be installed on your system. For those interested, Jeremy Linden has provided a knowledge base article on what needs to be installed for the official viewer, and how. With thanks to Willow Wilder for the pointer.

 

SL project updates 16 3/1: Server updates and Bento examples

Telrunya - Forest of Dreams; Inara Pey, January 2016, on Flickr Telrunya – Forest of Dreams (Flickr) – blog post

Server Deployments

As always, check the server deployment thread for any updates.

On Tuesday, January 19th, the Main (SLS) channel received the server update package previously deployed to the three RC channel. This comprises:

  • Feature Request: llGetObjectDetails() constant OBJECT_TOTAL_INVENTORY_COUNT – when targeting an object, OBJECT_TOTAL_INVENTORY_COUNT will return the total of all inventory types in each link of the linkset. See BUG-10575 for further details
  • Feature Request: llGetObjectDetails() constant OBJECT_PRIM_COUNT – provides a means to get a worn attachment’s prim count (rather than just returning 0).  See BUG-10646 for further details.
  • Simulator crash fixes.

On Wednesday, January 20th, the three RC channels should be updated with a new server maintenance package. However, at the time of writing, it looked questionable if the deployment would go ahead. On  Tuesday, January 19th, Simon Linden informed the Simulator User Group meeting attendees that there was a problem on the latest deployment image for update which caused it to refuse to start, and was under investigation.

If the deployment does go ahead, it will comprise a simulator crash fix and a further feature request: llGetObjectDetails() functionality to get the parent_id of any task in the region (OBJECT_REZZER_KEY). This returns the parent_id of any task in the region:

  • If the object came from an object rezzer it returns the ID of the parent object
  • If it was rezzed by an avatar, it returns the agent ID of the avatar.

It will only return details for those objects rezzed in-world after the code has been implemented. Objects already in-world prior to deployment will be ignored (NULL_KEY is returned).

Project Bento

no major news here, other than initial filming for The Drax Files World Makers special on Bento took place on Tuesday, January 19th, 2016. There will be a further round of filming on Wednesday, January 20th. If you are an animator  / content creator who has something you’d like to demonstrate and possibly have filmed for the episode, please contact Draxtor Despres in-world ASAP.

In the meantime, a short piece I stitched together at the filming session, showing an avatar rigged to use the Bento finger extensions compared to a avatar without the rigging; a centaur and a part of bat wings (both by Aki Shichiroji)  utilising the Bento bones.

Finger animation in the video by Abramelin Wolfe. Elephant in the splash image by Medhue Simoni.

SL project updates 16 2/1: server deployments

Server Deployments

As always, check the server deployment thread for any updates.

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

  • Feature Request: llGetObjectDetails() constant OBJECT_TOTAL_INVENTORY_COUNT – when targeting an object, OBJECT_TOTAL_INVENTORY_COUNT will return the total of all inventory types in each link of the linkset. See BUG-10575 for further details
  • Feature Request: llGetObjectDetails() constant OBJECT_PRIM_COUNT – provides a means to get a worn attachment’s prim count (rather than just returning 0).  See BUG-10646 for further details.
  • Simulator crash fixes.

SL Viewer

So far, no promotions or updates to the current batch of RC and project viewers, leaving the list as it stood in week #1:

  • Current Release version: 4.0.0.309247, December 17, 2015 – formerly the Chromium Embedded Framework RC viewer download page, release notes
  • RC viewers:
    • Project Azumarill (HTTP updates) RC viewer, version 4.0.1.309333, dated January 5th
    • Quick Graphics (Avatar complexity & graphics presets) RC viewer, version 4.0.1.309320, dated January 5th
    • Maintenance (30+ fixes and improvements) RC viewer, version 4.0.1.309460, dated January 5th
    • Vivox (Voice fixes and improvements) RC viewer, version 3.8.7.307744, dated November 17, 2015
  • Project viewers:
    • Project Bento (avatar skeleton extensions) version 5.0.0.309171, dated December 16, 2015
    • Oculus Rift project viewer, version 3.7.18.295296, dated October 13th, 2015
  • Obsolete platform viewer (SL access for Win XP  / Mac OS X10.6 users), version 3.7.28.300847 dated May 8, 2015.

During the last TPV Developer meeting of 2015, it had been indicated that the Vivox RC viewer and the HTTP RC viewer were being merged into a single offering. If this is still the case, we can likely expect the updated RC viewer to be appearing soon.

Weekend Issues

For those who may have missed it, April Linden from the Lab’s Operation’s team (who are responsible for trying to keep the grid available 24/7), provided a blog post on the issues Second Life experienced over the weekend of January 9th / 10th 2016, which I also covered in a separate blog post.

SL project updates 16 1/1: Login failures; Project Bento

The Trace too; Inara Pey, December 2015, on Flickr The Trace Too (Flickr) – blog post

Server Deployments

The weekly scheduled server deployments will not resume until week #2 of 2016 (week commencing Monday, January 11th), when there should be a deployment to the three release candidate channels.

SL Viewer

The Maintenance RC viewer was updated on Tuesday, January 5th to version 4.0.1.309460. This sees MAINT-5760 “Favourites sort order reverts every session and no favourites display at the login screen for single name “Resident” accounts” removed from the resolved issues list.

The Quick Graphics RC viewer (graphics preset options and Avatar Complexity) updated to version 4.0.1.309320, also on Tuesday, January 5th. This sees the addition of two further fixes to the resolved issues list:

  • MAINT-5541 “[QuickGraphics] 0 complexity avatar renders as jelly”
  • MAINT-5567 “[QuickGraphics] A mesh attachment causes avatar to be jellybaby while Avatar complexity is set to No Limit”.

Login Failures – Friends List Updates

People have been experiencing log-in failures recently, which appear to be related to issues as the viewer loads / updates the Friends list as a part of the log-in process (see BUG-11032 and BUG-11127).

A typical error message displayed when the log-in failure occurs
The log-in failure issue generates s generic error message

The problem is account-specific, and when I asked Oz and Simon Linden about the problem, and whether a more permanent resolution might be forthcoming, during the simulator User Group meeting on Tuesday, January 5th, Oz replied, “yes, we think we understand what’s up with that… fix is in the works”, although he declined to elaborate further.

In the meantime the advice remains as specified by Alexa Linden on BUG-11032: if you are unable to log in as a result of the problem, you will need to file a support ticket explaining the problem and noting it is a Friends List Login Failure. Support should then be able to fix your account.

Project Bento

There’s no major news on Project Bento beyond what I’ve already reported to date. However, given the project is now in a public beta, user group meetings associated with the project are now open to all as well.

Meetings will take place on Aditi at Mesh Sandbox 2 (note that is an Aditi, location, not the main grid) at 13:00 SLT every Thursday, with the first public meeting scheduled for Thursday, January 7th. In announcing the meetings, Oz Linden also requested those who have any available, to bring example content using the new avatar skeleton extensions along to the meetings (but do notes the region is rated General!).

In the meantime, Cathy Foil, one of the content creators involved in Bento has produced video explaining how the work was handled within the initial development group,

Aditi Password Changes

As I noted in my 2015 week #51 project updates report, there are changes coming in the way Aditi inventory syncs with Agni are handled, which will also affect Aditi password changes. These changes are still to be deployed, so in the meantime, anyone wishing to change their password on Aditi should do so via a support ticket.

Those wishing to attend the Project Bento meeting on Aditi and who have not logged into the beta grid for a while, many want to check that they can in advance of Thursday, January 7th, and if necessary file a support ticket requesting a password update, as noted above.

Object_Rezzer_Key

Object_Rezzer_Key is a new parameter which is to be added to llGetObjectDetails()  early in the New Year. It will allow a rezzed object to find the key of its parent rezzer, then use llRegionSayTo() to chat back to that parent – see my 2015 Project updates: server and Project Bento report for more.

Commenting on this work at the Simulator User Group meeting, Simon said:

OBJECT_REZZER_KEY is in QA and the release process … if things go steady, it would see the beta grid later this week or next, and possibly RC in 2 weeks.   That’s all tentative, of course. … OBJECT_TOTAL_INVENTORY_COUNT and OBJECT_PRIM_COUNT are in the next release (before that one).

 

SL Project updates: server and Project Bento

Winter Wonderland returns
Winter Wonderland – blog post

Server Deployment – Week 52

On Tuesday, December 22nd, the Main (SLS) channel received the same server maintenance project previously deployed to the three RC channels. This comprises crash and internal simulator fixes; LSL HTTP requests accessing data sources that require non-text Accept headers (such as the Destination Guide); and updates to group member counts to help deal with recent group database issues.

SL Viewer

With the no change window now in effect, no updates are anticipated with any of the current crop of official viewers until after Monday, January 4th, 2016. These are:

  • Release viewer, version: 4.0.0.309247, dated December 17th – formerly the Chromium Embedded Framework RC viewer – release notes
  • Project Azumarill (HTTP updates) RC viewer, version 3.8.7.308134 dated November 25th – release notes
  • Vivox (voice fixes) RC viewer, version 3.8.7.307744, dated November 17th – release notes
  • Quick Graphics (Avatar Complexity and graphics presets) RC viewer, version 3.8.7.306758, dated November 12th – release notes
  • Maintenance RC viewer, version 3.8.7.308556, dated December 3rd – release notes
  • Project Bento (avatar skeleton enhancement) viewer, version 5.0.0.309171, dated December 17th – release notes
  • Oculus Rift project viewer, version 3.7.18.295296, dated October 13th – release notes
  • Obsolete platform viewer (for users of Windows XP and OS X versions below 10.7), version 3.7.28.300847 dated May 8th – release notes

It is anticipated the HTTP RC viewer and the Vivox RC viewer will be released as a single RC viewer very early in 2016.

Project Bento

Commenting on the video at the last Simulator User Group meeting for 2015, Simon Linden said, “that video is cool :)”!

Bone Translation and Rotation

As reported in my week 51 project updates, I reported how the Lab was asking for more detailed feedback on specific requirements animators and creators felt they might need with the Bento skeleton. The comment, made by Oz Linden, came after Vir Linden responded to feedback relating to bone translation through animations, rather than relying purely on  rotation with the facial bones (as is currently the case).

These comments have led to more comprehensive feedback through the Bento discussion forum thread, including two videos by Raz Welles, and animated GIF examples from others, demonstrating the need for translation as well as rotation to achieve various results with facial expressions. However, the Lab would still prefer specific examples to be reported in detail (e.g. on the JIRA), with the appropriate files supplied, as Oz Linden again notes on the forum. He goes on to point out as well, that it isn’t just “new stuff” the Lab is looking to offer through Bento:

I’ve seen a number of posts here that include some variation on “we have always had to do XYZ this way because of the SOMETHING bug, and so we can’t do SO-AND-SO” (for example, joint offsets not loading correctly). If there are existing issues that are directly related to Bento (like joint offsets not loading correctly), we’d like to get them fixed so that we can get some of these obstacles out of the way. So, if you’ve got one, please describe it (see previous paragraph – concrete examples we can experiment with) by filing a BUG in JIRA (put [Bento] in the Summary). References to long-standing issues are ok; we’re not only trying to do new things, we’re trying fix at least some old ones too.

Other Bento Bits

The Project Bento Skeleton Guide is now available on the SL wiki.

Some attending the Simulator User Group meetings have expressed a hope that Bento might offer (or pave the way for) animated objects which could use the skeleton. This would provide a means to provide NPCs and creatures which are not necessarily reliant on bots (see SH-2642 as a rough example of this kind of suggestion as well). responding to this at the Simulator User Group meeting on Tuesday, December 22nd, Oz said:

Skeletons for non-avatar objects are out of scope for this round. It’s an obvious improvement that would be good to do someday; whether and when is not currently knowable.

Asked if filing a feature request would be appropriate, he added, “I’m pretty sure we’ve got several variations on that request, but one more certainly won’t hurt.”

Overall the Bento discussion is healthy, although how it all translates into actionable items with regards to the new avatar skeleton extensions remains to be seen. As the Lab has indicated, hopefully there will still be plenty of opportunity to put forward and test further ideas, examples and suggestions during the first part of the New Year to help improve what is currently being offered.

Object_Rezzer_Key

Object_Rezzer_Key is a new parameter which is to be added to llGetObjectDetails()  early in the New Year. It will allow a rezzed object to find the key of its parent rezzer, then use llRegionSayTo() to chat back to that parent. It’s an option which has come up for discussion at User Group meetings a number of times, and at the meeting on Tuesday, December 22nd, Simon Linden indicated that it is something he is currently working on.

The parameter will only work with new objects within a region (existing objects will return a null_key when queried), but it should work after restarts and region crossings (incl. teleports), and with objects which are initially attached and then dropped. Full details will be available when the parameter is officially added to llGetObjectDetails() – Simon offered this news at the User Group meeting by way of being a small gift to those who have been requesting it.

Further Scripting Options for Experiences?

Another set of requests frequently put forward is for further scripted capabilities to be added to Experiences – such as more permissions, camera function additions / fixes further attach / detach / switch object options and an increase in memory for compiling Experience scripts. On these, Simon would only say that he has been looking into increasing script memory for Experience, “and ran into a really sticky problem … how to deal with it when the object goes outside the experience… how it should behave when you go outside the experience area.”

Oz Linden also stated, “Without trying to guess which changes we might make (because I have no idea yet), it has been noted that Experiences gives us some more latitude to provide script capabilities we would not have before because of griefing potential.”

So, it will be interesting to see what might lie in store for Experiences once the Lab are willing to reveal more about what they have planned, and what actually made it into those plans.

SL project updates 51/1: server, misc items

Kaleidoscope; Inara Pey, December 2015, on FlickrKaleidoscope (Flickr) – blog post

Server Deployments

As usual, please refer to the server deployment thread for the latest updates / news.

  • On Tuesday, December 15th, the Main (SLS) channel received the server maintenance package previously deployed to all three RC channels. This package comprises simulator crash fixes (including one for the issue found during the original final testing of the package in week #49) and implements feature request  BUG-10192: adding constant OBJECT_OMEGA to llGetObjectDetails(), so that it can return a vector matching what is returned with llGetOmega(), allowing applications to determine an object’s rate and axis of rotation.
  • On Wednesday, December 16th the three RC channels should all receive the same new server maintenance package, comprising:
    • A simulator crash fix and internal fixes
    • LSL HTTP requests can access data sources that require non-text Accept headers (such as the Destination Guide)
    • Some of the group member counts as reported in the viewer will now be larger. These member counts will include inactive users, and will only updated on a daily basis. This change is to help with some of the problems we have encountered recently with group functions.

This last item is intended to help with the group database issues I reported on in my last project updates report.

SL Server

There have been no updates within the viewer release channel, leaving things as they were in the latter half of week #50:

  • Release viewer: 3.8.6.305981, dated October 26 and formally the Notifications RC viewer
  • Valhalla RC viewer, version 4.0.0.308641 and dated December 7th, comprising the Chromium embedded Framework updates to replace LLQTwebit
  • Maintenance RC viewer, version 3.8.7.308556 and dated December 3rd, comprising over 30 fixes, updates and enhancements
  • Azumarill RC viewer, version 3.8.7.308134 and dated November 25th. comprising a complete replacement of the under the hood HTTP infrastructure within the viewer
  • Vivox RC viewer, version 3.8.7.307744 and dated November 17th, comprising a number of Voice quality and connection issues on both Windows and the Mac
  • Quick Graphics RC viewer, version 3.8.7.306758 and dated November 12th, containing the new Avatar complexity code and the ability to create, save and load graphics presets – see here for more.

Similarly, the Oculus Rift project viewer remains unchanged, and the obsolete platforms viewer remains available.

As there has not been any TPV Developer meeting in the last three weeks, it is hard to determine the overall status of these viewers, or what (if any) the delay is in promoting one of those which had looked set to become the de facto release viewer (the Maintenance viewer looked most likely, following recent issues with the HTTP RC viewer).

Animation Syncing

BUG-7729 is the latest iteration in a long-standing request related to syncing animations, the idea to be to present a consistent view of animations, rather than having animations (e.g. couples dances, etc), either start out of sync or drift out of sync. Commenting on the idea at the Simulator User Group meeting on Tuesday, December 15th, Simon Linden said:

[It’s] part of a list of script feature requests we’ve looked at and said “that’s a good idea and would be nice to do someday”, and it probably involves a new message between the server and viewer. But I totally agree that it would be nice … I’ve seen way too many funky animations glitches due to them being out of sync.

There is certain information that the viewer has which should allow it to more easily track animations and help to maintain sync being avatars using them; however, things get complicated when the user is camming around, which can cause Interest list updates to come into play, or the arrival / departure of other avatars can have an impact, all of which can cause animations to drift out of sync.

One of the concerns with BUG-7729 is that it could evolve into a fairly major project, involving both server and viewer updates and the potential need for new messages, as Simon notes above, hence why he stated on leading-in to the discussion:

When we pick what to work on, the obvious high priority things are stuff where the grid is breaking (like the group db problems) or crashes or exploits, then it’s a matter of figuring out the best thing for a limited effort .. some projects are just too big.

As such, it would seem that a more economic solution in terms of scale possibly using what information the viewer already has, or what it might do, might be a preferable approach.

Firestorm, for example, already has a Resync Animations button, which can be a one-stop means for someone to resync the animations in their personal view should they show signs of drifting. The suggestion is that something like this, or a simple timed adjustment to sync animations might stand a better chance of implementation, were it to be contributed to the Lab for implementation into the viewer.