World Library  
Flag as Inappropriate
Email this Article

Second Life Grid

Article Id: WHEBN0017868275
Reproduction Date:

Title: Second Life Grid  
Author: World Heritage Encyclopedia
Language: English
Subject: Second Life, Sculpted prim, Economy of Second Life, Libraries in Second Life, Linden Scripting Language
Collection:
Publisher: World Heritage Encyclopedia
Publication
Date:
 

Second Life Grid

Second Life Grid

The Second Life Grid logo


Developer(s) Linden Research, Inc
Publisher(s) Linden Research, Inc
Designer(s) Linden Research, Inc

The Second Life Grid is the platform and technology behind 3D online virtual world Second Life. In April 2008, IBM announced that it would explore future deployment of a portion of the Second Life Grid behind a corporate firewall.[1]

Technical information

The flat, Earth-like world of Second Life is simulated on a large array of Debian servers, referred to as the Grid.[2] The world is divided into 256x256 m areas of land, called Regions. Each Region is simulated by a single named server instance, and is given a unique name and content rating (PG, Mature or Adult). Multiple server instances can be run on a single physical server, but generally each instance is given a dedicated CPU core of its own. Modern servers with two dual-core processors usually support four separate server instances.

The Second Life world runs on Linden Time, which is identical to the Pacific Time Zone. The virtual world follows the North American Daylight Saving Time convention. Hence it runs 7 hours behind UTC most of the year, and 8 hours behind when Standard Time is in effect during the winter. The servers' log files actually record events in UTC, however.

Physics simulation

Each server instance runs a physics simulation to manage the collisions and interactions of all objects in that region. Objects can be nonphysical and nonmoving, or actively physical and movable. Complex shapes may be linked together in groups of up to 255 separate primitives. Additionally, each player's avatar is treated as a physical object so that it may interact with physical objects in the world.[3]

As of April 1, 2008, Second Life simulators use the Havok 4 physics engine for all in-game dynamics. This new engine is capable of simulating thousands of physical objects at once.[4] However, more than 500 constantly interacting collisions have noticeable impact on simulator performance.[5] The previous Havok 1 installment of the physics engine caused what is known as the Deep Think condition; processing overlapping object collisions endlessly. It has been alleviated through the introduction of an overlap ejection capability. This allows overlapped objects to separate and propel apart as if compressing two springs against each other.[6]

Asset storage

Every item in the Second Life universe is referred to as an asset. This includes the shapes of the 3D objects known as primitives, the digital images referred to as textures that decorate primitives, digitized audio clips, avatar shape and appearance, avatar skin textures, LSL scripts, information written on notecards, and so on. Each asset is referenced with a universally unique identifier or UUID.[7]

Assets are stored in their own dedicated MySQL server farm, comprising all data that has ever been created by anyone who has been in the SL world. As of December 2007, the total storage was estimated to consume 100 terabytes of server capacity.[8] The asset servers function independently of the region simulators, though the region simulators request object data from the asset servers when a new object loads into the simulator.

As the popularity of Second Life has increased, the strain on the database engine to quickly and efficiently store and retrieve data has also continued to increase, frequently outpacing the ability of the Linden staff to keep their asset farm equipped to handle the number of users logged into the world at the same time.

Under severe load conditions it is common for the database engine to simply not reply to requests in a timely fashion, causing objects to not rez or delete as expected, or for the client inventory to not load, or the currency balance to not appear in the client program. Searching for locations, people, or classifieds may also fail under heavy load conditions. The database load is typically the most severe on weekends, particularly Sunday afternoons (Second Life Time), while the system can function just fine when accessed during low-load times such as at night or in the middle of the week during the day.

Software

The Second Life software comprises the viewer (also known as the client) executing on the Resident's computer, and several thousand servers operated by Linden Lab. There is an active beta-grid that has its own special client, which is updated very regularly, and is used for constant software testing by volunteers. This testing software was introduced to eliminate the short amounts of time between real updates, and increase its overall quality. The beta-grid reflects the standard main-grid, except that the actions taken within it are not stored by the servers; it is for testing purposes only. Every few months, the standard software is replaced by the beta-grid software, intended as a big upgrade. The Second Life user-base is growing rapidly, and this has stimulated both social and technological changes to the world; the addition of new features also provides periodic boosts to the growth of the economy.

Linden Lab pursues the use of open standards technologies, and uses free and open source software such as Apache, MySQL and Squid.[9] The plan is to move everything to open standards by standardizing the Second Life protocol. Cory Ondrejka, former CTO[10] of Second Life, has stated that some time after everything has been standardized, both the client and the server will be released as free and open source software.[11]

  1. The current in-house virtual machine will soon be replaced with Mono,[12] which will reportedly produce a dramatic speed improvement.
  2. uBrowser, an OpenGL port of the Gecko rendering engine, which has been used in the client since version 1.10.1[13] to display the Help documentation, will also be used to display webpages on any of the surfaces of any 3D object the Resident creates.

Linden Lab provides viewers for Microsoft Windows 2000/XP, Mac OS X, and most distributions of Linux. As of mid-2007, Microsoft Windows Vista is not yet officially supported although the viewer will generally run on Vista systems.[14] In the past, viewer upgrades were usually mandatory; the old viewer would not work with the new version of the server software. However, Linden Lab is working on a more flexible protocol that will allow clients and servers to send and take whatever data they may require, hence differing versions would nonetheless be able to work together. The project is known as Het-Grid or heterogeneous grid and the first iteration of the server software was deployed to the Main Grid over a few weeks in August 2007.[15]

As of January 8, 2007, the Viewer is distributed under version 2 of the GNU General Public License,[16][17] with an additional clause allowing combination with certain other free software packages which have otherwise-incompatible licenses. Currently not all of the required dependencies have been released.[18]

Modified viewer software is available from third parties. The most popular is the Nicholaz Edition;[19] this viewer, produced by Nicholaz Beresford, includes bug fixes developed outside Linden Lab that are not yet included in the Linden Lab code. The Electric Sheep Company has introduced the OnRez Viewer,[20] which makes substantial changes to the design of the user interface. ShoopedLife is a commonly used Second Life client that generates randomized hardware details and sends them to the Second Life server as part of the login, rendering the user anonymous, save for their IP address.[21]

An independent project, libopenmetaverse,[22] offers a function library for interacting with Second Life servers. libopenmetaverse has been used to create non-graphic third party viewers, including SLEEK,[23] a text browser using .NET, and Ajaxlife,[23] a text viewer that runs in a web browser.

The OS X viewer is a universal binary and is about twice the size of the Windows and Linux binaries.[24]

Animation editors using the Biovision Hierarchy file format such as Poser, and Avimator are compatible with SL.

Further development

In 2007, Linden Lab began work on improving the User Experience of second life. On December 6, 2007, a new download client (commonly known as a viewer) was announced. 'Windlight', so it was codenamed, came with many improvements to system stability as well as having a completely new rendering engine to include the use of atmospheric shaders, a new sky, new water as well as hundreds of other improvements to improve the quality of Second Life. Until 2010, the download client known as Windlight was the default client available as the main client download from the Second Life website. However, on February 19, 2008, Linden Lab announced the release of yet another client codenamed 'Dazzle'. This client came with changes to the stability of the client itself as well as an overhauled User Interface, which was given mixed feedback by users who chose to download the client. As well as many fixes to the client, usability is also being improved. While the 'First Look' Dazzle client no longer exists, the further developed version of the client formerly known as Dazzle currently exists as a 'release candidate' from the Second Life test software page on their website.

Dazzle was finally released as v2 of the official client with many new user interface features in Spring 2010.

Protocol

In May 2006 it was announced that the Second Life protocol had been reverse-engineered. A wiki was set up to further the effort.[25]

Since this project produced some useful software, Linden Lab modified the TOS to allow third-party programs to access Second Life,[26] enabling the project to be formalized under the name libsecondlife. Among functions developed are a map API, the ability to create objects larger than normally allowed (recently disabled), and other unforeseen capabilities such as CopyBot.

OpenSimulator

In January 2007 OpenSimulator was founded as an open source simulator project. The aim of this project is to develop a full open source server software for third parties who wish to establish separate grids.

OpenSIM is BSD Licensed and it is written in C# and can run .NET Framework or Mono environments. The community is fast growing and there are some existing alternative Second Life grids which are using OpenSimulator.

References

  1. ^
  2. ^
  3. ^ Second Life - Physics Engine
  4. ^ Second Life Havok 4 - no lag with 2000-3400 physical prims
  5. ^ Second Life Havok 4 - Brownian Motion Lag
  6. ^ Havok 4 - Ejection and separation of interpenetrating objects
  7. ^
  8. ^
  9. ^
  10. ^
  11. ^
  12. ^
  13. ^
  14. ^ Windows Vista
  15. ^
  16. ^
  17. ^
  18. ^ Open Source Portal - Second Life Wiki
  19. ^ The "Nicholaz Edition" of the Second Life Viewer
  20. ^ viewer.onrez.com
  21. ^ ShoopedLife:About - ShoopedLife
  22. ^ libopenmetaverse
  23. ^ a b Delta’s Online Corner | Second Life
  24. ^
  25. ^
  26. ^
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 


Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.