Second Life Library
Known as libSecondLife and libSL (Library for Second Life), this code was written as a light-weight client by a team of people who were not part of Linden Labs. It was perhaps the first introduction of the Open Source initiative to the Second Life Suite of tools and services. After officially stating that they were excited about libSL at SLCC 2006, the Lindens shortly announced afterwards that they would be making the official client open-source. The Second Life library today is used primarily as an API for programmers to perform various tasks on the grid such as unit testing, group management, land management, artificial intelligence, NPCs, experimental project, and light weight viewers (SLeek, AjaxLife). An added benefit to this project is that anyone who does not want to understand the internal workings of the API to add features can submit bounties so that other programmers will implement features for them.
Second Life Client
Linden Labs has released the source code to its Second Life client (viewer) in the past. We have already seen the benefits of this as people have been submitting patches and optimizing code through the issue tracker (JIRA). Rouge viewers have started popping up (Nicholaz Edition) that have their own tweaks including patches that were not approved through the official issue tracker.
Second Life Sim
The Lindens are currently working on releasing the source code to their simulator. There is potential talk of allowing people to host their own simulators outside of Second Life, and allow them to connect to the main grid. This can provide new hosting opportunities on the internet. Rather than paying Linden Labs for a sim (Currently 295 US$/month), you can pay a hosting provider at their own rate. Lower rates may be possible if they can charge by processing power or bandwidth instead for places like residential sims that don’t host big events or get a lot of traffic.
OpenSim
Just like libSL, OpenSim is also being developed outside of Linden Labs. It is a combination of four services (User, Grid, Asset, Simulator) to be able to host a full grid without the need to connect to Linden Labs grid. This may be the full realized dream of Linden Labs. The benefits here are large for the end-user as well as for businesses, educators, architects, filmmakers, and even parents.
Professional entities are not happy about some of the culture available in Second Life. These are aspects such as gambling, pornography, and conduct. Another issue includes the firewall. In order to connect to the main grid, beurocratic paperwork has to be put through with both benefits and risks. Being able to fully host the Second Life platform behind a firewall gives the added benefit of developing work that has a non disclosure agreement (NDA) tied to it.
Filmmakers may also find the OpenSim platform beneficial. Imagine a large production set on a region spread across 50 simulators without having to pay for them. Frame rates are also vast. The current framerate on my initial trials was averaging out at 150 FPS when standing still, and would only go down to 60 FPS when spinning my camera around on a sim with 18,990 prims on it. For people creating machinima in virtual worlds, the frame rate is very important. It is hard for me to constantly maintain above 24 FPS on Linden Labs main grid while making machinima.
Parents can relax with running their own OpenSim. Rather then being restricted to the TOS on Linden Labs beta, teen, and main grid, both parent and child can work together on the same grid. Even children who are under 13 can join in on the fun. Imagine taking your child who loves to play video games and teaching them how to make things in a game? There are also many parents who will not let there children on the teen grid, just because they know of the culture that they would be exposing their child to. With OpenSim, parents have control over that culture.
OpenSim is still not perfect. In fact, many features are missing or are currently in development. As I found my self adding objects to my private sim, the speed at which objects were added was hindered over time. It took over an hour to make 18,890 prims. The only physics in-world are those that let your avatar walk across land (and it’s jagged at best). At this past Second Life Community Convention (SLCC), the developers stated that it will be some time (six months?) before it is feature complete.
Prims are saved in a MySQL database. You can also export and import them with an XML file. Combined with libSL, this gives you the ability to build a sim out on your own computer at home and then have everything render itself on the main grid once you purchase your sim. The added benefit here is privacy before going public, and the ability to wait on a sim purchase before you are done with your build. There is also the benefit of replicating sims on the fly if you are hosting an event in-world and need multiple sims that look exactly the same (Like the NBC Christmas Lighting in November 2006 across 19 sims).
Currently, there are a few grids that you can connect to with your viewer (or your sim). You don’t need to have OpenSim installed if you only want to connect to them with your Second Life Viewer. Public grids include OSGrid and DeepGrid. There are also a few stand-alone sims that you can connect to to play around such as CannonBall, Ruth(Zion), and CyberSpacia.