As always, please refer to the server release thread for updates and the latest news.
On Tuesday, September 26th the Main (SLS) received the server maintenance package previously deployed to the BlueSteel and LeTigre channels. 17#17.09.14.508549 comprises improvements to address some problems that could degrade simulator performance in rare cases.
On Wednesday, September 27th, the RC channels should be updated as follows:
BlueSteel and leTigre were still “TBD” at the time of writing.
Magnum should receive a new server maintenance package, 17#17.09.22.508905, containing improvements to e-mail verification logic (IM to e-mail) which sees the system checking whether the receiving e-mail address is verified or not. Sending to unverified addresses is not blocked – as yet.
In light of the Magnum change, those who have not verified their e-mail address, should seriously consider doing so.
SL Viewer
The Wolfpack and Maintenance RC viewers were updated on Friday, September 22nd; however the updates were pulled to allow time for Microsoft to assist with resolving an issue with Windows SmartScreen flagging new releases of the SL viewer as possibly “unsafe”. This matter (due to the expiry of a code-signing key) was resolved over the weekend, and the two updated RCs were once again made available through the Alternate Viewers wiki page on Monday, September 26th.
This leaves the current viewer release pipeline as follows:
Current Release version 5.0.7.328060, dated August 9, promoted August 23 – formerly the Maintenance RC
Maintenance RC viewer, version 5.0.8.329115, dated September 22.
Wolfpack RC viewer,version 5.0.8.329128, dated September 22 – this viewer is functionally identical to the release viewer, but includes additional back-end logging “to help catch some squirrelly issues”
Alex Ivy 64-bit viewer, version 5.1.0.508209, dated September 5
Voice RC viewer, version 5.0.8.328552, dated September 1
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. This viewer will remain available for as long as reasonable, but will not be updated with new features or bug fixes.
Updated, September 25th: As indicated to me by Grumpity Linden, the cause for the Wolfpack and Maintenance RCs to be withdrawn as noted in this article (and which was as a result of this issue), has now been resolved and the two updated versions of these viewers are once again available. As a result, the links to their release notes and download options have been restored.
The majority of the notes in this update are taken from the TPV Developer meeting held on Friday, September 22nd 2017. The video of that meeting is embedded at the end of this update, my thanks as always to North for recording and providing it. Timestamps in the text below will open the video in a separate window at the relevant point for those wishing to listen to the discussions.
Server Deployments Week #38 – Recap
There was no deployment / restart on the Main (SLS) channel on Tuesday, September 18th, leaving that channel running on 17#17.09.01.508236.
On Wednesday, September 19th, the RC channels were updated as follows:
BlueSteel and LeTigre received a new server maintenance package, 17#17.09.14.508549, comprising improvements to address some problems that could degrade simulator performance in rare cases.
Magnum received a new server maintenance package, 17#17.09.14.508533, containing a fix for BUG-100505 “llGetEnv (“agent_limit”) is returning an empty string in Magnum, LeTigre and Blue Steel regions.”
SL Viewers
Alex Ivy 64-Bit
[0:54 and 6:00] The Alex Ivy 64-bit viewer is due an update, possibly in the early part of week #39 (commencing Monday, September 25th). This may not have all the fixes required for the viewer to get promoted to de facto release status. Before this happens, the Lab wants to tackle the problem with pipeline stalls in this viewer, and are working on an experimental branch of the viewer to try to resolve the issue. This branch will be made available as a test viewer to those who have reported the issue and can reliably repro it. Depending on the outcome of this testing, a decision will be made on folding it into the RC branch for the viewer.
The wiki instructions for the viewer should now be updated to the 64-bit build requirements, nd Oz indicates that a new 64-bit Havok library should follow the release of the viewer.
Voice Viewer
[1:33,2:13, and 34:02-37:14] There will be a new Voice SDK arriving for the Voice RC viewer in the near future, which will include an updated SDK that includes a fix for some long-standing problems. There are still some problems to be fixed, so it is unlikely this viewer will be promoted until the new SDK has spent time in RC and the remaining major issues have been resolved.
This viewer already fixes the high number of failures to connect to the Voice service when logging-in; however, there is an issue where manually killing the Voice process will not restart (as it used to), and so Voice won’t work. The Lab would like to fix this so the process does restart the process, but this is not seen as a critical issue to be resolved before the viewer is promoted.
The new SDK does not alter the Voice protocols, but is not compatible with previous versions, requiring the supporting updates in the viewer to work. This means the new SDK cannot work with older viewer versions, and older SDKs cannot be used with viewers incorporating the code updates to support this new SDK.
Maintenance and Wolfpack RCs
[2:04 and 4:15] The meeting references updates to the Maintenance RC viewer (to 5.0.8.329115) and the Wolfpack RC (to 5.0.8.39128). While both updates were available at the time of the meeting and shortly thereafter, the Alternate Viewers wiki page now references the previous RC releases for both (5.0.8.329065 and 5.0.8.328990 respectively). It is not clear whether this is an error with the wiki page, or if the updated RCs have been withdrawn (both still appear on the viewer release notes list). Resolved.
Snapshot Viewer
[5:14] There may be a new updated to the 360 snapshot viewer in the next week to two weeks. Work has also started on providing better support for using 360-degree images in Second Life Place Pages (see here and here for more on Place Pages).
Pipeline Status
Keeping the above in mind, the current viewer pipeline comprises:
Current Release version 5.0.7.328060, dated August 9th, promoted August 23rd – formerly the Maintenance RC
Release channel cohorts:
Maintenance RC viewer, version 5.0.8.329065, dated September 18th.
Wolfpack RC viewer,version 5.0.8.328990, dated September 12th – this viewer is functionally identical to the release viewer, but includes additional back-end logging “to help catch some squirrelly issues”
Alex Ivy 64-bit viewer, version 5.1.0.508209, dated September 5th
Voice RC viewer, version 5.0.8.328552, dated September 1st
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.
New Viewer Splash / Log-in Screen
[7:12-7:42] As noted in my week #36 TPV meeting notes, Phronimos Linden is updating the viewer splash screen which will see a different look and feel to the screen, including how information is displayed (such as making grid status info more prominent), and will see updates to some of the widgets providing information in the splash screen. This work is now with the QA team, and information on the updates will be available for TPVs soon.
Windows Viewer Installation Warning
[7:47-8:48] The Lab’s code-signing key used to verify the viewer with Windows (notably Windows 10) has expired. The Lab have a new key, but for an interim period, it means users installing the Windows version of the official viewer may find Windows SmartScreen reports the viewer as unverified.
You can read more here, on via my own blog post, which includes steps on clearing the warning and installing the viewer.
Server Version Updates and Move to the Cloud
[12:13-12:53] A number of server version updates are advancing. these don’t always have user-visible changes, but they are nevertheless important to Second Life. Among other things, they are part of the preparatory work for moving SL capabilities to the cloud (see my week #36 TPV notes for more on this).
[15:08-19:06] There is no time line for moving things to the cloud, simply because the Lab does not know at this point how long it will take. There are some significant changes which must be made to both the way things are built and the way they are run, and there need to be assorted updates to various components that go into building and running SL services.
Some SL services are already being tested in the cloud, and some are performing well – such as the process for determining if a user requires a viewer update. Others have been tested and revealed problems which must be addressed if they are to be run from the cloud – or should be addressed even when not running in the cloud.
It is unlikely the Lab will be providing specifics on services which have moved to the cloud / are being tested, and which are still based within their data centre until things reach a point where simulators are running in the cloud, simply because where many SL services run makes absolutely no difference to the user experience, as long as they are running. Moving and testing simulators in the cloud is likely to be one of the last things to be tackled, simply because of the complexities involved.
The first goal is to get everything working pretty much “as is” from the cloud. Only after this has been done, will work start on leveraging the benefits of having everything in the cloud be explored and exploited.
[19:06-21:49] This could include giving – and to use Oz’s words, the option of having their regions hosted in specific geographical locations. So, for example, the various communities located in South America could have their regions all hosted in South America, potentially improving response times between viewer and server. However, whether this will in fact be possible is dependent on the Lab reaching that point at which they can start leveraging the benefits of the cloud.
Obviously there are trade-offs in this kind of shift, should it occur; relocating a simulator to better serve a community may not improve things for others access the region on that simulator. However, in potentially supplying the option, the Lab is providing land owners with a choice of what they would like to do.
[21:56-22:38] If nothing else, this work should be a demonstration that the Lab really is continuing to invest in Second Life and its future. Were they seriously thinking of letting it go (i.e. in favour of Sansar), then none of this work – and the associated expenditure – would be taking place.
[29:26-31:16] There is a “fair amount” of back-end work that is being worked through, and the work is approaching the point of internal testing within the Lab. Once this has reached a suitable point, the server-side / simulator changes will be deployed (e.g. to Aditi) for wider testing, alongside of a project viewer to handled the client-side application of the capabilities.
Recent Grid Issues
[37:51-39:20] As most are aware, there have been some recent grid issues. While not the cause of these issues, but which has been a contributing factor to their duration, is some low-level code within the viewer which handles log-in retries far too aggressively. When this happens en masse (such as when there is a grid issue), it results in the log-in servers being swamped, adding to the woes for people trying to log-in.
A recent Maintenance update to the SL viewer addresses this issue (see my week #30 TPV update), and the request for TPVs to pick these code changes up was re-iterated at the meeting. In addition, the log-in servers have themselves been made more robust when facing large number of attempted / repeated log-in attempts.
Other Items
Estate Tool Ban List Improvements
[9:32-11:22] The Lab has resumed work on the region ban lists (layout / usability, etc), and the updates should be appearing soonTM. The specifics of what is being done will hopefully be available for the next TPV Developer meeting.
Premium Member Benefits
[13:13-14:53] There is apparently at least one Premium member benefit that will be appearing real soonTM which the Lab believe people will like, and some further ideas are being considered. Oz declined to comment on what any of these might be, citing it being more fun to find out when they are announced. He also indicated that appropriate and considered suggestions / ideas for benefits (e.g. not things that persist after a Premium subscription has been cancelled) are also welcome.
Group Notice Failures
[28:00-28:55] Still no work on group notices (on-line and off-line) sometimes not getting through for some people. It’s not on the “now / next” roadmap of things the Lab is / will be looking at. The focus on sever-side work is on dealing with instability issues which can cause crashes / offer exploits to griefers.
Asset HTTP Messaging and Asset HTTP Issues
[41:14] As noted in my week #36 TPV meeting update, the recent Asset HTTP updates are leading to the texture pipeline getting out of sync, and people experiencing texture load stalls. A JIRA for this has been filed (BUG-139123), and a possible fix has been submitted to the Lab by Sovereign Engineer.
[43:16] The Lab is also working on the texture caches in an attempt to make them faster and more effective.
The following notes are taken from the Content Creation User Group meeting, held on Thursday, September 21st, 2017 at 13:00 SLT at the the Hippotropolis Camp Fire Circle. The meeting is chaired by Vir Linden, and agenda notes, etc, are usually available on the Content Creation User Group wiki page.
Medhue Simoni live steamed the meeting to You Tube, and his video is embedded at the end of this article. Time stamps to the recording are included below, and clicking on any of them will launch the video in a separate browser tab at the assigned point. However as these notes present the meeting in terms of topics discussed, rather than a chronological breakdown of the meeting, time stamps may appear to be out of sequence in relation to the recording.
Animesh (Animated Mesh)
“I like the name ‘animated objects’ because I think it’s unambiguous, but it takes a long time to type!” – Vir Linden joking about the name “Animesh”.
Project Summary
The goal of this project is to provide a means of animating rigged mesh objects using the avatar skeleton, in whole or in part, to provide things like independently moveable pets / creatures, and animated scenery features via scripted animation.
Animated objects can be any rigged / skinned mesh which is correctly flagged as an animated object (so it has a skeleton associated with it), and contains the necessary animations and controlling scripts in its own inventory (Contents tab of the Build floater) required for it to animate itself.
The capability will most likely include a new flag added to an existing rigged object type in order for the object to be given its own skeleton.
At this point in time, this is not about adding fully functional, avatar-like non-player characters (NPCs) to Second Life.
Animated objects will not (initially):
Have an avatar shape associated with them
Make use of an avatar-like inventory (although individual parts can contain their own inventory such as animations and scripts)
Make use of the server-side locomotion graph for walking, etc., and so will not use an AO
Use the avatar baking service
The project may be extended in the future.
It will involve both back-end and viewer-side changes, likely to encompass new LSL commands to trigger and stop animations (held in the object’s contents).
Current Progress – Animesh Constraints
“It’s not [been] the most exciting week,” Vir commented about his most recent focus on the project. “What’ I’ve been working on lately is complexity limits and other constraints.”
[2:48-4:19]As noted in previous CCUG meeting notes, some constraints on Animesh are required to prevent undue impact at either the simulator or viewer end of the system. These constraints will be in addition to any already in place in SL (e,g, Land Impact, overall limit of the number of attachments an avatar can wear, etc), and include:
Limiting the overall complexity of an Animesh object
Limiting how many Animesh items an avatar can have attached at any one time (currently set to one in the upcoming project viewer for testing purposes)
Limiting the number of triangles an Animesh object (attached or in-world) can contain, possibly to around 20K initially. Interestingly, some limits in Sansar are defined in terms of tri / poly limits.
With complexity and number of tris, the limits have yet to be fully defined, and Vir welcomed any well-made mash models could serve as Animesh examples in order to try to help baseline the initial limits.
[4:45-5:10 and 8:55-9:49] Currently, there are no new limits for the scale (or size) or an Animesh object beyond the existing constraint re objects and avatar skeletons already in place. Some feel that additional constraints / viewer limits may be required in order to handle “titan” Animesh creatures (e.g. creatures of 64m in height, which may also require bounding box adjustments). Vir is prepared to look at this, but would like to see how things go with testing via the project viewer.
[5:22-5:41 and 6:18-6:47 and 10:41-11:06] The triangle limit will apply to all Animesh objects regardless of whether they are in-world or attached, and will be applied at the time the objects are flagged as Animesh. So if someone tries to link together a set of existing rigged mesh items and flag them as Animesh (or which contain an Animesh item) which exceed the limit, the flag Animesh flag will not be set. This should leave existing content unaffected and avoid content breakage.
[12:14-13:17] Some see the proposed 20K limit is two low and suggest 30K or even 50K, to allow for clothing, accessories, etc., to Animesh characters. The counterpoint to this is to set a limit which encourages optimisation, and to have people consider impact on the simulator / on others.
[14:24-15:32] A request for the viewer to provide meaningful feedback when Animesh limits are reached, preferably with a pointer back to some wiki information. Limits won’t actually be reached on mesh upload, but when objects are flagged for use as Animesh post-upload, so would require some form of viewer notification.
[15:34-16:20] Requests have been made to obtain poly counts of objects via LSL to help track things or even in the viewer UI. Vir currently uses his own diagnostic display to help indicate such things, but currently, no such updates, LSL or UI are planned, although the debug ShowRenderInfo could display the required information if more directly exposed and Vir will file a JIRA on this, although it might fall outside the current scope of work.
[22:11-22:35] It was also pointed out that tri / poly counts are variable based on LOD. Vir is currently focused on the tri count of the highest LOD for an object
[13:18-13:44] Vir’s approach to all of the constraints / limits being discussed at this time is to start as tight as possible, and then make adjustments and loosen things as testing with the project viewer begins / offers reliable feedback and data. It is easier to relax constraints and allow people greater creative freedom, than to start with a loose set of limits and then have to tighten them (potentially breaking test content, and adding to people’s overhead in having to rebuild it).
Time Frame for Animesh
[19:29-20:00] The constraints mentioned above and trying to fix the transform matrix when handling Animesh attachments. There are also a couple of bugs he feels need fixing before the project viewer appears. However, the hope is now that the viewer will be appearing sooner rather than later.
[48:52-49:28] There are a couple of irritants in the viewer Vir wants to fix before releasing a project viewer for Animesh testing. Ther are some corner cases where the viewer can be awkward, but these are not considered blockers to a project viewer appearing, and can be cleared-up in due course.
Performance Hits
[27:45-28:42] There are still concerns as to the performance hits on things like real-time shadow casting with Animesh skeletons following avatars (pets, etc.) or in being attached to avatars (and vice-versa). Vir isn’t too concerned by this at the moment, as the code is already handling much of what will be required with Animesh: every time an avatar sits on something, it is effectively updating every frame, so with Animesh this will be much the same. However, as with everything else, this will be subject to testing.
Bakes on Mesh
Project Summary
Extending the current avatar baking service to allow wearable textures (skins, tattoos, clothing) to be applied directly to mesh bodies as well as system avatars. This involves server-side changes, including updating the baking service to support 1024×1024 textures. This may lead to a reduction in the complexity of mesh avatar bodies and heads.
Current Status
[31:28-32:00] The updates to the service to manage 1024×1024 textures and compositing is with LL’s QA team, who ar testing to ensure the system can handle the compositing correctly, and the back servers won’t fall under when loaded with handling 1024×1024 textures in bulk. Progress with the rest of the project is dependent on this.
[36:25-36:59] The rest of the work will focus on applying the baked textures (which will include alphas, just as is the case with the system avatar now, but will not include materials) to mesh avatar models.
[39:09-40:55] A possible follow-on to the current work on bakes on mesh is to extend the capability to include Animesh objects as well, although this will require Animesh objects to have a notion of a body shape. It might even be possible to push the system into other uses.
Environment Enhancement Project (EEP)
Project Summary
A set of environmental enhancements, including the ability to define the environment (sky, sun, moon, clouds) at the parcel level; a new environment asset type that can be stored in inventory and traded through the Marketplace / exchanged with others; scripted, experience-based environment functions, an extended day cycle and extended environmental parameters.
Current Status
[30:32-31:12] Rider has been working on getting his settings objects – environment assets – correctly passing into Windlight. Once he has this working smoothly, he’ll feel a little more comfortable in talking potential time lines on when things like a project viewer are likely to appear. However, he did point out that everything is currently in “Goth compatibility” – black environment settings against a black sky!
Other Items
Mesh Uploader
[49:38] A discussion on whether creators will in future be forced to upload only manually created LOD for their models, rather than auto-generating them. Short answer: No, but people are encouraged to optimise LODs where manually or automatically generated. The uploader also has numerous constraints on upload, not all of which are well documented or which provide adequate / any feedback when they occur. It’s acknowledged that such situations could be handled better. However, issues of tracking the number of bones a mesh is rigged to can be tracked through Avastar and MayaStar prior to upload.
As always, please refer to the server release thread for updates and the latest news.
There was no deployment / restart on the Main (SLS) channel on Tuesday, September 18th, leaving that channel running on 17#17.09.01.508236.
On Wednesday, September 19th, the RC channels should be updated as follows:
BlueSteel and LeTigre should receive a new server maintenance package, 17#17.09.14.508549, comprising improvements to address some problems that could degrade simulator performance in rare cases.
Magnum should receive a new server maintenance package, 17#17.09.14.508533, containing a fix for BUG-100505 “llGetEnv (“agent_limit”) is returning an empty string in Magnum, LeTigre and Blue Steel regions.”
Commenting on the RC releases at the Simulator User Group meeting on Tuesday, September 19th, Simon Linden said:
[we] have two very similar RCs out tomorrow, the later version just has one extra bug fix in it … which will either be really good or bad … we’ll see 🙂 … it involves an underlying library update … usually that’s all good [but] sometimes subtle changes cause all sorts of breakage. So far it looks good to us … but that’s what shipping updates is all about, I guess.
On a positive note, with these updates and some still in the pipeline, I think we’re making good progress against some of the bigger crash issues we recently had with system outages.
SL Viewer
On Tuesday, September 19th, the Maintenance RC updated to version 5.0.8.329065. The rest of the viewer pipeline remains unchanged from the end of week #37:
Current Release version 5.0.7.328060, dated August 9, promoted August 23rd – formerly the Maintenance RC
Release channel cohorts:
Wolfpack RC viewer,version 5.0.8.328990, dated September 12th – this viewer is functionally identical to the release viewer, but includes additional back-end logging “to help catch some squirrelly issues”
Alex Ivy 64-bit viewer, version 5.1.0.508209, dated September 5th
Voice RC viewer, version 5.0.8.328552, dated September 1st
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. This viewer will remain available for as long as reasonable, but will not be updated with new features or bug fixes.
Other Items
AO / Animation Priorities
Over the past 3 weeks or so, some people have noticed changes to apparent AO / animation behaviours which appear to mimic priority conflicts. A typical example is someone sitting on an AVSitter item and finding after a few seconds that there AO suddenly overrides the sitter’s animation, forcing them to disable their AO where previously they did not, or someone joining a dance HUD / system and finding their AO overrides the dance animation, causing them to stand, again forcing them to turn off their AO, where previously the two played together nicely.
The problem seems to be more common with those wearing AO HUDs. In most cases I’ve heard about, there has been a claim of no user change to the AO system (i.e. using a new or updated AO) or in the furniture or dance system animations / scripts.
It has been suggested that a fix for BUG-11501 might be responsible, although there seems to be some confusion over the status of the fix for this bug.
The following notes are taken from the Content Creation User Group meeting, held on Thursday, September 14th, 2017 at 13:00 SLT at the the Hippotropolis Camp Fire Circle. The meeting is chaired by Vir Linden, and agenda notes, etc, are usually available on the Content Creation User Group wiki page.
Medhue Simoni live steamed the meeting to You Tube, and his video is embedded at the end of this article. However, due to power issues at his end, the first few minutes are missing from the recording. Time stamps to that recording are included below, and clicking on any of them will launch the video in a separate browser tab at the assigned point. However as these notes present the meeting in terms of topics discussed, rather than a chronological breakdown of the meeting, time stamps may appear to be out of sequence in relation to the recording.
Animesh (Animated Mesh)
“I like the name ‘animated objects’ because I think it’s unambiguous, but it takes a long time to type!” – Vir Linden joking about the name “Animesh”.
Project Summary
The goal of this project is to provide a means of animating rigged mesh objects using the avatar skeleton, in whole or in part, to provide things like independently moveable pets / creatures, and animated scenery features via scripted animation.
Animated objects can be any rigged / skinned mesh which is correctly flagged as an animated object (so it has a skeleton associated with it), and contains the necessary animations and controlling scripts in its own inventory (Contents tab of the Build floater) required for it to animate itself.
The capability will most likely include a new flag added to an existing rigged object type in order for the object to be given its own skeleton.
At this point in time, this is not about adding fully functional, avatar-like non-player characters (NPCs) to Second Life.
Animated objects will not (initially):
Have an avatar shape associated with them
Make use of an avatar-like inventory (although individual parts can contain their own inventory such as animations and scripts)
Make use of the server-side locomotion graph for walking, etc., and so will not use an AO
Use the avatar baking service
The project may be extended in the future.
It will involve both back-end and viewer-side changes, likely to encompass new LSL commands to trigger and stop animations (held in the object’s contents).
Project Viewer
[pre-video start and 46:06-46:40] Work on the viewer is focused on cleaning up how the viewer handles animation when dealing with Animesh objects, as there are some elements which simply aren’t used. The transform matrix has been adjusted, so that Animesh attachments now look as if they are attached to the avatar, rather than potentially floating somewhere reasonably close to it (so an Animesh object attached to a hand will now appear attached to the hand and move with the hand, for example). Further work is required, but things are now behaving a lot better; there’s still no ETA on the appearance of the project viewer, however.
Animesh Constraints
Some basic constraints on attaching Animesh objects to an avatar or in-world, and on the overall allowable complexity of Animesh objects have yet to be defined and incorporated into the viewer. These are necessary to prevent Animesh objects negatively impacting performance to an undue degree. The initial constraints set within the project viewer will be subject to refinement in testing.
[32:21-33:06] In terms of avatar attachments, there is already a server-side limit on how many attachments can currently be worn by an avatar (38), so the Lab could look at the type of attachments being used, and limit Animesh in terms of an allowed number within this global attachment limit (e.g. 2 out of the 38 global limit for attachments may be Animesh).
Load Testing
Alexa provided a couple of GIFs demonstrating Animesh. The first showed her army of dancing bears – around 100 – all happily dancing on a region without causing an appreciable load.
Alexa’s army of dancing bears. Note that these are not actual avatars connected to the simulator via individual viewers; they are purely in-world objects being animated by scripts they contain driving a set of animations also contained within them.
[13:39-16:54] However, whether populated regions (in terms of avatars and objects) could handle such a load is open to question. Also, these bears are all the same optimised mesh, and are probably not placing the kind of load on the simulator and viewer as would be in the case of multiple and different kinds of mesh with varying levels of complexity. To help determine reasonable limits, the Lab will be establishing some test regions once the projects viewer is available, to allow for more comprehensive testing with assorted Animesh models, and which will used to further refine the Animesh constraints noted above.
[18:11-18:40] As a part of her own testing, Alex also intends to use the mesh starter avatars produced by the Lab, mixing them together in a scene using different animations, etc., to see how things behave.
Animesh and Pathfinding
[10:35-11:14] A couple of previous meetings have raised the idea of Animesh working with Pathfinding (the means by which scripted objects – people, animals, monsters, etc,– be set to move in a region / parcel and react to avatars, etc). Dan Linden is looking into how Animesh and Pathfinding might work together, and he and Alexa shared a GIF image of some of the work, with some of Alexa’s dancing bears skating around their own pathfinding routes, which provide a quick demonstration that the two can likely be used together.
Dancing Bears following pathfinding Navmesh routes
Alexa has also been experimenting with Animesh and ice-skating, taking the view that having creatures and animals ice-skating in winter scenes (which can actually be common in “wintered” regions, with skating penguins and the like).
Animesh Attachments: Fluidity and Clothing
How smoothly attached Animesh objects work is liable to be dependent upon the animations themselves, and whether or not they move the object’s pelvis bone or nor. As with all things, some experimentation and fine tuning is likely to be required be creators in order to optimise the motions of their Animesh attachments.
Some people have been looking at Animesh as a means to get clothing to move more naturally with an avatar. However, as Vir pointed out in the meeting, utilising additional skeletons in clothes may not be the most efficient way to achieve this, when it should be possible – with a little care – to use existing some of the bones in the avatar skeleton to achieve the same results (e.g. skinning the cloth of a gown or skirt or cape to the wing bones, etc).
This would allow the clothing to move far more seamlessly and in sync with body movements than could be achieved with Animesh attachments, which would not have any direct means of syncing with an avatar’s movement.
Root Positioning
[1:39-3:03] Vir is has been working on aligning the root joint of a skeleton associated with a Animesh to the position of the object in-world. Sometimes this gives good results, sometimes it doesn’t, resulting in objects jumping around when animations is played or moving into the air or sinking into the ground, etc, as the server thinks they are somewhere else than the visual position shown in the viewer. Because of the mixed results, he’s considering alternative approaches, such as using the object’s bounding box, and will be exploring options before pushing out any project viewer. One of the balances he’s trying to achieve is presenting a nice visual result without over-complicating what has to be done in order to achieve that result.
Changing the Orientation of the Skeleton via LSL / LSL Commands
[34:12-34:45] Will there be a scripted function to change the default orientation of a skeleton to match an Animesh object? Conceivably; however, Vir is hoping to develop a reasonable default behaviour when attaching a skeleton which will allow simple editing of the object to achieve the desired result, if required. Should this be shown not to work sufficiently well enough, additional LSL support will likely be looked at.
[4:54] A question was asked about the list animations command (LlGetObjectAnimationNames). This is one of three new LSL commands being introduced to support Animesh – please refer to my week #35 CCUG update for details on these.
As always, please refer to the server release thread for updates and the latest news.
On Tuesday, September 12th, 2017, the Main (SLS) channel was updated with the same server maintenance package,17#17.09.01.508236, as deployed to the BlueSteel and LeTigre RCs in week #36. It is described as comprising internal fixes.
On Wednesday, September 13th, the RC channels should be updated as follows:
LeTigre and Magnum should receive a new server maintenance package, 17#17.09.08.508350 containing some internal HTTP fixes, described by Rider Linden as being, “pretty deep in the internals mostly having to do with how the server handles callbacks. [They] mostly have to do with an issues on the response event. There was a rare case that could cause a crash.”
BlueSteel (and the smaller Cake RC) should receive a new server maintenance package, 17#17.09.08.508343, comprising some internal simulator changes.
Week #36 Region Return Issues
Following the RC deployments on Wednesday, September 6th, a number of regions across the grid experienced widespread object returns, resulting multiple forum threads (see here for an example). While some of the reports pointed a finger at the Magnum RC deployment as the cause, issues were also experienced on regions on other simulator channels as well.
The returns were triggered by objects within the affected regions having their physics shapes changed. This resulted in many objects undergoing an increase in their LI, prompting the returns as they exceed region / parcel allowances (see BUG-134270, and BUG-134271) and also meant that some objects which remained in-world, or which were placed out again by their owners could not longer be navigated by avatars (e.g. doorways appeared to be invisibly blocked, stairways couldn’t be climbed).
Commenting on the issue during the Simulator User Group meeting on Tuesday, September 12th, Oz Linden stated:
The problem is pretty well understood, and we’re working on it… it’s actually been around for a long time, but some bad luck has triggered it a couple of times lately it’s a timing thing, and the window where it can happen is narrow … It can happen on any restart, but only if there are other simultaneous back-end problems; fortunately, those are usually rare – or rather, they had some root causes in common.
We do have a change in progress that we think will prevent that kind of large-scale returns … or at least that particular way of triggering them.
One of the critiques in this situation has been the apparent lack of response to the issue by the Lab – and it is one that could have perhaps benefited from a blog post or a response through one of the forum threads to the effect that the matter had been noted and the underlying cause being looked into. Responding to similar criticism made during the SUG meeting, Oz also said, “Actually, I just came from a meeting in which we were discussing how to respond more quickly to things like that on the forums.” Hopefully, the discussions will result in more positive responses to major issues raised through the forums in future.
Week #36 Outage
Week #36 also saw a further significant outage with Second Life services involving the platform, log-in services and so on. So far, there has been no definitive explanation as to what happened, but hopefully a post-mortem blog post will be forthcoming from April Linden or one of the Ops team in the near future.
SL Viewer
On Monday, September 11th, the Maintenance RC viewer updated to version 5.0.8.328951.
The Wolfpack RC updated on Tuesday, September 12th to version 5.0.8.328990. This viewer is functionally identical to the release viewer, but includes additional back-end logging “to help catch some squirrelly issues”.
The rest of the official viewer pipeline remains unchanged from the end of week #36:
Current Release version 5.0.7.328060, dated August 9, promoted August 23 – formerly the Maintenance RC
Release channel cohorts:
Alex Ivy 64-bit viewer, version 5.1.0.508209, dated September 5
Voice RC viewer, version 5.0.8.328552, dated September 1
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.
Environment Enhancement Project
Rider Linden has recently been pulled away from the Environment Enhancements Project (EEP, aka “Windlight updates”). However, he notes that he is making progress on the viewer side of things. Commenting on his current work with the project, Rider said:
The changes I’m making right now are adding some new classes that can handle the .settings assets. I’m wiring them into the environment on the viewer side. I’m trying to clean up the entire environment manager and the location that the windlight parameters are used/calculated/stored as I go (currently it is spread across about 1/2 a dozen source files for skys alone.).”
He also noted that he has yet to start on the scripted support for EEP, and it is likely that both the new Windlight assets and a project viewer will appear before the new scripting capabilities make their appearance. Quite when the assets and viewer will appear isn’t certain, and Oz Linden noted that there is a certain amount of infrastructure work to be done in connection with EEP.
In Brief
There has been some criticism of the server release notes being somewhat vague (e.g. “internal fixes”), the reason given for this is that the Lab prefers to be obscure about some changes rather than offering potential clues on possible griefing vectors / fixes for griefing vectors.
The keen-eyed may have noticed that the number of server release packages has changed, from ##.##.##.3##### to ##.##.##.5#####. The “5” signifies the package has been built on the Lab’s new simulator build system, with the increase made to avoid possible collisions between build versions.