SL project updates 16/2: Content Creation User Group

The Content Creation User Group meeting, at the Hippotropolis Camp Fire Circle (stock)

The following notes are taken from the Content Creation User Group meeting, held on  Thursday April 20th, 2017 at 1:00pm SLT at the the Hippotropolis Camp Fire Circle. The meeting is chaired by Vir Linden, and agenda notes, etc, are available on the Content Creation User Group wiki page.

The meeting was live streamed / recorded by Medhue Simoni, and that video is embedded at the end of this update, my thanks to him for providing it. Timestamps in the text below will take readers directly to the relevant point in the video (in a separate tab) where topics are discussed.

Supplemental Animations

This is an idea to overcome issues of animations states keyed by the server-side  llSetAnimationOverride() conflicting with one another. This problem has been particularly noticeable since the arrival of Bento, and a typical example is that an animation to flap Bento wings, if played to have natural wing movement while walking, results in a conflict with the walk animation, causing the avatar to slide along the ground.

Again, this is only an issue with the server-side animation triggers; older scripted animation overriders, such as ZHAO, which use the scripted llplayanimation function are unaffected.

[03:41] This is still under discussion at the Lab, and if anyone has specific views / ideas, they are invited to attend the CCUG meetings and discuss them.

Scripted Avatar Skeleton Reset

[05:45] A question was raised (via chat) on whether it would be possible to reset the avatar skeleton via script (rather than replying on the local Reset Avatar options in the viewer), as bone offsets defined within some meshes are not resetting when the mesh is removed (see BUG-11310).

Vir indicated that having a means to do this via script may well be useful, but is unsure of where it might slot into the work priorities were it to be adopted, particularly as it would require a new server-side message for passing the update notification to all surrounding viewers.

Skeleton Reset on Region Entry

[13:52] The above spawned a question on having the viewer automatically perform a Reset Skeleton function on entering a region. to try to also combat problems of avatars appearing deformed.

There are some cases where this might be useful. If you run an animation just once to trigger a deliberate avatar deformation, (e.g. from human to quadruped), that animation is not persistent, so if you enter another region, there is a chance other people will see you as deformed. However, trying to fix such situation through an automated skeleton reset is seen as problematic.  For example, an automatic skeleton reset by the viewer on entering a region could conflict with the receipt of animation updates intended to deform an avatar in your view so it looks correct, resulting in the avatar being unintentionally deformed (again, as in the case of an avatar which is supposed to be a quadruped appearing as a deformed biped, as the Viewer has ignored the necessary appearance information as a result of the automated reset.

Projects Under Consideration

The last several Content Creation User Group meetings have included discussions on two potential projects for the Lab. Neither has been as yet adopted, but are under possible consideration by the Lab, and Vir offered a recap of both.

Applying Baked Textures to Mesh Avatars

[20:57] This is essentially taking the ability of the default avatar baking service to manage compositing and baking system layers (skins, shirts, pants, jackets, tattoos, etc), onto a default avatar, and extending it to be used on mesh avatars, potentially reducing the complexity of the latter (which have to be built up in “onion skin” layers in order to be able to handle things like tattoos, skins, make-up options, etc.), and thus making them more render-efficient.

As mentioned in previous Content Creation updates in this blog, there are some issues with doing this: the baking service would likely need to be tweaked to handle 1024×1024 textures (it currently only support up to 512×512); it does not handle materials (although this is not seen as a major issue, as it is felt among those at the CCUG meetings that the primary use of the baking service would be for compositing skins + make-up /  tattoos into a single texture for mesh application), etc.

Animated Objects / NPCs

[25:17] Animated support of object in-world could be used from a wide variety of things, from non-player characters (NPCs), which do not require a link to an active viewer / client, through to animating things like tree branches swaying in a breeze, etc.

This work has various levels of complexity associated with it, and were it to be adopted, might actually result in a series of the related projects. NPCs in particular would be an extensive project, as it would need to encapsulate a means to define what the NPCs are wearing / have attached, how to make NPCs customisable through something like the avatar shape sliders, etc.

As such, were the Lab to decide to pursue animated objects, decisions would need to be made on overall scope for the project, what might be initially tackled, what might be seen as a follow-on project, etc.

How To Encourage the Lab to Adopt Projects

[28:03] Supplemental animations, bakes on meshes and animated objects have been the three major topics of discussion within the Lab in terms of possible major projects. Until they actually get on to the Lab’s roadmap (*if* they get that far), it is not easy for specific time frames, etc., to be discussed at meetings.

However, the best way to actively encourage the Lab to continue looking into such potential projects is to attend meetings like the CCUG and discuss them. Despite using them in the past, polls aren’t seen as particularly useful, whereas direct discussion through meetings like the CCUG tend to bring a consistent set of interests / ideas / suggestion to the service.

Continue reading “SL project updates 16/2: Content Creation User Group”

SL project updates 16/1: server, teleports and other bits

The Incredible 4 blog post

Server Deployments

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

  • On Tuesday, April 18th the Main (SLS) channel received the server maintenance package previously deployed to the RC channels in week #15. This includes:
    • Several internal fixes and two new internal logging modes
    • Another adjustment to fix issues with off-line IM and Group Notice delivery reliability
    • Fixes an issue where large numbers of objects could be returned after a rolling restart.
  • On Wednesday, April 19th, the RC channels should be updated as follows:
    • BlueSteel and LeTigre should receive the improved region capacity and access capabilities
    • Magnum looks set to receive a new “secret” update, which has been under testing on the Snack channel (and will likely have Snack reabsorbed into it).

SL Viewer

There have been no viewer updates thus far this week, leaving the viewer pipeline as:

  • Current Release version: 5.0.3.324435, dated March 13 – snapshots to e-mail hotfix
  • Release channel cohorts :
    • Project AssetHttp project viewer version 5.0.4.325368 dated April 12th – This viewer moves fetching of several types of assets to HTTP / CDN – overview
    • Maintenance RC viewer version 5.0.4.325124 dated April 3rd – avatar rendering and other updates
  • Project viewers:
    • Project Alex Ivy (LXIV), 64-bit project viewer version 5.1.0.503537 dated March 17th
    • 360-degree snapshot viewer version 4.1.3.321712 dated November 23, 2016 – 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.

Other Items

Differences Between Teleporting and Physical Region Crossings

As we know, whether you teleport between one region and another or physically cross the boundary between two regions, you are performing a region crossing. However, there is a slight different in how they are handled. Rider and Simon Linden described the processes involved during the Simulator User Group meeting, which makes for interesting reading if you weren’t previously aware of the processes involved.

In referencing teleporting between regions, Rider said, “Teleport packs your avatar into a big ball of data and throws you at the destination.” It’s then left up to the destination region to determine whether or not you actually get in. Hence the teleport progress bar.

Simon then said of a physical region crossings, “They do a bit more pre-crossing checks to see if you go into the neighbour[ing] region than TPs do.” Rider Linden then added, “If the regions are adjacent, the sim you are on checks to see if it should smush you into that ball before it does.”

These pre-crossing checks are handled through your child agent on the neighbouring region, allowing the simulator running the region you’re currently in to “see” if you’re able to access the neighbouring region. If it believes you can’t, it won’t bother creating the ball of data about your avatar (and everything attached to it), reducing its workload.

When is a Region Not a Region?

A curious topic came up at the meeting: when is a region not a region? The simple answer is probably “when you can’t see it”. But what about if you can – apparently – see it, at least on the map, and it doesn’t appear to have a name.

The mystery island as it appeared for some people using both the LL viewer and Firestorm

Whirly Fizzle spotted this phenomenon on the World Map with a region apparently adjoining The Epiphany, although her curiosity was piqued as it was apparently without a name. The mystery deepened when most of those at the meeting reported they couldn’t see any such region on their maps – although two or three besides Whirly could, on both TPVs and the official viewer (ruling on an issue in how a specific viewer is handling the map data).

What was equally mysterious, was that those who were able to see the unnamed island on the World map could also see it on the web SL map – while those who couldn’t see it on the world map also couldn’t see it on the web SL map.

As other saw the same area on the map – regardless of viewer

Several theories were put forward for the phenomenon, including it being a  non-updated map texture; a potential error in map tiling and loading;  an  old texture loaded and stuck at the  wrong LOD; and so on.  Running a quick check, Simon Linden couldn’t find any evidence for a region ever having been placed in any of the eight grid areas surrounding The Epiphany. He did, however, offer a possible explanation of what might have happened:

I do know the support team will do some interesting tricks sometimes … they will move one of their regions next to another to do some sort of work, then move it away. Perhaps that got captured there.

Either way, a curious little anomaly.

Mesh UUID Flipping via Script / UUID

Back in the mists of time as mesh support was being added to Second Life, there was the ability to change mesh assets via UUID / LSL. However, the ability was used most frequently as a means of animating meshes  – putting considerable stress of the rendering system in the process. Because of this, a wiki page on the subject was raised, and the ability to change mesh UUIDs via script was eventually removed altogether.

The Lab is currently considering implementing a means to animation meshes (something routinely discussed at the Content Creator’s User Group meeting). This would be a far more efficient and less stressful means of animating meshes where it to be taken up as project, and completely negate the need for animation via UUID flipping.

However, while allowing meshes to be changed through scripts / UUIDs has other potential uses, it is unlikely to be re-introduced even if animated meshes are introduced to SL, because anyone obtaining the UUID for a mesh could potentially download the “mesh” as a vnd.ll.mesh  file from the CDN, and could then theoretically reconstruct the original mesh item from that data (thus effectively stealing it).

2017 Viewer release summaries week 15

Updates for the week ending Sunday, April 16th

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

  • It is based on my Current Viewer Releases Page, a list of all Second Life viewers and clients that are in popular use (and of which I am aware), and which are recognised as adhering to the TPV Policy. This page 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
  • By its nature, this summary presented here will always be in arrears, please refer to the Current Viewer Release Page for more up-to-date information.

Official LL Viewers

LL Viewer Resources

Third-party Viewers

V5-style

V1-style

Mobile / Other Clients

  • No updates.

Additional TPV Resources

Related Links

SL project updates 2017 15/2: server updates / content creation (w/audio)

The Incredible 4blog post

Server Deployments – Recap

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

  • The was no Main (SLS) channel deployment or re-start on Tuesday, April 11th.
  • On Wednesday, April 12th, the three RC channels all received a new server maintenance package which includes:
    • Several internal fixes and two new internal logging modes
    • Another adjustment to fix issues with off-line IM and Group Notice delivery reliability
    • Fixes an issue where large numbers of objects could be returned after a rolling restart.

Upcoming Server Updates

Note: DRMSIM is the Aditi (beta grid) channel reference.

DRTSIM-323: New Simulator Build

This update was delayed in its deployment to a release candidate channel on Agni (the Main grid), with Mazidox Linden indicating it will now be moving in week #16 (commencing Monday, April 17th). Region holders wishing to test their applications / services etc., on the new simulator build should contact Concierge about having their region moved to the appropriate RC channel(s) when known.

DRTSIM-332: Updated Avatar Capacity / Access for Regions

See either Improved Region Capacity and Access from the Lab or Lab announces improved region capacity and access in Second Life in this blog for details. This update is currently on a micro-channel (McRib) on Agni, with Mazidox noting the following:

After careful consideration, we’re making the new limits a default, rather than requiring intervention from Estate Managers (of course it is still possible to set limits lower using the region console or the current Maintenance viewer at http://wiki.secondlife.com/wiki/Linden_Lab_Official:Alternate_Viewers ). As a result there’s a new version on Aditi and we’ll have an updated version for McRib soon.

DRTSIM-343: Allow Public Access Region / Parcel Settings Changes

This is the updates to region / parcel access that will mean that if a region is explicitly set to Allow Public Access, parcel holders on the region will no longer be able to override the setting at the parcel level (see my update here). The update had been deployed to the three RC channels, where it was awaiting a viewer-side update featuring revised / improved land controls. However, Mazidox notes the code:

Was removed from RC after residents raised concerns about losing their previous state of “Allow Public Access”. To alleviate concerns of accidental change by landlord wiping out existing access settings on all parcels, we’re saving parcel setting until the region restarts. This means that while it won’t be saved permanently, it will be restored if the landlord removes their Ban Lines override. DRTSIM-343 will likely be back this week in testing, but may not have a corresponding viewer change yet.

DRTSIM-347: Fix for Incorrect Object Returns

This fix is designed to prevent a bug wherein objects might be returned from a region when it is restarted. It is about to undergo testing on Aditi prior to onwards deployment to Agni.

Content Creation User Group

The following notes are taken from the Content Creation User Group meeting, held on  Thursday April 13th, 2017 at 1:00pm SLT at the the Hippotropolis Campfire Circle. The meeting is chaired by Vir Linden, and agenda notes, etc, are available on the Content Creation User Group wiki page. The audio extracts are from my own recording, and a video of the entire meeting, livestreamed by Medhue Simoni, is embedded at the end of this update.

HTTP Asset Fetching

Vir re-iterated that the HTTP asset viewer, which utilises HTTP and the Content Delivery Network(s) leveraged by the Lab to deliver all Second Life asset types to users (rather than just mesh and texture assets and avatar baking data) as is currently the case with release versions of viewers), is now at Release Candidate status. The viewer has gone through two rapid-fire updates, with the latest version (at the time of writing) being 5.0.4.325368. I have an overview of the viewer, which includes an explanation of CDN use, for those who may not be familiar with the way things work.

Applying Baked Textures to Mesh Avatar

[Video: 2:04-18:35] The Lab is digging further into this idea, which if implemented would in theory allow at least some texture layers to be baked onto avatar meshes in a manner akin to that used with system layers and the default avatar. This could greatly reduce the complexity of mesh avatar bodies by removing the need for them to be “onion skinned” with multiple layers, although there are some issues which would need to be addressed.

One is that the baking service cannot currently handle materials (normal and specular maps; only texture – diffuse – maps), and the Lab has no idea as to how widespread either might be among clothing makers specifically producing applier systems for mesh bodies (which can support the use of materials). As such, they do not have a clear idea as to whether support for materials through the baking service would be required; something that could make any project related to this idea far more complicated to develop.

This led to an extensive discussion on what would be required from a system which could bake directly onto mesh layers, how widely materials might be used, and exactly how such a system would be used. The broad consensus of the discussion was that in terms of baking down layers, most creators like likely prefer to see things like skins and skin variations, tattoos, lingerie, freckles and eyebrows  baked down to a single layer, none of which tend to require significant materials support.

The discussion also touched upon the opportunity to present better alpha masking / alpha blending than chopping up mesh bodies into sections for masking / having alpha blending on different layers get into a fight, etc. Overall, it was felt that presenting some means to bake down some layers and reduce the complexity inherent in mesh avatars would be preferable to waiting on the Lab to be able to undertake a more widespread overhaul of the baking service to provide “full” materials support through it. Vir is going to take these points raised back to the Lab for further consideration.

Animating Objects

Animating mesh objects is another project under consideration. This would be especially useful for things like non-player characters (NPCs) and the like. There are several ways this might be approached, but as Vir explained in reply to a question, none of them would involve animating the Collada file. He also pointed out that animated objects is still only at the discussion stage, so whether any project – were it to be taken on – would include the ability for animated objects / NPCs to attach static objects (e.g. a hat or similar), hasn’t been addressed.

Rapid Round-Up

Animating Objects (/ NPCs): This is also still under consideration, but yet to be adopted as a project. However, were it to go ahead, it would likely not involve animated the Collada files, as suggested during the meeting, but leverage SL’s existing animation capabilities. It’s also too early in the process to say whether or not animated objects would support static objects being attached to them (e.g. an NPC being able to wear different hats).

Supplemental animations: The idea is to allow “supplemental” animations to run alongside the animation states keyed by llSetAnimationOverride(), effectively allowing them to play together, rather than conflicting with one another as is the case at the moment. Suggested some time again, it is still be considered, but no work has been carried out as yet.

Rendering Cost Calculations: he Lab is running a background project to look at the cost of rendering a wide range of Second Life features across a range of different client systems running the viewer. The tests for this work have now been defined and are about to be put into use. Once sufficient data has been gathered, the Lab will use it to determine what might need to be done to improve the accuracy of the avatar rendering calculations. Vir further defined the project’s status:

Re-using Linden Water Maps: The question was asked about re-using Linden Water data (Linden water being a combination of animated diffuse and normal maps) so that it might be re-used on other surfaces. The obvious use here would be to enable mirrors. Quite aside for the feared performance hit this could cause, it seems likely that the water system probably stands as its own unique implementation which would not easily lend itself to other uses.

Bouncing Bewb Improvements: In creating a set of animation for a client, Medhue Simoni noticed an issue with breast attachments and rigged mesh breasts. Essentially, as breast attachments go to the chest, they don’t necessarily follow the movement of the breasts when physics are used (which utilise the volume bone). His suggested solution would be to allow breast (/ nipple) attachments to be attached to the volume bone instead, allowing them to naturally follow breast movement,

Other Items

Aditi Inventory Server Update

The Lab has upgraded the hardware for one of the Aditi inventory servers. Almost all users logging-in to Aditi should be using it. There is a request that if those who do file a bug report f they notices anything strange related to inventory: lag, failure to load, textures looking incorrect etc.

SL project updates 2017 15/1: server, viewer

Sky Gardens, Holly Kai Park

Server Deployments

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

  • The was no Main (SLS) channel deployment or re-start on Tuesday, April 11th.
  • On Wednesday, April 12th, the three RC channels should all receive a new server maintenance package which includes:
    • Several internal fixes and two new internal logging modes
    • Another adjustment to fix issues with off-line IM and Group Notice delivery reliability
    • Fixes an issue where large numbers of objects could be returned after a rolling restart.

It had been indicated that the new server OS build could be deployed to an RC this week. Whether this would be a “full” RC (BlueSteel, Magnum or LeTigre) or perhaps to a limited channel (as is the case with the increase avatar capacity updates, which are on McRib),  was made clear. More on this later in the week, maybe.

SL Viewer

The recent Voice RC, version 5.0.4.324770 was withdrawn some time on Monday, April 10th / Tuesday April 11th as a result of suffering a high crash rate.

The AssetHTTP project viewer was promoted to RC status with the release of version 5.0.4.325144 on Monday, April 10th.

This leaves the remainder of the current viewer list as:

  • Current Release version: 5.0.3.324435, dated March 13th – snapshots to e-mail hotfix download page, release notes
  • Release channel cohorts:
  • Project viewers:
  • 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.

2017 Viewer release summaries week 14

Updates for the week ending Sunday, April 9th

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

  • It is based on my Current Viewer Releases Page, a list of all Second Life viewers and clients that are in popular use (and of which I am aware), and which are recognised as adhering to the TPV Policy. This page 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
  • By its nature, this summary presented here will always be in arrears, please refer to the Current Viewer Release Page for more up-to-date information.

Official LL Viewers

LL Viewer Resources

Third-party Viewers

V5-style

  • Black Dragon updated to version 2.6.9 on April 4th (change log).
  • Kokua OpenSim updated to version 4.2.1.39007 on April 2nd – bug fix release. As an OpenSim viewer, this version of Kokua does not support Bento or “Jelly Dolls” (release notes)

V1-style

Mobile / Other Clients

  • No updates.

Additional TPV Resources

Related Links