A very *simple* guide to mesh in SL

Mesh is coming: testing on the Main grid has started, LL are feeding us snippets of information and those watching it draw nearer are getting excited / concerned / upset / indifferent.

But what exactly does it all mean for those of us who have only a passing interest in such things? What will be the impact on the consumers among us rather than the content creators? What are we going to be seeing, what do we need to be aware of?

There are a lot of very basic questions such as these that are being asked – some of which are, in fairness, addressed in the SL mesh wiki pages (albeit with a lot of techspeak) – so I thought I’d try to put together a very simple outline of some of the key aspects to it all.

Note that this is not in any way a technical discourse on mesh and its pros and cons or how to create and upload mesh objects – articles penned by others far more competent than I are available in a number of blogs. Nor is it meant to be an exhaustive overview of mesh. It is simply a primer on the subject from the point-of-view of the consumer rather than the creator, and a look at what some of the fuss (good and bad) is about.

What is mesh?

A mesh – or rather a polygon mesh – is a means of generating 3D computer graphics. Polygon meshes come in a variety of forms, and can be created using a range of software applications. Second Life actually already uses meshes to some degree: avatars, for example are basic mesh objects. “Mesh” within Second life therefore really refers to the ability for users to create polygon mesh objects using suitable 3D rendering tools and then import them into Second Life for general use.

Why have mesh?

Second Life has often been critiqued for it’s somewhat primitive look: the in-world tools and shapes can be very limiting when it comes to trying to replicate more organic, natural, and real-world shapes. The use of mesh should allow content creators and Second Life users to import far more realistic-looking objects and items, overcoming this perceived limitation.

Multi-face rigged avatar mesh textured in SL (with thanks to LL)

Three types of mesh can be imported into Second Life:

  • simple mesh is a mesh with a single face. It can have a single colour and texture
  • multi-face mesh is a mesh that can have multiple colours and textures
  • rigged mesh is a mesh that conforms to your joints and motions. This means that you can wear a rigged model that changes the length and orientation of your avatar’s limbs and animates accordingly.

Note: it is possible for a mesh object to be a combination of these types; it can, for example be a multi-face rigged mesh, like “Seymour” in the image above. Meshes can also be textured prior to upload, as a part of the creation process, or once in-world.

Mesh objects for use in SL can be created in any 3D modelling tool that support the use of Collada 1.4 .DAE files for export. Such tools include high-end applications such as Autodesk Maya ($3,000+) through to the free tools like Blender and Google’s Sketchup. Linden Lab maintain a list of suitable applications on their wiki pages.

Common terms associated with mesh

Those familiar with building in SL may find it easier to consider mesh in the following ways:

  • Mesh – A collection of triangles with a single transformation matrix, roughly analogous to a “Prim” in SL (although not necessarily the equivalent of a prim – see PE, below).
  • Submesh – A subset of a mesh, equivalent to a face/side on a normal prim.
  • Model – A mesh or collection of meshes, equivalent to a coalesced (or linked) prim object.

PE – Prim Equivalence (now Land Impact)

Prim Equivalence (or to give it the official title: Prim Equivalent Weight) – abbreviated to PE, is one of the most important concepts for the “casual” mesh user / consumer, as well as a vital consideration for mesh creators. It has also been the subject of much controversy even before mesh has been launched on the Main grid. So with these points in mind, excuse me if I go on about it at some length.

Basically, PE is a means of trying to ensure that mesh objects and traditional prim objects receive fair shares of Viewer and server resources. Perhaps the easiest way to understand PE is to think of it as the number of prims that would be required to achieve the same level of detail, were they to be used instead of the mesh object.

PE itself is arrived at by taking the highest result from three performance weighting calculations made at the time a mesh is uploaded to Second Life. These are:

  • The server weight – (also referred to as the simulation weight in the wiki) the impact an object has on the server-side resources needed to manage it.
  • The streaming weight – essentially the bandwidth required for an object to be downloaded to your Viewer and rendered. Basically, the more complex the object = the higher the streaming weight
  • The physics weight – possibly the hardest to grasp, refer to the complexity of an object’s physics model. (This is also where Viewer developers have issues with coding their Viewers to enable mesh uploads, as I’ve reported on previously, as the code used by LL to calculate the physics weight utilises the Havok physics engine, which is not open-source. Therefore TPV developers need to find a means of calculating the physics weight either by using a suitable open-source physics engine, or by obtaining a Havok license.)

These weightings are calculated based on the complexity of the mesh itself and how well it has been defined and optimised during the creation process; they can also (in the case of the streaming and physics weights) be adjusted during the upload process. Get everything right, and a mesh object should have a manageable PE value. Get anything wrong, and one can end up with a horribly-massive PE count.

And even when it is done right, it is possible for an object to still end up with a PE count in the high hundreds, or for a mesh object to come off less favourably than it’s prim / sculptie equivalent (take a mesh tree with a PE of 9 or 10; are you more likely to buy that, or a sculptie tree that is just 1 or 2 prims, even if it is of a potentially lower visual quality?).

The PE for a mesh object can be seen using the Build menu of any mesh-capable Viewer, as shown below.

(model originally created for mesh upload testing by Jennifur Vultee)

Note: if you are using Kirstenlee’s Viewer (21 Build 9 upwards), you will also see the mesh object’s rendering cost and physics weight. These can be turned on in the mesh-enabled Viewer 2 by going to ADVANCED -> DEBUG SETTINGS and setting ShowAdvancedBuilderOptions to TRUE.

Are the physics weight and rendering cost important? Yes and not so much.

  • Yes because an vehicle designed to be physical (movable) must have a physics weight of 32 or below (regardless of the PE value). Ergo, it is useful for content creators to have access to this figure post-upload. This figure might be of interest to consumers, but frankly, if the vehicle in question moves as intended, then displaying the physics weight in things like vendor boards is of questionable need
  • Not so much because the rendering cost is for informational purposes only, and is not used as a physical measure (although doubtless it stands the risk of becoming a measure of controversy, much like ARC).

So, from the consumer’s perspective, the most important aspect of PE that must be grasped is that: it is not the “prim count” on a mesh object that is important – it is the PE value. As such, it marks a fundamental change to the way we’ve traditionally looked at object prim counts, and must be communicated utterly and completely clearly to the consumer community. The onus for doing this lies predominantly with Linden Lab – although obviously, content creators should ensure they display the PE count for their products when selling them.

Palm tree by Don Linden

In fairness, this actually cuts both ways, as a properly optimised mesh object can have a PE that is less than its “prim count”. Take the palm tree on the left, for example (created by Don Linden). It has a “prim count” of 15, but a PE of just 9; so it will effectively “take up” 9 prims when rezzed in-world, and not 15 as suggested by the prim count.

Finally, in rounding-out the discussion of PE, it would also be remiss of me not to cover a couple of additional points.

  • Like prim attachments, mesh objects worn by avatars do not count against the prim count for a parcel of land. Therefore, the PE for worn mesh attachments is not as critical as it is for objects rezzed in-world.
  • PE will most likely impact the price of mesh objects. This is because the upload price for mesh creations is calculated at L$150 x PE. So, an item with a PE of 33 will cost L$4950 to upload, while an item with a PE of 350 (such as a house) will cost L$52,500, and content creators will understandably have to factor these costs into the price of their creations (see updates at the end of this article for the latest on charges.)

Mesh: advantages and current issues

Mesh objects should, if properly optimised, not only improve the look of Second Life, but also  improve overall SL performance. This is because they should, in theory, put less strain on the server-side of things, free up resources, and have improved rendering at the client end of things. Mesh objects should also have superior physics compared to other objects in SL, allowing for improved avatar / object interactions (no more having your avatar appear to “bounce” when walking up a set of stairs or from the floor on to a carpet, etc.).

However, there are caveats to these benefits, not the least of which is the degree of skill, time and effort required to produce and upload meshes in order to achieve hoped-for goals. Certainly, if done right, there is no reason why a mesh house, for example, cannot have a very high level of detail, incorporate shapes that cannot be easily replicated using other means within SL, but at a cost that is equivalent to, or even less than, a similar house built using prims and sculpties.

Multi-face mesh house with interior fittings (PE 360)

But this does depend on people ensuring the get fully to grips with what is, to many in SL, an arcane science. Not everyone might be minded to learn all the ins and outs of mesh creation; others may opt to forego it altogether and stick with more “traditional” means of content creation and the increase to the maximum prim size (64x64x64m) that will accompany the introduction of mesh. Others may find the constraints currently placed upon mesh use simply too limiting; these currently include:

  • Mesh clothing cannot be easily re-sized to fit your specific avatar shape in-world as there is currently no deformer / cage capability in SL to handle this
  • Resizing of in-world mesh objects (such as building components, were they to be made) is also problematic: stretching or resizing a mesh item could drive up its PE value
  • Linking complex prims like the torus to mesh objects in-world is not advisable as it can cause the mesh object’s PE to increase; if the prim has been tortured (sliced, twisted, etc), the increase to PE can be quite large.

Boost

But issues and concerns aside, some things within Second Life do stand to get a boost from mesh.

Drivable mesh Land Rover by Arton Rotaru (PE 68)
  • Buildings and vehicles stand to gain a lot, simply because of the levels of realism that can be achieved with them.
  • Furniture should also benefit: a sofa with a PE of 6-9 would match its sculptie cousin, but potentially be of a far higher level of detail and be more flexible in terms of texturing.
  • Avatar attachments stand to gain as well, particularly smaller items such as jewellery and hair.

Rigged avatars should also prove popular – robots, etc. However, this all hinges on exactly how customisable the avatar rigs will be – after all, while robots can all tend to be alike, it is doubtful someone buying, say, a wolf avatar is going to want to look exactly like the other 2,000 users who have purchased the same avatar mesh…

Positive if worried

The majority of mesh content creators I’ve spoken to so far remain positive about mesh while acknowledging (indeed, highlighting) the issues I’ve touched upon here. Despite the complexities of actually getting a mesh object from their programme of choice, optimised and uploaded into SL in usable form, most define their view of mesh as “positive, if a little worried”.

Part of this worry is related to what will happen to content creation as a whole as mesh matures in Second Life should highly-skilled 3D modellers find the environment attractive as a means of making money. Will it in time see something of a demise within some aspects of the more traditional means of content creation as (/if) mesh capabilities improve and become more flexible? Could it eventually see elements of creativity within Second Life fade away, reducing its impact as a shared creativity tool?

Maxwell Graf, talking to me on the subject last night summed concerns up quite well. “The bottom line for me is this: I would prefer to build in mesh. Its better all the way around, and its what the rest of the world uses, its not a walled garden. My concern is how LL will implement it, and what effect it will have on our walled garden. Many plants can die when you introduce a non-native species into the garden.”

My thanks to all who helped with this item; those of you on the Beta grid and in the Main grid mesh sandboxes; your views and explanations of some of the more arcane aspects of mesh may not have made it into this piece, but they did help me understand the issue a lot more. Extra special thanks go to Max for patience and forbearance with my novice views on things.

Revision Notes:

  • 1st August, 2011: updated to provide further information on physics weight and rendering cost, as displayed by the Build menu in the Viewer.
  • 17th August, 2011: during the “Future of Mesh” presentation at SLCC 2011, Charlar and Runitai Linden dirrectly addressed a number of points that impact this article:
    • The upload fee will now not be $150 x PE. This was discussed as a part of the Beta programme, but the initial fee will not be based on the L$150 figure, although no precise figure was supplied
    • Google Sketchup is not recommended for the creation of mesh object for use in SL, as the Sketchup exporter does not create content that is efficient for the SL importer
    • Charlar suggested that those wishing to try-out 3D content creation should try Wings 3D, which is available for Windows, Mac and Linux

16 thoughts on “A very *simple* guide to mesh in SL

  1. Excellent guide 🙂 I have a question related to price: I paid to upload a mesh on the main grid only L$15 (it was a rather simple mesh). Where did you get this formula for the price? The Linden Wiki page says:

    The base Linden dollar cost to upload is L$10 plus L$10 for each texture applied to the model, and an additional cost based on the complexity of the model.

    Note: The L$10 base cost to upload a mesh model is a temporary rate for the open beta period. This fee may increase after the mesh upload feature leaves open beta.

    So this is just the price for the open beta on the main grid, but the final price will be 15 times that?

    Like

    1. Had the price / PE calculation passed to me by people who have been attending mesh UG meetings; I did ferret around various wiki pages and other info and came across confirmatory information, but didn’t bookmark it, tbh.

      The upload rate is still currently “discounted” during the testing phase. When I played with the upload tool (in a Main grid mesh sandbox), I got an initial cost of L$38 for the mesh I was using, but when I started playing with various parameters, this rose to L$117; so I have no idea how the discount is now calculated!

      Like

  2. Misleading, and very political, at the end of the day, because you imply that Mesh objects will be less in PE than they are in prims and take up less space/land. But in fact many Mesh items will suddenly be higher value than their prims as Lilith Heart has indicated. So we could be whallopped and lose half or more of our prim space or land value, forcing us to buy more land to accommodate tenants or re-parcel or do lots of other things, like go out of business.

    It’s really disgraceful that LL won’t come clean with the ECONOMY and PRIM and PRICE impacts of this move instead of just babbling about the tech side and claiming, through geeky literalization, that they don’t know yet and have to see how it turns out.

    Like

    1. Prok,

      Nothing political here at all. And nothing implied one way or the other.

      This is a simple guide to what people can expect and pointers as to what they need to be aware of. As such, it pointedly draws no conclusions as to whether mesh will be beneficial or otherwise for SL.

      Certainly, and if I say so myself, I make it perfectly clear that it is possible for mesh items to come out with very high PE values – making them both unsuited and uneconomic in SL – as much is it is possible to bring them in at PE values that match the prim “competitors”. I’ve also tried to indicate where mesh could be successful in SL content creation and equally, where, and how, it could fail.

      Of course, this does ignore the technical issues around what the grid infrastructure can actually support in terms of mesh, and whether the hoped-for performance benefits can actually be achieved if mesh really takes off and is as efficient, resource-wise, as as being hoped. But then, as I stated at the start of the piece, it’s not intended to be a technical discourse.

      Are there wider politics involved in mesh? Sure. Here’s a few:

      1. Is mesh really suited to all aspects of content creation?
      2. Are those involved in content creation that are unsuited to mesh being unfairly penalised?
      3. Are content creators operating within sectors than can benefit from mesh, but who are unable to develop the skills needed to build efficient mesh objects being discriminated against?

      But again, frankly, I’m not attempting to address these issues; they are being discussed, debated and argued upon in fora and blogs aplenty. Again, my aim here is to simply point out what people need to be on the look-out for and, in the broadest terms, what to be aware of.

      Like

    1. If you look at the updates – specifically the one dated 17th August – you’ll see I acknowledged the fact that Charlar Linden stated at SLCC 2011 that the L$150 base fee discussed during the Beta had been dropped. Charlar also said that while the fee would probably be increased, LL hadn’t at that time decided on the final figure.

      I’v actually contacted LL to request confirmation as to what the fee is, as the wiki still states the Beta programme fee ($10 per model and per texture + an amount based on the complexity) and that this “may” increase. I’ve yet to have a definitive reply.

      If you’re aware of any new pricing fee, or whether the Beta fee system has been retained, feel free to drop the specifics in here :-).

      Like

  3. this is a very well-written, informative guide to MESH as it becomes USER ready… And dare I say, USER FRIENDLY?? TY for all your hard work… as I have been compiling information for a few months now, and know how much effort had to be put into this comprehensive yet concise blog article.

    Like

    1. You’re wlecome. I’ve not re-visited this article in a good while; so I will say that given its ages, parts of it may well be out-of-date.

      Like

Comments are closed.