HTTP pipelining viewer reaches release status as CDN support is grid-wide

On Wednesday, October 29th, the Lab promoted the HTTP pipelining viewer to the de facto release viewer, a move that came just after the grid-wide deployment of CDN support on Tuesday, October 28th. While the two are complementary rather than reliant upon one another, both should help improve the majority of users’ Second Life experience to some degree.

Monty Linden: the HTTP pipelining viewer marks the culmination of over 2 years of work inproving SL's HTTP capabilities
Monty Linden: the HTTP pipelining viewer marks the culmination of over 2 years of work improving SL’s HTTP capabilities

The HTTP pipelining viewer is the latest phase of over two years of work on Second Life by Monty Linden, and which has involved both the viewer and the servers and back-end services which support SL.

The work, originally a part of Project Shining, which was itself heralded as complete in June 2014, initially focused on texture handling between the servers and the viewer. Since then, Monty has gone on to tackle a number aspects of improving the use of HTTP in Second Life, such as making connections more robust and reliable, improving throughout to the viewer via HTTP, and so on.

The HTTP pipelining viewer, as the name suggests, leverages HTTP pipelining, a technique in which multiple HTTP requests are sent on a single TCP connection without waiting for the corresponding responses, which significantly improves the download of data (currently avatar baking information, texture data, and mesh data) to the viewer. The upshot of this is that the impact of a user’s physical location on scene loading is reduced, improving their overall experience.

As well as this, the HTTP viewer includes significant improvements to inventory folder and item fetches, which can markedly decrease the time taken for inventory to load, particularly if a user’s local inventory files have been flushed as a part of a cache clearing (or similar) exercise.

These inventory updates alone are liable to be appreciated by users as the viewer-side HTTP code gains wider adoption by TPVs. Tests have shown that a decently structured inventory (e.g. one that uses a folder hierarchy, rather than everything dumped into just a handful of top-level folders) of 100K can have a “clean” load time of 16-18 minutes reduced to around 3 minutes.

Earlier in October 2014, Monty blogged on his work, showing how both the CDN and the HTTP pipelining viewer, coupled with his earlier HTTP improvements have benefited texture and mesh fetching in SL. If you’ve not read that blog post, I recommend that you do.

Monty Linden's recent blog post shows how the HTTP work has improved texture and mesh fexture within SL
Monty Linden’s recent blog post shows how the HTTP work has improved texture and mesh texture fetching within SL

As well as working on HTTP, Monty has also been engaged on rebuilding and cleaning-up many of the third-party libraries used in the building of the viewer. This work should not only improve the viewer build process and such third-party libraries are consistently used in the build process, it may also help pave the way toward the Lab producing 64-bit versions of their viewer in the future.

Continue reading “HTTP pipelining viewer reaches release status as CDN support is grid-wide”

“I believe I can fly”: the empowering freedom of virtual worlds

The single image Jay Jay
The single image Jay Jay Jegathesan used in his 3-minute presentation on his PhD research on community and collaboration through virtual worlds

I’ve frequently blogged about the work of the University of Western Australia in Second Life; with an active presence in SL since 2009, the University has gained a first-class reputation for sponsoring and promoting art in virtual worlds through initiatives such as the MachinimUWA competitions, and activities such as their current Transcending Borders challenge, the Freedom Project, and Project Homeless, as well as supporting the LEA’s Full Sim Art series, all of which I’ve had the privilege of covering in this pages.

The Freedom Project, one of many community-focused activities undertaken by the UWA within Second Life
The Freedom Project, one of many community-focused activities undertaken by the UWA within Second Life

The UWA’s involvement in Second Life came about as a result of PhD student Jay Jay Jegathesan (), who founded the University’s virtual campus in Second Life, which has grown to include academic teaching activities across Business, Law (including the use of SL machinima in a post-graduate degree course), the Arts, Anatomy, Physiology & Human Biology, and Education (including providing resources essential it helping educators and new users get started with SL).

In particular, as a result of Jay Jay’s work the University has become recognised as a world leader in global community development through virtual worlds technology. This in turn has encouraged Jay Jay to make the topic of global community development and collaboration through virtual worlds, particularly in reference to people with disabilities, the focus of his PhD thesis.

Currently, Jay Jay is participating in the UWA’s 2014 3-Minute Thesis competition, in which students were asked to speak for 3 minutes on their PhD research using no technology or props aside from a single image. His presentation, directly referencing the power of virtual worlds to help those with disabilities – indeed, all of us -, is both beautiful and direct; so why not take a moment to listen to his impassioned explanation of the empowering freedom virtual worlds offer?

I’d also like to take this opportunity of thanking Jay Jay for his generosity and kindness in sending me a copy of the Freedom Project book, which is a fabulous publication, lavishly illustrated with pictures of the works submitted to the project, biographies of the artists, and much more besides. It is very much a must-have for anyone with and appreciation of virtual world art. Copies can be obtained for L$5000 (around $20.00 US), shipped anywhere in the world. Those wishing to purchase a copy should contact Jayjay Zifanwe in-world for ordering information.

SL project updates week 42/2: Monty’s HTTP update and the HTTP pipelining viewer

On Wednesday October 15th, Monty Linden blogged about his HTTP work and the CDN, using the rather unusual title, The Sky Over Berlin (and Elsewhere). It’s a great piece of reading, although I can’t help thinking that Monty’s sign-off at this end of it would have perhaps suited the subject matter far better: nous sommes embarqués – “adventure is ours for the taking”!

The first part of the post recaps on Monty’s initial work in improving Second Life via the HTTP project. This started as far back as mid-2012, with the first pass focused on improving the   mechanism by which textures could be obtained for rendering via HTTP, which entered widespread use around  November 2012, with the release of the 3.4.3267135 viewer.

This work was followed by Monty labouring to improve mesh fetching as well, and to improve the overall reliability of HTTP, which I blogged about in March 2013.

At the start of 2014, Monty blogged on his work up to that point, and looked ahead to future activities. As a part of the post, he included a graph showing how the work carried out up to that point improved texture and mesh request handling.

The HTTP project has improved "under the hood" performance in SL in a number of areas, starting with texture fetching, anf through greater robustness of connections through the use of "keepalives"
In January 2014, Monty blogged about his HTTP work, and indicated how the work had raised the request rate ceiling within the viewer for texture and mesh data from A up to the blue line of C

In his latest post, Monty picks-up where his January post left off, demonstrating how more recent improvements are starting to improve things further – notably through the use of HTTP pipelining (the release candidate viewer for which has now been issued – see below), and the ongoing deployment of the Content Delivery Network service for texture and mesh data delivery.

In his latest blog post, Monty indicates how both HTTP pipelining and the use of the Highwinds CDN service should further help improve data transmissions and  performance
In his latest blog post, Monty indicates how both HTTP pipelining (the “post 3.7.16” markers, denoting the introduction of the pipelining viewer) and the use of the Highwinds CDN service (denoted by the DRTSIM-258 markers) should further help improve data transmissions and performance

All told, Monty’s work has been a remarkable undertaking which benefits Second Life enormously, and helps to set the path towards possible further improvements in the future. As such, he really is one of the heroes of Second Life and the Lab.

HTTP Pipelining RC Viewer

The HTTP Pipelining viewer was issued as a release candidate viewer shortly after Monty’s post went to press.

Version 3.7.18.295372 enables the viewer to issue multiple asset fetches on a connection without waiting for responses to earlier requests. This should help inprove things like initial scene loading quite aside from any additional benefits gained through the CDN deployment work. In addition, the viewer includes improvements to inventory fetching, as Monty noted in his blog post:

The HTTP Project has focused on textures and meshes. But the inventory system, which maintains item ownership, is often described as… sluggish. So as an exercise in expanding the use of the new HTTP library, the pipelining viewer was modified to use it for inventory fetches. As with textures and meshes before, inventory is now fetching in the ‘C’ region of its specific performance graph. The difference can be surprising.

Having had the opportunity to test the pipelining viewer somewhat prior to its appearance as an RC, I can attest to this. While I keep my “active” inventory to a modest size (around 10,000 items unpacked, the rest boxed until needed), I found that an inventory download with a cleared inventory cache (nothing saved on my computer) averaged 9-10 seconds using the pipelining viewer, compared with an average of 2 minutes 50 seconds to 3 minutes with the current release viewer (3.7.17.294959). Whirly Fizzle, using a 105K inventory had even more impressive results: with a cleared cache, her inventory loaded in under 3 minutes on the pipelining viewer, compared to 16-18 minutes on the release viewer.

The release notes for the viewer contain additional information about the updates, again written by Monty, and these make worthwhile reading alongside of his blog post.

Related Links

The ghost of the Premium Membership offer returns …

preimiumThe Lab has announced the latest round of the Premium Membership promotions – this one with a decidedly Halloween feel.

As usual, the offer is 50% off of membership for those upgrading, but only if they opt for the Quarterly billing plan, and the discount is applied only to the first quarter billing period. The offer begins on Wednesday the 15th of October at 08:00 am Pacific Daylight Time (PDT) and expires on Monday the 3rd of November 2014 at 08:00 am Pacific Standard Time (PST).

Alongside of the membership discount, comes the Premium gift offer, which this time has a Halloween theme, which includes “jack o’lanterns, witches’ brooms and more – including a bone-shaking skeleton avatar”. The gift pack can be obtained through the Premium Gift kiosks.

I admit I’ve not picked-up my gift, as it doesn’t really appeal. This being the case, I’ll also avoid my usual grumblings about the way Premium membership is pitched, and instead say that whether or not you feel upgrading to Premium is worthwhile is purely a matter of individual choice. However, I would say that if you’re considering on the basis of “exclusive gifts” or “more privacy”, then you’re probably better off sitting down and thinking again.

Part of the Halloween 2014 Premium Gift (image va Linden Lab)
Part of the Halloween 2014 Premium Gift (image va Linden Lab)

Launched alongside the Premium Membership offer, and included in the same blog post as the Premium offer stuff, is news about the Haunted Halloween Tour, the latest offering from the Lab to feature Experience Keys. This can be accessed via the Lab’s Portal Park, and I’ve covered it in a companion article to this one.

Lab announces Oculus Rift DK2 project viewer available

On Wednesday May 21st, Linden Lab publicly released the Oculus Rift project viewer, offering initial support for the Oculus Rift DK1.

Things have moved on since, most notably with the release of the Oculus DK2, versions of which the Lab received in July 2014, and have been using to update the project viewer to provide DK2 support.

Oculus Rift: Lab launches project viewer with DK2 support
Oculus Rift: Lab launches project viewer with DK2 support

On Monday October 13th, the Lab announced that the updated version of the viewer is now available.

The blog post announcing the update reads:

A few months ago, we released a Project Viewer that made it possible to use the first generation Oculus Rift development kit (DK1) anywhere in Second Life.

Since then, Oculus Rift has released a second generation development kit, DK2. The new hardware offers an even more immersive experience when used with Second Life – there’s less likelihood of feeling motion sick thanks to the motion-tracking features, and less of the “screen-door effect” on the visuals, thanks to higher resolution and brighter display.

We’ve integrated the DK2 with Second Life, and today are releasing a new Project Viewer so that virtual reality enthusiasts with the DK2 can use it anywhere in Second Life, just as DK1 users can.

Unfortunately, though, there are still some bugs impacting the experience, which we won’t be able to fix until we receive the next SDK from Oculus Rift. Because Second Life uses OpenGL in its browser, we cannot support direct mode in the Rift until Oculus releases a version of the SDK that supports that.

In addition, juddering is an issue (as it is with most DK2 demos).This can be significantly improved on Windows by turning off Aero, which allows the Rift to use its full refresh rate rather than being limited to the refresh rate of the primary monitor. This refresh rate is a major factor in the judder and turning off Aero can significantly improve your experience.

We’ll continue to fix bugs and improve the experience as quickly as we can once we get the next SDK, but in the meantime, we wanted to get this Project Viewer out into testers’ hands. If you have an Oculus Rift development kit, you can download the new Project Viewer here.

The update includes an expanded HMD configuration panel, which can be accessed via Preferences > Move and View > click on the Head Mounted Displays button.

The expnaded HMD configuration panel
The expanded HMD configuration panel

As with the original project viewer, this configuration panel can also be accessed via a dedicated toolbar button.

The release notes for the viewer include some additional hints and tips:

  1. In Windows 7 turn OFF Aero (go to Windows Basic setting in the “Personalize” right-click menu on the desktop).
  2. In the Windows display settings, adjust the refresh rate on the DK2 to 60hz rather than 75hz.
  3. Make sure your Oculus config runtime and firmware are up to date.
  4. Make sure the power cable is plugged in to the Rift.
  5. If using an NVIDIA card, update to the latest drivers, which have some Oculus/VR specific optimizations.
  6. Turning on Triple buffering in the NVIDIA control panel may help in some cases. Results may vary.
  7. To increase framerate try reducing the Second Life Viewer draw distance and/or disable Shadows and the Ambient Occlusion.
  8. On the HMD setting panel in preferences try experimenting with turning low persistence mode on and off. We’ve found that is some cases it can exacerbate ghosting and jitter.
  9. If you’re in Mac OS X, it is recommended that you exit HMD when uploading files, such as images or models. There is currently an issue that can get your viewer stuck in a bad state if you attempt to upload files while HMD Mode is enabled.

Key Controls

  • Enter HMD mode – CTRL + SHIFT + D
  • Align to look – Q
  • Center Mouse Pointer – Z
  • Action key – X
  • Camera Mode – M (Press multiple times to cycle through 3rd Person, HMD Mouse look, and 1st Person modes)

The blog post from the Lab also includes the video released at the time the original Oculus Rift project viewer was launched.

Related Links

SL tax information processing: Lab comments on recent delays

Since November 2013, the Lab has been attempting to operate in compliance with US Internal Revenue Service requirements by ensuring those Second Life users meeting “certain transaction thresholds” have filed required IRS documentation with the Lab (whether or not they are US residents).

News of this move first broke via an SL Universe forum thread, and was subsequently followed-up by bloggers such as Ciaran Laval and myself, and by the Lab also blogging on the matter.

As the tax and documentation requirements continued to cause some confusion, clarification was sought from the Lab, and additional documentation was published in February 2014 to further help people understand the requirements and how to comply with them. However, as the year has progressed, there have continued to be occasional issues with people actually getting the required paperwork processed by the Lab, affecting their ability to withdraw funds.

As reported by Ciaran Laval at the start of October, some people have once again recently  encountered delays in seeing their submitted documentation processed by the Lab. His post prompted a reply from Pete Linden, providing some insight into why delays are occurring:

Due to a significant volume of payout request in recent weeks, payout requests may take longer to process than expected. We apologize for the delay, and we are working hard on clearing the backlog and process requests as quickly as possible. In the meantime, we advise residents to please address any specific questions through their Support cases. We appreciate the cooperation and patience from all residents, and hope to have payout request processing times back to normal soon.

As Ciaran notes in following-up on Pete’s comment, it’s not clear why there has been a significant volume of payouts recently, although he suggests that it could be tied to the recent changes to the Lab’s Skill Gaming policy, which may have caused an increase in the number of people filing payment information with the Lab in order to engage with skill gaming regions.

Whatever, the reason, the Lab is aware of the situation, and hopefully taking the necessary steps to ensure delays are minimised and, as Ciaran states, “everything will be back on track in the near future and normal.”

Related Links