SL project updates 2017 12/2: TPV Dev and Content Creation meetings

The Heart of the Seablog post

The notes in this update are taken from the following sources:

  • Content Creation User Group meeting, held on  Thursday March 23rd, 2017 at 1:00pm SLT
  • The TPV Developer meeting held on Friday, March 24th, 2017 at 12:00 noon SLT.

A video of the TPV Developer meeting is included, and timestamps to it are included in the text, where relevant. Notes from the Content Creation User Group appear towards the end of this update.

SL Viewer Pipeline

Maintenance RC Re-issue

On Thursday, March 23rd, the Lab released a new Maintenance RC viewer – version 5.0.5.324882 – to replace the faulty March 16th release.  As such, it includes the same set of updates, and I’ve written an overview of the core changes.

Voice RC

[0:19] The Voice RC viewer, version 5.0.4.324770, has a problem with the SSL Certificate Authorities update included with it. This triggers some code deep within the viewer which should not be triggered. This tends to affect TPVs for than the official viewer (the issue was actually noted by Firestorm). It’s be at least a couple of weeks before this matter is resolved, and until it is, the Voice RC viewer will not be progressing, and the Lab is unlikely to expand the cohort of users running it. Alongside of this, but separate to is, is an issue which is giving the viewer a higher than expected crash rate. which is also being looked into. Additionally, among the updates to this viewer and not included in the release notes, is support for the Opus Interactive Audio Codec, although server-side support is still required. This should eventually see further Voice quality improvements.

64-bit Project Alex Ivy

[3:10] As noted in part 1 of this week’s update, the 64-bit viewer was updated on Friday, March 17th to version 5.1.0.503537. This viewer is showing a significantly lower crash rate, although it does have some other issues. It should have a further update in the next two weeks.

360 Snapshot Viewer

[4:06] It appears unlikely that the 360 snapshot viewer will be update in the next week due to the ongoing work with the 64-bit viewer.

Asset Fetching Via HTTP

Vir Linden has been focused on the viewer side of this work, which will see the remaining inventory asset classes – landmarks, gestures, animations, shapes, sounds and wearables (system layer clothing) – switch from UDP delivery through the simulator to HTTP delivery via the via the Content Delivery Network(s) the Lab uses.

[4:42] The viewer for this work may be appearing in week #13 (week commencing Monday, March 27th). However, this is dependent on some back-end web configuration work being completed so that the required simulator changes can be correctly enabled on the Main grid.

Once these remaining assets have been shifted to delivery to the viewer via HTTP / CDN, the remaining UDP messaging for asset delivery will be turned off on the simulator end. This may be around July / August time (to be confirmed once the HTTP updates have reached release status), and will mean any older viewers still using UDP messaging for asset data fetching will be unable to do so.

New JIRA – Soon

[14:35] There is a new JIRA update coming, in line with recent updates made by Atlassian. It is currently on internal testing at the Lab, but there is no time frame as to when it will make a public appearance.

FMod Studio

[16:00] Around the start of the 64-bit viewer project there was a potential for an open-source contributed project for using Fmod Studio with viewer audio. This is likely to be re-examined, and if found suitable it may be up for adoption. However, given it will require a licence, which is likely to take a while to be processed by the Lab, it will not prevent the 64-bit viewer progressing forward toward release. Instead, the code module will be integrated as and when the licence has been obtained.

Content Creation Meeting Round-up

Animation Transitions: as noted in my March 9th CCUG meeting notes, people have been noting issues with animation playback, some of which appear to be related to llSetAnimationOverride, one of the server-side functions for controlling your animation state (see  BUG-7488 as an example).

Vir has been looking at this, but no definitive cause has been found. One suggestion is that it might be related to  Walk Adjust cutting in, which can occur when transitioning from standing to almost any other state when using llSetAnimationOverride. Although is that some transitional animation, such as a pre-jump or landing might be accidentally set to loop, causing an apparently freeze / lock. Vir will continue to poke at this.

Avatar Rendering Calculations:  work continues on refining the rendering cost calculations for avatars. However, this work is still not ready for shipping. Theses adjustments are twofold: to account for more “recent” changes which have been made since the system was last properly evaluated, and to address known issues in how the calculations are made.

Applying Baked Textures to Mesh Avatars: this is still on the short list, but is not an adopted or active project within the Lab as yet.

Rigging Animated Attachments to the Skeleton: there are issues trying to rig animated attachment to the avatar skeleton (e.g. a set of nunchaku or a gun that twirls before being holstered). While they may work OK using a specific avatar shape, problems can occur should the shape be changed (e.g. the nachaku  / gun no longer accurately positions relative to the hand). Medhue Simoni suggests items like this might be rigged and animated to the relevant attachment point instead.

NPCs / Animated Objects: this is still not a formal project at the Lab, but there has been some discussion on the potential feature set, were it to become a project.

Scripted method to position bones: see BUG11407. VIr’s concern with this approach would be the level of complexity / risk of conflicts with animations / need to expand the scripting capabilities on the back-end in order to make full scripted positions of bones useful. However, within the meeting, it was seen as being more useful in being able to fine tune poses for things like photography (e.g. to prevent hands vanishing into breasts or thighs), and thus supplant something like Anypose. As a result, Vir’s agreed to look at tools like Anypose and have a fresh look at the JIRA.

Other Items

Bento Ridable Horse

Strawberry Singh has all the information on a new Bento Rideable horse, which has a release had of Saturday, March 25th. As the name implies, this is a horse which makes full used of the Bento skeleton extensions (so when worn, it is an extension of your avatar).  Berry has produced a tidy video on the horse, and I’ll finish this update by embedding it – read Berry’s blog post for the specifics.

Advertisements

Behind the scenes with Bento in Second Life

Bento: extending the avatar skeleton
Bento: extending the avatar skeleton

Note: this is a compressed version of an article which first appeared in Kultivate Magazine’s January 2017 issue, and which here includes some personal feedback on being peripherally involved in the project.

There can now be few – even among those having only joined Second Life in the last few months – who cannot be aware of project Bento, the work to significantly enhance the Second Life avatar skeleton to better support mesh avatar models, how they are animated and how they might be customised. I was able to observe Bento almost throughout its lifespan. As such, I thought more of a look inside the project might be of interest.

Bento’s heart comes in the form of one person: Vir Linden. Despite the avatar skeleton being one of the most fundamental parts of Second Life which could if interfered with, cause all sorts of issues, Vir was convinced things could be done to make the lot of mesh avatar creators and animators much easier, and without putting additional stress on either the simulator or the viewer. So in early 2015, he started looking at what might be achievable.

Vir Linden, Senior Software Engineer at Linden Lab, and technical project lead for Bento
Vir Linden, Senior Software Engineer at Linden Lab, and technical project lead for Bento

By roughly April 2015 he felt he had enough information to put together a presentation he could put before senior staff at the Lab. Despite the ambitious nature of the project, potentially adding (at that time) 106 new bones to the avatar, the response was enthusiastic and positive. Troy Linden joined Vir from the Product Team, and Bento was born.

Initially, the work was in-house, involving Lab staff and the Moles. However, as the potential  for the project grew, it quickly became apparent that wider expertise would be needed to both give input to the project and help steer the development work. And so it was that a core Bento User Group came together, comprising Lab staff with expertise with the viewer, with the server, and – most significantly – content creators noted for their expertise in developing mesh avatars and avatar accessories (human and non-human), and the people behind the most popular tools for avatar creation and animation: Gaia Clary and Matrice Laville (Avastar) and Cathy Foil (Mayastar).

Like, Vir, Cathy, Gaia and Matrice deserve special recognition for their work on Bento. Not only did they embrace the project and work to update their products to support Bento, they also took on a lot of the grunt work involved in updating essential code used by the viewer to make Bento happen – and they were enthusiastic about doing so. If you make use of a Bento head and are adjusting things using the sliders, offer a word of thanks to the three of them: they’re the people who carefully went through the avatar files in the viewer to get as many of the sliders as possible working with the new facial bones for you to be able to do so.

Vir linden (foreground) and Matrice Laville at a Bento project meeting
Vir Linden (foreground) and Matrice Laville (in the top hat, left) at one of the closed user group Bento project meetings (note the fellow in the top hat to the right of the picture is Rider Linden)

Bento meetings initially took place at a small desert island on Agni, the Main grid. This sat on its own channel to ensure the necessary tweaks to the simulator end of things could be made to try out ideas and options and generally lay the foundations of the project. This work progressed over a period of just over six months until there was a good level of confidence that the project could be taken to the next stage.

This involved moving things to Aditi, the beta grid, and opening things to the public at large. The use of Aditi meant that more extensive testing of simulator and viewer changes could take place, more space could easily be made available for people to experiment, and more people in general could get involved. In time, these meetings would eventually move back to the main grid. It also marked the start of my ability to publicly report Bento progress on an almost weekly basis.

Bento enables much more flexibility when creating and animating human and non-human mesh avatars
Bento enables much more flexibility when creating and animating human and non-human mesh avatars

At the start of the public phase of Bento, the skeleton had stabilised with some 92 additional bones – 60 of which were evenly split between hands and head. However, as the work progressed, this number tended to vary for a time as the need for further bones was identified while some of the new bones were found to be redundant and could be removed. As the same time, additional use cases for Bento were proposed, with every effort being made to incorporate as many as practicable. There were even some fundamental shifts made in how Second Life functions so that more could be achieved through Bento.

An example of this lies with bone translations and rotations. In essence the SL animation system had always worked on the assumption that sliders only affect translation and scale whilst animations only affect rotation, allowing both to work cooperatively.As the animation system was not necessarily seen as an intrinsic part of Bento, little thought was initially given to changing it. However, during the public beta phase of the project, a strong case was made for allowing both translation and rotation through animations – and as a result, the necessary updates were made to the animation system to support this without potential conflicts occurring.

Continue reading “Behind the scenes with Bento in Second Life”

SL project updates 2016 51: server, simulator OS update

DRD Arctic Express
DRD Arctic Expressblog post

Server Deployment

While the No Change window was supposed to have come into operation on Friday, December 16th, there was indeed a deployment to the Main (SLS) channel on Tuesday, December 20th. It comprised the same server maintenance package as deployed to the RC channel in week #50, comprising internal logging changes.

The deployment means that all of the server channels on the main grid (Agni) are now running the same simulator version. As there are no planned deployments to the RC channels, all four channels should remain on this release until deployments resume after the holiday period.

SL Viewer

We might see a 64-bit project viewer appear during the week. However, at the time of writing,  the list of viewers in the various pipelines remains as:

  • Current Release version: 5.0.0.321958, dated December 1st, promoted December 5th – formerly the Project Bento RC viewer.
  • Release channel cohorts:
    • Maintenance RC viewer, version 5.0.1.322219, dated December 9th – some 42 fixes and improvements + Bento support
  • Project viewers:
    • 360-degree snapshot viewer, version 4.1.3.321712 dated November 23rd – ability to take 360-degree panoramic images – hands-on review
  • Obsolete platform viewer version 3.7.28.300847 dated May 8, 2015 – provided for users on Windows XP and OS X versions below 10.7.

Bento Support

With the release of Kokua for Second Life 5.0.0 and RLV 2.9.21 (see my article here), the following currently maintained viewers all have Bento support: Black Dragon, Catznip, Cool VL, Firestorm, Kokua for Second Life, Restrained Love. Alchemy is expected to update to include Bento “soon” and UKanDo is still awaiting a complete overhaul.

In terms of clients with 3D viewing capabilities, Radegast has been updated to support Bento, but the update is pending release. Lumiya for Android will have Bento support added “soon” (Lumiya 3.3 with Voice support released on Sunday, December 18th, and my review is available here).

Simulator OS Update

The Lab is in the process of updating the operating system on the simulator servers. At the moment the new OS version is installed on a number of regions on Aditi (the beta grid), including: Fire Ants 1, Fire Ants 2, Grasmere, Oak Forest, and Twilight Shores, not all of which are open to the public.

“This is one of those ‘features’ that might perform a bit better, but otherwise is a success if it behaves exactly like our current servers,” Simon Linden said at the Simulator User Group meeting on Tuesday, December 20th.

“We’re in the starting process of testing things. We have a lot of testing to do. [We’re] updating from an old version of Linux to a not-so-old version of Linux,” April Linden added. “Just to keep things moving. All the usual reasons. Performance updates, security, etc.”

Second Life hits a lot of low-level server code hard, including networking, memory and multi-processing. The overall hope is to have the newer revisions of the operating system will improve these. Expect this work to reach Agni in early 2017.

Group Chat

Group chat was long a bane of Second Life. In 2014/15 however, the Lab put a considerable amount of work into improving things, although some issues remain. One of these is that if an individual role outside of the default “Everyone” has a very high number of group members assigned to it (e.g. several thousand), it can dramatically impact things like group chat performance and can prevent the members’ list loading. One solution might be to delete the role (converting those in it to Everyone).

SL project updates 2016 50/2: re-caps and Content Creation UG

Fris' Land, Liebe; Inara Pey, December 2016, on Flickr Fris’ Land, Liebeblog post

Server Deployments – Recap

As always, please refer to the server deployment thread for the latest updates and information.

  • On Tuesday, December 13th, the Main (SLS) channel received the same server maintenance package, as deployed to the RC channels in week #49. This includes the following feature requests: BUG-6377 – llGetObjectDetails(id,[OBJECT_ATTACHED_SLOTS_AVAILABLE])  and BUG-40871 – llGetEnv() constant “region_object_bonus”.
  • On Wednesday, December 14th, all three RC channels received the same new server maintenance package, comprising improved internal server logging.

SL Viewer

The official viewers list remains unchanged from earlier in the week:

  • Current release viewer, version 5.0.0.321958, dated December 1, promoted December 5 – formerly the Project Bento RC viewer download page, release notes
  • Maintenance RC viewer, version 5.0.1.322219, dated December 9th
  • 360-degree snapshot viewer, version 4.1.3.321712, dated November 23rd.
  • Obsolete platform viewer, version 3.7.28.300847, dated May 8th, 2015 – provided for users on Windows XP and OS X versions below 10.7.

No Change Window

A reminder that the end-of-year No Change window comes into effect from Friday, December 16th. There will be no further planned server deployments or official viewer promotions after that date, through until Monday, January 2nd, 2017.

Content Creation User Group

On Thursday, December 15th, the Project Bento User Group officially morphed into the Content Creators User Group (thus in a way  also now standing as a revamp of Nyx Linden’s old group).

Meetings will continue to take place at 13:00 SLT on Thursdays, at the Hippotropolis camp fire circle, with the exceptions of Thursday, December 29th and Thursday, January 5th. Anything related to Bento remains on topic for the group, but things of general interest to content creators are also open for discussion.

New Bento Issues

Bento is generating considerable interest among users – as witnessed by the release of Firestorm 5.0.1, when demand overwhelmed the Firestorm servers, and additional mirror services had to be set-up, with assistance from the Lab in doing so. However, some further issues have been identified as a result of Bento reaching a broader audience:

  • BUG-41063 – [Bento] Some Fitted Mesh No Longer Fits on Bento Avatars
  • BUG-41048 – [Bento] When wearing some Bento content, all walking animations freeze

The first of these bugs has been accepted by the Lab and is being investigated. The second appears to be most notably related to animations using the Bento wing bones, which appear to be overriding animation walks, causing an avatar to slide along the ground, rather than walking.

The issue particularly seems to impact walk animation using the llSetAnimationOverride capability, while older ZHAO systems (which tend to use the llPlayAnimation capability, appear to be unaffected. This may be due to the manner in which the latter handle start / stop animations calls, which is successfully preventing the issue manifesting with them.

The underlying cause is thought to be a possible animation priority setting / conflict or possibly the result of the wing bone animations having bone positions being set for all other, but not rotation data – but further investigation is required. Vir has taken samples of items which can cause the issue (again, notably, but not necessarily limited to, wings), and is going to have a poke at them to see if he can see what is going on.

Elsewhere, creators are waiting on Avastar to update, and Damien Fate has a rather neat HUD to help animate Bento hands and fingers. It’s unlisted, so I’m linking to it, rather than sharing it via embedding.

Fun Fact

The new Linden Lab portal parks have a LI capacity of 45,000 (with thanks to Cube Republic and Arton Rotaru for the pointers).

Portal Park LI capacity
Portal Park LI capacity

 

 

 

2016 SL project updates 49/2: Bento and web and bits

lw-3b_001
Luane’s Magical World, Morning Glowblog post

Server Deployment – Recap

  • On Tuesday, December 6th, the Main (SLS) channel was updated with the same server maintenance package deployed to the three RC channels, comprising internal simulator changes.
  • On Wednesday, December 7th, the three RC channels will received the same new server maintenance package, which includes the following feature requests:
    • BUG-6377 – llGetObjectDetails(id,[OBJECT_ATTACHED_SLOTS_AVAILABLE]) – Returns a value that is number of attachment slots allowed by the server minus the number of attachments worn by avatar. Returns 0 if avatar is not in the same region or if UUID is not an agent.
    • BUG-40871 – llGetEnv() constant “region_object_bonus” – returns the object bonus set for a region.

Bento Update

The major news is that Bento was officially pronounced “live” on Monday, December 5th with the promotion of the Bento viewer code to de facto release status – see the official blog post or my covering article. Currently  – and as far as I’m aware – Black Dragon has a release out supporting Bento, Cool VL viewer has had Bento updates in the experimental branch for some time, and both Firestorm and Catznip will be issuing updates with Bento support very soon.

The announcement was followed with some further releases of Bento capable content on the Marketplace, and more will doubtless follow as Bento reaches more viewers and Avastar is fully updated (see below).

Troy Linden, the product lead for the project, passed on congrats and thanks to all who have been involved in the project, and Vir Linden’s role in getting things rolling and taking responsibility for getting things to work in the viewer.

One issue that wasn’t fixed prior to release was that of facial deformations occurring at altitude, which was noticed very early in the project.

Cathy Foil demonstrates the mesh deformation which becomes more pronounced with altitude (starting at around 1,000m and getting progressively worse through 4,000m)
Cathy Foil demonstrates the mesh deformation which becomes more pronounced with altitude (starting at around 1,000m and getting progressively worse through 4,000m)

As this particular problem appears to be part of a broader issue of floating point calculation errors and it can be overcome by using hardware skinning,  it wasn’t seen as a significant enough issue to warrant holding back Bento.  Should you encounter it, try using hardware, rather than software skinning on your system.

Future Follow-Ons for Bento

As Bento was being developed, a number of ideas for follow-on projects were put forward. Two of these include:

  • “unwearing” the default avatar while allowing baked textures & reducing the complexity of avatar bodies(see BUG-10980). Vir has previously indicated an interest in pursuing this idea (and the feature request has been accepted by the Lab).
  • Splitting the avatar shape into different elements (e,g, head and body), seen as making it easier for users who are uncertain about customising their form using the sliders, or who have a No Mod shape associated with their head or body to be able to mix and match more easily.

No final decision has been made on what might follow Bento or when, but given Vir’s feedback on splitting the avatar shape into separate elements would require a fairly extensive re-working of how avatar appearance is handled (up to and including changes to the baking service), it would seem unlikely this would be adopted,

Avastar and MayaStar

Avastar is still in the process of being updated to give expected support for Bento, and a new version is anticipated in the near future – users should keep an eye on the Avastar website for news. Cathy Foil believes that MayaStar is fully up-to-date, and while there have been reports of problems, these appear to be user error rather than bugs in the software, so she is considering further tutorial videos.

Future Meetings

Bento meetings will continue for a while (allowing for upcoming holidays). They may still be broadened into more of a content creation style meeting if there is sufficient interest. This is still TBD. The next meeting will take place on Thursday, December 15th at the Hippotropolis Camp Fire Circle, as usual, commencing at 13:00 SLT.

Web Properties Update

On Monday, December 5th, Grumpity Linden issued a further blog post on recent SL web property updates, which also included a minor update (contents unspecified to the lindenlab.com properties.   In terms of Second Life, the updates can be summarised as:

  • Maps:
    • slurl.com was officially retired on November 22nd, everything is now maps.secondlife.com – slurl.com/secondlife/ are redirected.
    • Viewing a specific location on maps.secondlife.com no longer throws a 404 error in the console.
    • Maps no longer  disappear at peak use times.
  • A large infrastructure update was made to secondlife.com along with security fixes and several minor bug fixes.
  • The Marketplace had an Events infrastructure stabilization to fix a few listing bugs.
  • A minor Security fix was released.

The update also referenced the new Grid Status page service.

Project Bento live in Second Life

Bento: extending the avatar skeleton - now officially live on the grid!
Bento: extending the avatar skeleton – now officially live on the grid!

On Monday, December 5th, Linden Lab announced that Project Bento is now “live” on the main grid following the promotion of the Bento Release Candidate viewer to de facto release status.

Project Bento is – as I’m sure everyone is only too aware – the project to enhance the avatar skeleton for use in mesh models, human and non-human (please note the new bones cannot be used with the system avatar).

It’s a project I’ve covered extensively in this blog, having been a part of both the closed and open beta phases of the work. However, just in case you have missed it. Bento adds a range of new bones the Second Life avatar skeleton, all of which can be rigged and weighted in mesh avatar models, and many can be used for a wide variety of purposes: limbs, wings, ears, tails and more. In particular, Bento adds over 30 bones to the avatar’s hands and avatar’s face, allowing mesh creators to design hands with movable fingers and faces which can be far more expressive. The Lab’s promotional video released as Bento entered a main grid beta phase is embedded below.

As many of the bones are tied to the Second Life appearance sliders, it also means that – subject to caveats from individual creators – avatar meshes can be customised easier by users. So, for example, avatar heads can be tweaked to give a more personal look when compared to the “off-the-shelf” version of the same head.

For non-human avatars, Bento brings a host of new possibilities and easier ways of doing things. Animal and humanoid avatars can be made which are more life-like, make better use of resources and offer fascinating new opportunities for wearable avatars, pets and more.

A GIF of Medhue Simoni's elephant avatar enjoying a little bit of the Bee Gees. Medue is one of the creators / animators who has been at the forefront of Bento development - check his video for more on the elephant and his You Tube channel for Bento information in general
A GIF of Medhue Simoni’s elephant avatar enjoying a little bit of the Bee Gees via Staying’ Alive. Medue is one of the creators / animators who has been at the forefront of Bento development – check his video for more on the elephant and his You Tube channel for Bento information in general. Credit: Medhue Simoni, via Linden Lab.

To aid in Bento content creation, the project has heavily engaged the talents of Cathy Foil and the Machninimatix team to ensure that MayaStar, Cathy’s SL plug-in for Maya, and Avastar, the Blender add-on from Gaia and Matrice are fully Bento compliant – and all three have been instrumental in moving Bento forward.

There are a couple of additional options which are included in the viewer called Reset Skeleton and Reset Skeleton And Animations, and can be found on the right-click avatar context menu. They have been included because sometimes, when changing between one mesh avatar and another, the basic SL avatar can become deformed, resulting in it looking squished, stretched, caught between two looks, or something else.

The problem is generally the result of race conditions when the avatar’s appearance is being updated, and both of these buttons are intended to correct the problem  – the option to reset animations as well is intended to fix deformations which may be due to animations also kicking-in incorrectly / at the wrong time.

The reset skeleton options (right-click context menu in the official viewer) should "fix other avatars which appear distorted in your view after changing their form (left menu) or your own avatar if the same happens to you (right menu) - note both options only affect your view of the avatar in question
The reset skeleton options (right-click context menu in the official viewer) should “fix other avatars which appear distorted in your view after changing their form (left menu) or your own avatar if the same happens to you (right menu) – note both options only affect your view of the avatar in question. Obviously, the location of these options may vary as TPV release Bento ready viewers

An important thing to not with both these option is they only fix the avatar in question (your own or someone else in your view. They do not affect how other people are seeing the same avatar.

As stated above, content creators have been engaged in the project, and so some Bento content is already available in-world and via the SL Marketplace – and doubtless more will be appearing in time. However, you do need a Bento capable viewer to render Bento content correctly. Hopefully, it will not be long before TPVs also release Bento capable updates as well (some already have Bento updates available as experimental versions, or undergoing closed user group testing).

In the meantime, I’ll leave you with a list of additional Bento and related resources and information.

Additional Bento Links