Jump to content

Tools and Technology

  • entries
    126
  • comments
    916
  • views
    288,983

Contributors to this blog

About this blog

Entries in this blog

Linden Lab

Puppetry User Group Meeting on September 22, 2022


Tools & Technology

The Puppetry User Group meeting will be a bi-weekly meeting discussing an experimental new feature that allows hardware and other software to connect to Second Life and provide animation data for an avatar. The purpose of these meetings is to connect with developers and coders who might want to experiment with it. 

Learn more about Puppetry in our blog post.

Join the team on Thursday at 13:00 PT on the Aditi beta grid, Castelet region
 

Linden Lab

Puppetry User Group Meeting on September 8, 2022


Tools & Technology

The Puppetry User Group meeting will be a bi-weekly meeting discussing an experimental new feature that allows hardware and other software to connect to Second Life and provide animation data for an avatar. The purpose of these meetings is to connect with developers and coders who might want to experiment with it. 

Learn more about Puppetry in our blog post.

Join the team on Thursday at 13:00 PT on the Aditi beta grid, Castelet region
 

Linden Lab

Viewer Profiles: Everything old is new again!


Tools & Technology

With our latest release we’d like to welcome back Viewer Profiles! The Second Life viewer has made the transition back to an integrated Profile floater. This is the place to find more information about any Resident including a bio, picks, and more!

image1.png

Residents may still use web-based profiles in a web browser. However this change brings back a more responsive experience in the Viewer as well as giving you the information you’re most interested in seeing on the first page. 

As part of this change, Groups now moves to the main tab.  This change also means that hiding Groups no longer requires opening and viewing each one.  Just click on the eye next to the group to hide or show.  

A big thank you to the Firestorm Viewer team for your contribution!

How things have changed

The viewer Profile, as opposed to the web Profile, shows all of your Second Life Bio, Feed, Picks, Classifieds and Real Life bio when viewed by other residents logged in to Second Life.

The Feed will remain a web property displayed in the Profile floater in its own tab.

Interests are accessible on the old web Profiles but will no longer be included in the viewer Profile.

Linden Lab

Introducing Second Life Puppetry


Tools & Technology

image1.png
Photo by Alexa Linden

The idea

Wouldn’t it be cool if you could animate your avatar in real time?  What if you could wave your arm and your avatar could mimic your motions?  Or imagine if your avatar could reach out and touch something inworld or perform animations?  Linden Lab is exploring these possibilities with an experimental feature called “Puppetry.”

We have been working on this feature for some time and now we are ready to open it up to the Second Life community for further development and to find out what amazing things our creators will do with this new technology.

The codebase is alpha level and does contain its share of rough edges that need refinement, however the project is functionally complete and it is possible for the scriptors and creators of Second Life to start to try it out.

See the section below “How to participate” to learn how to use Puppetry yourself.

Take a Look

We have some basic things working with a webcam and Second Life but there's more to do before it's as animated as we want.

Puppetry-2.gif

Puppetry Technology

Puppetry accepts target transforms for avatar skeleton bones and uses inverse kinematics (IK) to place the connecting bones in order for the specified bones to reach their targets.  For example the position and orientation “goal” of the hand could be specified and IK would be used to compute how the forearm, elbow, upper arm, and shoulder should be positioned to achieve it. The IK calculation can be tricky to get right and is a work in progress. 

The target data is supplied by a plug-in that runs as a separate process and communicates with the viewer through the LLSD Event API Plug-in (LEAP) system.  This is a lesser known functionality of the Viewer which has been around for a while but has, until now, only been used for automated test and update purposes.

The Viewer transmits the Puppetry data to the region server, which broadcasts it to other Puppetry capable Viewers nearby.  The receiving Viewers use the same IK calculations to animate avatars in view.

For more details about the Puppetry technology, take a look at the Knowledge Base article Puppetry : How it Works

Uses and Possibilities

We are excited about Puppetry’s potential to change the way we interact inside Second Life.  For example, using a webcam to track your face and hands could allow your avatar to mimic your face animations and finger movement, or more natural positioning of the avatar’s hands and feet against in-world objects might also be possible.  Alternative hardware could be used to feed information into Second Life to animate your avatar - a game controller or mocap equipment.  There's a lot to explore and try, and we invite the Second Life community to be involved in exploring the direction of this feature.

How to participate

The Puppetry feature requires a project viewer and can only be used on supporting Regions.  Download the project Viewer at the Alternate Viewers page.  Regions with Puppetry support exist on the  Second Life Preview Grid and are named: Bunraku, Marionette, and Castelet.

When using the Puppetry Viewer in one of those regions, if someone there is sending Puppetry data you should see their avatar animated accordingly.  To control your own avatar with Puppetry it's a bit more work to set up the system.  You need: a working Python3 installation, a plug-in script to run, and any Python modules it requires.  If you are interested and adventurous: please give it a try.   More detailed instructions can be found on the Puppetry Development page.

What's next

We look forward to seeing what our creators do with the new Puppetry technology. Compared to other features we have introduced, it’s quite experimental and rough around the edges, so please be patient!  We will keep refining it, but before we go further we wanted to get our residents’ thoughts.

We will be hosting an open discussion inworld on Thursday, Sept 8 1:00PM SLT at the Bunraku, Marionette, and Castelet regions on the Preview Grid.    We're also happy to talk about this at the upcoming Server User Group or Content Creator meetings.  Come by, let us know what you think, and hear about our future plans!

Linden Lab

Increase in Server Crashes: June 30 to July 8


Tools & Technology

You may have noticed – or fallen victim to -- the unfortunate increase in server crashes last week. We apologize to everyone affected! 

Here’s what happened:

  • On Thursday, June 30, just before the July 4 holiday weekend in the U.S, we released a change to my.secondlife.com.
  • Early on the following Tuesday, we noticed and started investigating a significant increase in server crashes. We also started receiving Support reports about these.
  • We determined that the web update in my.secondlife.com  included a library update which, unknown to us, dropped support for the texture format our servers expect.
  • This led to Viewers being unable to deal with newly updated textures, and under some circumstances the Server would attempt to be more helpful in opening those, than it should have been - and crashing. This is why some residents saw problems with their profile photos. 

On Tuesday July 5, after we investigated and confirmed what was happening, the team quickly rolled back the web site change to prevent the creation of more broken textures. The web team identified these textures, then ran a script to convert them. This was completed by Thursday morning, July 7.

The server team fast-tracked a fix to prevent servers from crashing. We were able to QA and release the fix to RC channels on the afternoon of Thursday, July 7 and then to the main SLS + Events channels on Friday, July 8.

Lessons:

  • Second Life is big and complicated and fails in unexpected ways (we knew that!)
  • Library upgrades may need additional testing for dependencies we couldn’t imagine.
  • We work really well together when Second Life fails in unexpected ways                                                    

Again, we apologize to everyone affected!

Linden Lab

Coming soon: Login improvements


Tools & Technology

We will be performing an update to the Second Life Login service on Monday, April 11th beginning at approximately 9:00 AM PDT and expected to complete before 10:00 AM PDT. Viewer logins will be unavailable for a portion of this maintenance period.

This update includes a fix to new device email notifications for newly created accounts, performance improvements for the viewer login handshake, and improvements to metrics and diagnostics for our internal tools. Most of these changes are behind the scenes and should not change the login experience for Residents once the maintenance is completed.

If you experience viewer login issues during the deployment window, please wait and try again later. Keep an eye on the Second Life Status Blog for updates. Thank you for your patience!

UPDATE: The maintenance is now completed.

Linden Lab

Recent Outages


Tools & Technology

Hello Residents!

Well, this is not the way we wanted the past week to go -- multiple outages in the same week! Not fun for anyone. Here’s what happened.

Login and Inventory Issues: Monday, 1/24 - Friday, 1/28
On Monday, January 24, residents’ inventories stopped responding to requests. Some residents were unable to log in as a result. We identified the affected accounts, addressed the problem and restored services to full operation in a little under 3 hours. 

Beginning on Wednesday of this week, we received reports of intermittent inventory issues – failures to rez, unpack and delete inventory items; and intermittent errors upon login.

When the number of reports increased, it became clear that this was an outage. Several Lindens jumped in to diagnose the reports. After some digging, we discovered our back end infrastructure was being overloaded. Once this was resolved, the positive impact was almost immediate. The data now looks good -- on the back end and we are no longer receiving inventory reports.

We’re taking steps, including a deploy late last week, to prevent these issues in the future - and we have already seen progress in making the service more robust.

Weekly Rolling Restarts: Tuesday, 1/25
Every week we restart the simulator servers to keep them running smoothly. We only restart a certain number at the same time, allow them to finish, then start another batch. That’s why we call them “rolling restarts.” But on Tuesday a recent upgrade to the simulators meant that the usual number of simultaneous restarts was too much for the system to handle. The result was load spikes and numerous regions going down. Ultimately more than 12,000 regions were stuck in restart mode, which is 40% of the grid. Not good!

The team came together quickly to bring simulators back up in smaller batches, and then manually fixed blocks of regions. After some trials and monitoring, we found a smaller number of concurrent restarts that worked better. By 1:00 PM all regions were restored and operating normally. We apologize for this lengthy outage!

Advance… Retreat!: Wednesday, 1/26
We had planned a deploy to the production grid that would help us gather information on group chat performance. Unfortunately, the procedure used during testing did not work in production. We figured -- OK, we’ll just roll back. But then the rollback itself had problems!  Residents experienced issues with login, group chat, and presence information. The team was able to isolate the problem and complete the rollback, getting a few more gray hairs in the process. We’re going to take what we’ve learned and do a better deploy that will give us the information to improve group chat in the long run.

Last week was no fun for a lot of people at the Lab. Thank you for your patience. We really don’t like interrupting your enjoyment of Second Life. Here’s hoping we don’t have to come back with another one of these blog posts for quite some time! 

With love, 
The Lindens
 

Linden Lab

Hello Residents!

We’ve just released an update to our previous Maintenance viewer (here). We introduced a media playing bug last time and this update fixes that.

More information on the previous bug here.

Work around for the previous bug here.

Please feel free to try it out and let us know of specific problems by filing a Jira.

Thank you for your patience as we worked through this problem! 
 

Linden Lab

Upcoming Security Improvements to Second Life


Tools & Technology

Hello Residents!

If you run an inworld service that logs in as a scripted agent (aka, a bot), or maintain a Third Party Viewer, please pay attention. This blog post is for you. :)

We are making some changes to improve the security of Second Life!

On November 1st, 2021 we are going to be discontinuing the use of two older security protocols, TLS 1.0 and TLS 1.1, on our login services. We’re doing this to increase the security of everyone on the grid.

In March of 2021 the Internet Engineering Task Force (IETF) officially deprecated these two older protocols, and now we’re gonna do the same. TLS 1.0 was released in 1999, and TLS 1.1 was released in 2006, and while they’ve had a good run, it’s time for them to enjoy a nice retirement into Internet history.

On Wednesday afternoon this week we inadvertently turned off TLS 1.0 and TLS 1.1, and we received reports that several inworld services (such as older bots and some very old Third Party Viewers) were unable to log in. Since we hadn’t given Residents any warning this was going to happen, we turned them back on this morning. We want to make sure folks have a chance to update their services before we turn them off again permanently on November 1st, 2021.

If you were impacted by the sudden removal of these older security types this week, we’re sorry they were turned off without warning. We should have communicated it better. We also want to thank you for taking the time to improve the security of your service! The grid will be safer for us all as a result.

For everyone else, you have nothing to do! Our viewer, and almost all of the popular Third Party Viewers have been using the latest versions of TLS for years. You’re all set!

Looking forward to a more secure Second Life,
April Linden, Gridbun

Linden Lab

Introducing the 360 Snapshot Tool


Tools & Technology

Elvion
See full 360 Image by Alexa Linden on Flickr

You can now take a 360-degree snapshot of a location in Second Life. Better than a simple panoramic image, the 360 snapshot covers 360 degrees in all three dimensions, allowing you to see everything both above and below your avatar as well, as though the image is projected on the inside of a sphere. Technically speaking, the snapshot is an equirectangular image projection. Better than a static image, the 360 snapshot can be clicked and dragged so you can move your ‘camera’ anywhere in the snapshot, at any angle, as if you are inside it. 

When opened, the tool quickly creates a low resolution preview taken from the location of your in-world camera. You can click and drag on the preview image in all directions to see if you like it. Re-frame your shot by moving your camera in-world and creating another snapshot. 
 

Speed and quality

Snapshot creation speed depends on your computer’s graphics capabilities. It’s not necessary to use preview quality while you are composing your snapshot, but if a higher quality level is slow on your computer, you can save it for the final snapshot. While a snapshot is being created, Second Life may appear to freeze. Just give it some more time to finish.

The quality of the snapshot is also affected by your graphics preferences (Me > Preferences > Graphics). You may have turned off features such as shadows and water reflections to make Second Life run faster, but for your 360 snapshot you may want to change some settings. The Hide Avatars checkbox is good for when you want to take a landscape shot but you don’t want to wait until no one is at that location.
 

How to use the saved snapshot

The snapshot will be saved in .jpeg format, which does not require a special viewer. All web browsers can display it, so you can add it to your social media feed or your favorite photo-sharing service. Check out these 360 snapshots from Alexa Linden -- and don’t forget to click and drag on them! 

We hope you enjoy the new 360 Snapshot feature and we can’t wait to see what you create with it!
 

Known Issues

We are aware of some issues in this first Project Viewer which we will address later:

  • It is possible that some things in the world will be missing from the snapshot. Make sure everything in-world loads before you take the snapshot. Rotating your avatar will ensure everything around you loads.
  • Snapshots may be corrupted on some systems with older or less powerful graphics cards, or if your graphics settings are turned down low. Try changing your graphics settings in Preferences.
  • Higher quality snapshots may take a long time to create. We’ll continue to work on increasing the speed.

 

Download the Viewer here. UPDATE: The 360 Snapshot feature is now in the official Second Life viewer, download the latest version now!

For more technical input, please file a Jira
 

Linden Lab

New Voice Improvements!


Tools & Technology

Happy Wednesday everyone!  

Today we released the latest Maintenance Viewer Build.  Among a slew of fixes and improvements is a key feature we want to highlight: ability to tweak your Voice Activity Level. Lately we’ve had increasing problems with voice cutting out, at events or just talking to friends nearby.  With these changes you will have a way to easily manage the problem. It’s been working seamlessly in our internal testing, including large events. 

Voice Activity Detection
This Viewer exposes 3 VIVOX VAD (Voice Activity Detection) variables via Debug Settings and disables the (previously enabled) automatic mode. By making changes to these variables, we should be able to come up with a collection of settings that we can base new default values on in settings.xml.

The Debug Settings are:

  • VivoxVadAuto
    • Enable (1) or disable (0) automatic VAD - you will almost certainly want this set to 0 [off] and change things using the other settings
  • VivoxVadHangover
    • The time (in milliseconds) that it takes for the VAD to switch back to silence from speech mode after the last speech frame has been detected.
  • VivoxVadNoiseFloor
    • A dimensionless value between 0 and 20000 (default 576) that controls the maximum level at which the noise floor may be set at by the VAD’s noise tracking. Too low of a value will make noise tracking ineffective (A value of 0 disables noise tracking and the VAD then relies purely on the sensitivity property). Too high of a value will make long speech classifiable as noise.
  • VivoxVadSensitivity
    • A dimensionless value between 0 and 100, indicating the ‘sensitivity of the VAD’. Increasing this value corresponds to decreasing the sensitivity of the VAD (i.e. ‘0’ is most sensitive, while 100 is ‘least sensitive’)

The default values (updated) are (using VIVOX names):

  • VivoxVadAuto: 0 (disabled)
  • VadHangover(s): 2000 (Valid values are 1 - 60000 milliseconds)
  • VadSensitivity: 0 (Was 43 - valid values are 0 - 100)
  • VadNoiseFloor: 576 (Valid values are 0 - 20000)

Early testing suggests that VivoxVadNoiseFloor can only be changed by restarting the Viewer or teleporting away and coming back (needs a new voice connection) but the other 2 work in real time as you change them. After some initial testing with VIVOX, we have settled on starting from VivoxVadSensitivity set to 0. This will result in no dropouts because the microphone is sending everything to the voice channel. However, in a noisy environment (talking in background, vacuum cleaner, TV on etc.) it will also transmit that too. With modern microphones with built-in noise cancellation, sending everything may be a good thing as the microphone may have done all the heavy lifting of noise cancellation first.

Please try it out and let us know what you think!  If you’re experiencing any bugs, please let us know!

Linden Lab

A Light in the Cloud: A Migration Update


Tools & Technology

A Light in the Cloud - A Migration Update.png

Hi Residents!

I’ve come to ask for a favor.

We’re in a really exciting time in the history of Second Life. We’re in the home stretch on moving the grid to the cloud. We hit a fun milestone a few days ago, and now there’s over 1,000 regions running in the cloud!

Everyone in the Lab is working hard on this project, and we’re moving very quickly. I just got out of a leadership meeting where we went over what’s currently in flight, and there’s so many things moving that I lost track of them all. It’s amazing!

The favor I’ve come to ask you for is your patience.

We’re doing our very best to fix things that come up as we go. This means that we might need to restart regions more often than you’re used to, and things may break just a little more often than we’ve all been accustomed to.

In order to get this project done as fast as possible and minimize the time (and resulting bugs) we have to spend with one foot in our datacenter and the other in the cloud, we don’t want to limit ourselves to restarting regions just once a week. We’re ready to get this project done! We’ve seen how much better Second Life runs in the cloud, and we’re ready to have everyone on the grid experience it.

I’m sorry that things might be a little rough over the next few weeks. It’s our goal to finish the cloud migration by the holidays, so that everyone, Resident and Linden alike, can have a nice quiet holiday with our friends and families.

We can’t promise we’ll make it by then, but we’re sure giving it all we’ve got. The mood around the Lab is really positive right now, and we’re all working hard together to make it happen. I’m really proud to be a part of the team that’s transforming Second Life as we know it.

Thanks so much for hanging in there with us. We know it’s frustrating at times, but it won’t last for too long, and there’s a better future on the other side of this. We truly appreciate your understanding and patience as we finish up this project.

Thanks everyone. 💜

April Linden,
Second Life Operations Manager
 

Oz Linden

Uplift Update


Tools & Technology

We've been working hard on the Uplift of Second Life. If you have not been following this project, that's what we're calling the migration of our Second Life simulators, services, and websites from a private datacenter to hosting in The Cloud (Amazon Web Services). It's a massive, complicated project that I've previously compared to converting a steam-driven railroad to a maglev monorail -- without ever stopping the train. This undertaking has at times been smooth sailing, at other times a very bumpy ride. We wanted to share some more of the story with you.

Our goal has been to move SL incrementally to give ourselves the best chance of minimizing awareness among the residents that these changes were happening. We feel we’ve done better than we expected, but of course it’s the bumps in the road that are most noticeable to our residents. We apologize for recent service disruptions, although what’s perhaps not apparent is the progress we’ve made -- and the improvements in performance that have quietly taken place.

First, the rough spots:

  • Region Crossings
    One of the first troubles we found was that region crossings were significantly worse between a cloud region and a datacenter region. We did a deep dive into the code for objects (boats, cars, planes, etc) and produced an improvement that made them significantly faster and more reliable even within the datacenter. This has been applied to all regions already and was a good step forward.
  • Group Chat stalls
    Many users have reported that they are not able to get messages in some of their groups; we're very much aware of the problem. The start of those problems does coincide with when the chat service was uplifted; unfortunately the problems did not become clear until moving that service back to the datacenter was not an option. We haven’t been able to get that fixed as quickly as we would like, but the good news is that we have some changes nearly ready that we think may improve the service and will certainly provide us with better information to diagnose it if it isn't fixed. Those changes are live on the Beta grid now and should move to the main grid very soon.
  • Bake Failures
    Wednesday and especially Thursday of this past week were bad days for avatar appearance, and we're very much aware of how important that is. The avatar bake service has actually been uplifted for some time - it wasn't moving it that caused the problem, but another change to a related service. The good news is that thanks to a great cross-team effort during those two days we were able to determine why an apparently unrelated simulator update triggered the problem and got a fix deployed Thursday night. 
  • Increased Teleport Failures
    We have seen a slight increase in the frequency of teleport failures. I know that if it's happened to you it probably doesn't feel like a "slight" problem, especially since it appears to be true that if it's happened to someone once, it tends to keep happening for a while. Measured over the entire grid, it's just under two percentage points, but even that is unacceptable. We're less sure of the specific causes for this (including whether or not it's Uplift related), but are improving our ability to collect data on it and are very much focused on finding and fixing the problem whatever it is.
  • Marketplace & Stipend Glitches
    We've had some challenges related to uplift for both the Marketplace and the service that pays Premium Stipends. Marketplace had to be returned to the datacenter yesterday, but we'll correct the problems that required the rollback and get it done soon. The Stipends issues were both good and bad for users; there were some delays, but on the other hand we sent some users extra stipends (our fault, you win - we aren't taking them back); those problems are, we believe, solved now.

Perhaps the above makes it sound as though Uplift is in trouble. While this week in particular has seen some bumps in the road, it's actually going well overall. Lots of the infrastructure you don't interact with directly, and some you do, has been uplifted and has worked smoothly.

For a few weeks, almost all of the regions on the Beta grid have been running in the cloud, and over the last couple of weeks we've uplifted around a hundred regions on the main grid. Performance of those regions has been very very good, and stability has been excellent. We expect to be uplifting more regions in the next few working days (if you own a region you'd like included, submit a Support Ticket and we'll make it happen). Uplift of the Release Candidate regions, which will bring the count into the thousands, will begin soon. When we're confident that uplifted regions are working well at that larger scale, we'll be in a position to resume region sales, so if you've been waiting - the wait is almost over.

Overall, the Uplift project is on track to be complete or very nearly so by the end of this year (yes, 2020… I know I've said "fall" before and people have noted that I didn't say what year 🙂 ; the leaves haven't finished falling at my house yet…). It's likely that there will be other (hopefully small) temporary disruptions during this process, but we promise we'll do all we can to avoid them and fix them as fast as we can. This migration sets the stage for some significant improvements to Second Life and positions us to be able to grow the world well into the future.
 

×
×
  • Create New...