Wednesday, December 19, 2012

A Critical Look at Second Life - Part 3 "Improving the Content Creation Tools"

A Critical Look At Second Life
Part 3 - "Improving the Content Creation Tools"
A closer look at all of the bugs, design issues and social problems
preventing SL and Linden Lab from achieving greater success.

Improving Second Life's Content Creation Tools!

 Second Life's content creation tools have always been fundamental to the entire Second Life experience. Every clothing item you wear, every sim you visit, every vehicle you drive in SL is created with these tools, and yet they have critical flaws and shortcomings which Linden Lab needs to become more aware of if they hope to increase their userbase.

 To Linden Lab's credit, since Rodvik Linden took over as CEO they have shown signs of addressing a number of issues by improving the content creation tools. The Experience Tools, allowing sim owners to provide a far more interactive and immersive SL experience, will be a huge step in that direction. Keyframing is already allowing content creators to provide experiences which were previously impossible or to intensive on sim resources to use.

  Why are tools like these so important?

 Because they allow content creators to craft much more engaging content. The more interactive content in Second Life is allowed to become, the more applications Second Life will have and the broader SL's appeal will be.

 More interactive features will also allow for more practical applications.

 Being able to walk through an educational recreation of ancient Rome becomes far more valuable to educators when they can populate virtual Rome with virtual Romans. When students are able to talk to and interact with historical figures they take away far more than they would walking around a crude, static virtual statue and reading a few notecards.

 Job training sims are far more effective when scripted events can be relied upon to work as expected, rather than HUDs freezing up and scripted triggers failing to respond.

 Due to Linden Lab's failures to recognize the importance of such tools, developers of these experiences now go elsewhere, finding plenty of game engines and other software packages which allow for far richer experiences.

 Second Life's relevance hinges on Linden Lab providing effective tools to create the content that draws people in. Non-Player Characters seems to be the next logical step after pathfinding, and would be a far more substantial step.

 Adding more tools is not the only way forward, however!

 At times it should even take a backseat when resources might be better spent fixing issues with existing tools.

 For example, after releasing mesh buggy and missing critical functionality, Linden Lab moved on to pathfinding.

 Pathfinding is a fantastic idea and long overdue, however what benefits the most from pathfinding are Non-Player Characters, fake avatars and other computer controlled entities. SL has no NPC features, we cannot rez a fake avatar to stand in as a character in a sim environment, meanwhile LL deliberately withheld the ability to animate mesh which could have worked towards that end as well.

 What's more is that with pathfinding out, content creators seem reluctant to use it. Partially because of the lack of NPC options provided to use them with, but also because there is little in the way of documentation or examples to show people the possibilities of these new tools and a lot of content creators are complaining that the pathfinding tools themselves are unreliable.

( Now, to be clear here, I am still in the middle of figuring out pathfinding with a scripter friend of mine and I do not want to say that the pathfinding tools definitely are broken until I have seen exactly what they're capable and incapable of. I will come back to this article in the future and edit in my thoughts on pathfinding once I have more experience with those tools.)

 If the tools do not work or perform as expected, this can create as many problems as the tools are intended to solve. Ease of use. Presentation. The quality of content available to SL users. Making sure the tools work should be a priority second only to keeping the grid itself up and running.

 And Linden Lab has a very nasty habit of introducing new tools with plenty of bugs, then never fixing them.


 Let's look at some examples of problems with the content creation tools directly affecting presentation, usability and quality of content available to residents, shall we?

 Rigged mesh is a fantastic feature, which has opened up many exciting new possibilities, however a cloud hangs over it right now in that all rigged mesh content created up to this very moment is already obsolete and none of it is compatible with Second Life's own avatar.

 What do I mean by this?

 The Second Life appearance editor allows people to create avatars of all shapes and sizes. Short, tall, fat, thin, muscular or lean. However, when rigged mesh was released a number of Lindens involved stated that they did not believe rigged mesh would be used much for clothing or other attachments.

 Anyone who actually used SL at the time could have told them they were mad, and since then clothing and hair have proven to be the undisputed number one use of rigged mesh.

 Despite this, rigged mesh is not compatible with the SL avatar's appearance editing options. If a pair of rigged mesh pants are made for a thin avatar, they will only work for thin avatars. If a hairpiece is resigned around an avatar with an unnaturally flat head, it will only be useful for avatars with similarly irregular features.

 This creates a number of issues.

 First, there is the obvious presentation issue. Since rigged mesh as clothing only works with body shapes similar to that of the person creating the content, and most avatars already have poor proportions due to issues detailed earlier, rigged mesh is currently reinforcing excessively large avatars, stork-like legs, tiny heads, small arms, etcetera.

 The SL community has created a "standard sizing initiative" as a work around for this problem, but the people behind this initiative have no formal art training themselves. The smallest sizes for men are still gigantic, the largest sizes for women still border on anorexia. 

Users are forced to make bad avatar proportions just to use new rigged mesh content.

 Other content creators simply refuse to deal with rigged mesh at this point in time because anything they create will have to be redone once rigged mesh is fixed.

Meanwhile, content consumers who do not wish to change their shape, a personal expression of themselves and a part of who they are, because the pair of pants they just bought was made for avatars twice their height yet half their bodyfat are left with no options but to wait.

 Ease of use demands that, if it's possible to adjust the size and thickness of your avatar then that should be reflected in the content creation tools that content made to be worn by avatars should be able to adjust with the size and thickness of the avatar.

 Prims accomplished this for years by being moddable/resizeable. Mesh is even more capable of this as demonstrated by the SL avatar itself (which is mesh) and former Linden Qarl's "mesh deformer", which adds in the missing functionality.

 Yes, Linden Lab has been working to add Qarl's patch, but it appears this has a very low priority within LL even though rigged mesh should not have been allowed to release without it and every day it's not fixed compounds the damage. Comments from various Lindens suggest that the project is not considered important and that they do not understand why residents are upset, there are also reports of Lindens being taken by surprise by the popularity of rigged mesh in clothing. All of this suggests deeper obstacles for LL to overcome if they wish to see Second Life become more profitable.

 When the people developing a product do not understand the product or what it is used for then there is a serious problem.

 Here's another example! Neglecting to provide a way to create animated mesh objects!

 If you wander SL long enough now you are certain to come across someone wearing a mesh attachment in the appearance of a follower/pet to the avatar wearing it. A mesh creature that appears to be animated!

 How is this done? The creature was animated in a third party programme, and each "frame" of the animation was imported as a full model into SL. The creator then linked 30 or so of these models together and used a script to have each model turn invisible, then visible in sequence, so it appears to be a single model being animated.

 The problem here should be obvious. If not, glance at your framerate every time the attachment comes into rendering range. These things are death to framerates. The modern day equivalent of 270 tori twisted and alpha textured in to hair was in 2007.

 If they kill framerates that badly, why do people buy them?

 Because, there is an overwhelming demand for animated mesh content. If LL doesn't provide the tools to do it well, the userbase will do it poorly, compounding SL's reputation for poor framerates despite looking like an outdated videogame.

Yet another example! Resource abuse in SL!

 In SL's earliest days, sims had a finite number of prims that could be rezzed within them, but individual land parcels had no limits. So a single parcel could eat up all of a sim's prims, rendering the rest of the sim useless to anyone else.

 LL rightly put a stop to this by introducing parcel level prim limits.

 Unfortunately, the same sort of resource abuse can just as easily be done with script use and avatar access, yet Linden Lab has neglected to do anything to stop it.

 A single 512sq.m. parcel can have 50 avatars piled up inside of it, preventing anyone else from ever entering the sim.

 For example, I recently purchased a small parcel  of mainland, just to use the free tier I had as a premium account. I've already set the land for sale again because I could never use it. There is a club on the far side of the sim that is always full of people, preventing anyone else from ever entering the sim. The club is a fair bit larger than 512sq.m., but it is still less than a quarter of the sim's size.

 If I can't unload the land that's money I've wasted and I won't bother with mainland ever again. Why would anyone who encounters such a problem ever throw their money away on land in SL, when they realize someone could easily prevent them from ever being able to use said land? How did Linden Lab not foresee this problem?

A single avatar can eat up all of a sim's script memory!

That about sums up the problem. A single avatar, by itself, can load up with enough scripts to bring a sim grinding to a halt. I've seen avatars do this on purpose. I was sitting in a sim just the other day when an avatar with about a thousand scripts entered the sim. When asked why they had so many scripts their answer was, "for lulz", followed by, "lol".

 You can AR an avatar for this kind of resource abuse, but good luck on ever seeing it dealt with. Even if a Linden bans the offender, it's not likely to be until days later.

A single parcel can eat up all of a sim's script memory!

 Forget the avatar, a single 512sq.m. parcel can fill up on scripts and prevent the rest of the sim from functioning as it should. LL put a misguided bandaid on this problem by tying scripts to Land Impact costs if you use mesh or convex hull physics on prims, however that was probably the worst possible solution they could have devised as it does nothing to prevent a single landowner from abusing sim resources, and at the same time it discourages people from using mesh or mesh physics.

 You see, Land Impact replaced "prim limits", which are in place to keep the number of polygons in a sim within reasonable limits. The more polygons on screen, the more difficult it is for a videocard to render the scene.

 What do scripts have to do with rendering? Unless they're specifically scripts that spew particles or flood a sim with texture changes, then absolutely nothing.

 Scripts should have their own limits, separate from Land Impact. A resource pool specifically for scripting resources. Having more scripts should not mean having less polygons to work with or vice-versa! They are separate resources and should have separate pools they draw from.

 On the other hand, texture maps do have a very significant impact on rendering, just like polygons, and should be included in Land Impact. More or larger textures should eat up more LI cost on an object, in such a way that encourages people to use efficient textures.

Most 512x512 or even 1024x1024 textures in SL could be replaced with a 128x128 texture and no one would see a difference other than significantly higher framerates and sudden lack of latency from downloading all those huge textures. Better still if people combined a dozen 512x512 textures into a single 512x512 using texture offsets to wrap the appropriate parts of the map around an object, just like is done with mesh model textures.

In movies and videogames all items have texture wraps like this.

In SL every individual sculpt or prim face used would likely have it's
own texture map the size of the entire UV wrap for this game model.

 Considering that textures are perhaps SL's biggest obstacle when it comes to performance, it is absolutely mind boggling that Linden Lab hasn't looked into any way of curbing texture use down to more reasonable levels.

 Speaking of texture maps, 32bit alpha textures require many more resources to render than 1-bit alpha textures. SL supports both, but content creators are only given the option of uploading 32bit. 1-bit is restricted to avatar masks and linden plants.

 This is also a presentation issue as videogames avoid using 32bit alpha for a reason, they do not render well when overlapping 32-bit alpha textures. The infamous "z-sorting bug", which has plagued Second Life since the beginning, is not an SL bug but an issue with OpenGL itself. Games avoid it, using 1-bit alpha wherever possible (because they do not share this problem, they render perfectly fine) and restricting 32-bit alphas to where the problem will not be noticeable.

 Linden Lab's much touted "Wilderness" sims for Premium users are pretty much a showcase for this problem.

 LL entirely failed to give content creators the ability to use those same work-around and to this day has not provided any explanation as to why!

 In addition to providing no restrictions preventing people from abusing sim resources, LL also does not provide users with the tools to manage their resource use even if they wanted!

 The Marketplace asks people to enter the perms and number of prims an object has, but there is no place to enter the amount of script memory an object eats up.

 Without knowing how to script an object to tell you the script memory you're using, there's no way for the average use to know that they themselves are actually the source of all the lag they complain about!

 This lack of focus on resource management and preventing resource abuse has been a huge obstacle to SL retaining users. When people complain about the "lag", all of these problems are the primary causes.

These particular problems point to a single issue, Linden Lab needs to rethink resource management within Second Life. Putting in reasonable restrictions on resource use, just as they did with prim limits (and attempted to refine with Land Impact), and enabling users to better manager their own resource use by providing them with better and more accessible tools.


 Improving the content tools can also improve  ease of use, which is critical to retaining new users.

 A common misconception is that ease of use can only come at the cost of the freedom more complex tools can allow for. This could not be further from the truth.

 As an example, let's take a look at the appearance editor.

 I have already explained how correcting bugs in the appearance editor can improve Second Life's presentation, but other improvements can be made which also make it easier for SL users to create their ideal avatar without being overwhelmed by options.

 The most ideal course of action would be to look at the appearance editing options from videogames which offer the most similar range of freedom. Games like "EvE Online", "City of Heroes" or "All Points Bulletin". Then think of how one could use those ideas in a more open virtual world which allows user created clothing and content the way SL does. There are plenty of options there, but it would require LL to redo the avatar and appearance editor from the ground up.

 While not impossible, it's easy to imagine this being a costly investment. Perhaps worth it in the long term, but let's assume Linden Lab is limited on finances and such an ambitious project is not something LL can realistically appoint resources to at this time.

  Can Linden Lab learn from the appearance editing features of other software without redesigning the SL avatar from scratch?


 Let's look at where other appearance editors succeed over Second Life's own and see how we can learn from them and apply those lessons to the existing appearance editor and avatar.

 When you start in Second Life, you're generally asked to select from one of several pre-made avatars and then sent into the world with no further explanation of customizing your appearance. This is a relatively recent change from previous versions of the new user experience which would provide a very brief explanation of the appearance editor, and a small set of alternate clothing. Neither experience really provides a user with many options or really provides them with the means to customize their appearance from the start.

 Considering how central the avatar and avatar customization is to the SL experience, this seems like a mistake.

 Let's look at an alternate approach.

 In City of Heroes, APB and other games past and present, when you logged in you would first find yourself in the appearance editor. You're given a plethora of options and could easily spend hours crafting a character before stepping out into the world.

Look at all those sliders!
  Not so different from SL, aside from the lack of clothing options within the appearance editor itself. The SL appearance editor might even have fewer sliders to tinker with, but that does not mean that the interface is as simple as those found in the above examples.

 What LL can learn from is how many games break down the appearance editing process into simple steps, starting them off with basic options and then letting them delve into the sliders to customize those options further if they choose.

So simple, yet even more freedom than SL for shape making!
(Also, even CoH totally gave you a scale to know how tall your character is. Why is that so hard for SL?)
 For example, when you first begin creating your City of Heroes character, the game would present you with several general body archetypes. You could be a trim, wiry character. You could have an average, yet fit, build. A more heroic, athletic build or you could even be a hulking mass of muscles!

 You start off with that simple selection of four body types and are provided similarly simple selections for face, hair and skin. At each of these stages you are given the opportunity to delve into a menu of sliders and fine tune the shape to your exact liking!

 Compare this to Second Life, where a new user is given their pre-made avatar and ushered into the world. All of the male avatars have a very similar shape, both in size and body type. Same with the female avatars. If you want a completely different body type, good luck! You need to dive straight into the sliders, and as shown in the Presentation section, there's a lot of obstacles in your way towards making a decent shape for yourself.

 You pretty much need at least a two year art degree and spend several months learning the ins and outs of the SL appearance editor. Then, maybe you can create a pretty good shape for yourself.

  This scares off potential new users. No one wants to be ugly, so if they can't make an avatar they're happy with, and quickly, it prevents the user from getting attached to their avatar and Second Life.

 Linden Lab can fix this, pretty easily at that!

 Learn from these games, add an extra level to the appearance editor, where users select a general body type, face and skin.

Actually, looking at it now, you could totally get rid of the gender tab and just use the little checkbox.
 After user has selected a body type, face and skin, then give them the option to dive into all of the sliders and personalize their creation further!

 If LL fixes the problems with rigged mesh and then introduces a new selection of starters using mesh attachments, they can even have users select their outfit from the start and the rigged clothing and hair will adjust itself automatically with the avatar's body shape.

 I would also suggest that Linden Lab needs to completely replace the art assets the viewer uses for system skins.

 Do you remember system skins? Nobody uses them anymore because they look like this!

And this is one of the better system skins!

 The thing is, SL actually uses a system very similar to that used by Bethesda's Elder Scrolls and Fallout games. Yet the skins in those games look far, far better! It all comes down to the art assets used.

 Like Skyrim or Fallout 3, the SL skin system works by layering different textures on top of each other, with varying degrees of opacity, and letting you tint each layer with a basic colour picker. That's simplifying it, but you get the idea.

 The problem that separates Second Life from Skyrim is that SL uses very flat, pixelated textures which appear to have been created by a programmer. A little effort into renovating the system skin assets and you would be able to create a skin that looked as nice as one painted in Photoshop using nothing but sliders.

 If LL followed all of these steps then creating an avatar a new user can immediately identify with goes from becoming a complicated task for advanced users, to one of the simplest things anyone can do in SL, as it should be!

 LL really cannot afford to underestimate how much importance customizing one's unique avatar is to engaging and retaining new users. They've provided the freedom for creativity, now they just need to work on the ease of use to allow every new users to dive in right away without feeling overwhelmed or disliking their own avatar's appearance.

 And if Linden Lab is feeling ambitious, they could take this even further, improving the Outfits panel and intertwining it with the appearance editor, allowing users to select attachments by their attachment points while editing their appearance in the appearance editor.

 Perhaps allowing people to take screenshots they can then link with outfits and individual attachments, to give a picture representation of the outfit/attachment in question.

 Just an idea, but Linden Lab needs to be considering options like this. Other than the introduction of sculpts and then mesh, SL has barely changed over the years. Even the move from the 1.x UI to Viewer 2 was a very minor change.

 And it's not just the big changes that help, little improvements can make a world of difference.

 Letting landowners set multiple teleport points on their land. Adding simple vendor features like splitting profits and delivering multiple items. Adding a slider to the appearance editor which lets people scale the size of their avatar while maintaining proportions. All of these are small details which would improve the SL experience.

Improving the Content Creation Tools Recap!

Trying to recap all of that could take almost as long as the section itself so I'll try to be extra brief.

  • The tools are important because they affect all aspects of Second Life, from performance (framerates and "lag) to Presentation, to the ability of content created within SL to engage users.
  • LL needs to continue to improve those tools which allow content creators to produce interactive content, such as games and educational installations. NPC's and the ability to animate mesh would go a long way here.
  • LL needs to understand how problems with the tools can hurt how well SL performs on any given hardware. Poor resource management tools lead to lag and negatively impact the overall user experience. Poor content creation tools, such as the lack of 1-bit alpha and rigged mesh releasing incomplete, lead to lower framerates and nasty, unavoidable graphical glitches.
  • There are ways LL can improve existing tools to take tasks that are presently very difficult (such as avatar creation) and make them exceptionally easy. LL needs to understand that this is critical in retaining new users!

 Everything so far leads to the next, and final, chapter in this series, where we will talk about improving the new user experience.


  1. It does my brain in that something basic like product knowledge, one of the first prerequisites in what is basically a customer service, is totally off the radar to those at LL.
    I would bet no one at LL , let alone those dealing with coal face issues even spend 2 mins per work hour inside their offering. It makes me want to cry.

  2. It may be a concidence but I have seen sim performance fall off significantly since Pathfinding became active. It's not the actual Pathfinding features that seem to have triggered it, but the necessary change to the Havok physics engine. I sometimes see Physics frame rates of less that 1 frame per second, and I am nearly always seeing erratic movement.

    None of this makes Second Life look good. Some problems may be down to general net traffic, but Second Life does act in ways which give the computers, both the LL servers and the user's, unnecessary work.

    Since I used to do a lot of fiddling around with CGI, mostly Poser, I've got some clue about the underlying technology. The basic design of the Avatars, both the basic Mesh and the morphs that execute the appearance changes, have weaknesses, and the Mesh Deformer has made some of them very obvious. They are old designs. A big problem for LL is that they don't want to change the UV mapping, and break existing skins and clothing. This seems to have halted any effort to big-fix the Avatars.

    Example: the upper arm. You're going to get stretching there, as the arm moves from its zero position (horizontal) down to the usual human position beside the body. It cannot be avoided. But the polygon structure and the rigging extend that stretching almost to the elbow. A couple of extra rows of polygons, and revised rigging, would make a huge difference, and could be done without changing the UV-map.

    Example: Has there ever been a tight sweater which has dropped into the cleavage the way the texture-based clothing does in SL?

    Example: Why does the Shape data contain the whole body? A significant part of our sense of identity is in our face, yet we have no easy way of preserving that while we apply a body shape designed to go with a particular outfit. (Not just rigged Mesh here, the distortions that come from appearance editor changes, putting zig-zags into straight lines, means that any clothing could need a dedicated body shape.)

    I don't have the skills to fix these problems but I know enough to spot them. Linden Labs needs somebody with the skills, full time. Qarl might not be the right person, but he's the nearest to fitting that particular gap that I've heard of. And a dedicated AV Art and Engineering Linden might have done a better job of the Mesh Deformer project than Oz Linden has.

    And, to be honest, while I don't know which programming paradigm they use—SCRUM or Agile or whatever buzzword was fashionable when they organised their system—I see a common thread of interacting with the customer to get a produce the customer wants. Where on earth is the customer that the LL programmers interact with, and does it bear any relation to us?

    (I'd hoped to be in a better mood this Christmas. I shall go watch Porco Rosso, and for a moment I might believe that a pig can fly.)

  3. The core problem is that LL relies on programmers and engineers to the exclusion of all else.

    They need someone who specializes in creating content and experiences, not a programmer themselves but one who can provide internal communication and feedback to LL's management who would then be able to make educated decisions on how to assign prioritize to their development teams.

    They have a very similar experience gap when it comes to community tools and the new user experience.

    LL is unique in this respect. Other companies who develop software used for creative purposes have artists on staff to provide an end user's perspective. Other videogame studios (which is essentially what LL is, even if SL is not a "game" in the literal sense) have art departments.

    Until LL recognizes this shortcoming there is really nothing they can do to improve their user retention issues or prevent their eventual slide, already in progress, towards becoming the next Active Worlds or There.

  4. ROBLOX is driven by an ever growing membership base of more than 300,000 creators who provide an infinite variety of highly immersive experiences.

    These experiences range from 3D multi-player games and contests, to interactive adventures where friends can take on new identities imagining what it would be like to be a dinosaur, a miner working a mine or an astronaut out in space.