This is a long post, grab yourself a cup of whatever you like to drink, and settle in for a read! 🙂
The storied history of hiding the avatar in Second Life
Many moons ago, back in the olden days, we used to trudge uphill in the snow baref… wait, no, wrong story!
Back in the day when we only had the default SL avatar body, we worked around the fact that we couldn’t hide the avatar body with a variety of methods. First, we would just build bigger than the avatar body, and adjusted sliders and shoe bases to accomodate. The first real method of hiding the actual body that I remember was the Invisiprim, which used a little script that rendered the prim invisible, and any part of the avatar body it was worn on, also invisible.
The invisiprim could be a series of primitive shapes, cubes, cylinders etc, or a custom shape made in a 3d program which used a little R,G,B (red, green, blue) texture we called “sculpty”, or Sculpted Texture, to form the shape in 3d space when applied to a prim inworld. You can still find many sculpties, and invisiprims, in older shoe designs for example. They appear like big invisible blobs around your object when you select the item in edit mode. Some time ago, invisiprims were rendered obsolete, and they no longer work.
The nature of invisiprims was to obscure anything behind them that had an alpha channel, which is a property of a texture that makes it transparent or semi transparent.
Linden Lab introduced the Alpha Layer around 2012, which freed creators and consumers up from invisiprims in a big, substantial way. Now we could just wear a layer, instead of making big blobby prims to hide our avatar feet for shoes, or even our entire avatars for new bodies, animal avatars, tech avatars etc!
Alpha layers entirely replaced invisiprims with a much simpler to create and use system that could hide parts or all of the default avatar body with ease and didn’t cause transparent textures behind the avatar to disappear. They were especially useful once we had the ability to wear more than one.
Creators got busy making alpha layers for their mesh clothing. Alpha layers could be painted onto a template in a painter program like Photoshop, and made to fit exactly with the clothing, so that no part of the avatar clipped outside, and the body was visible only where it was meant to be. It was a great solution. Rarely would you find a mesh outfit without a complementary alpha layer.
A year or 2 after the implementation of alpha layers, Linden Lab gave us the ability to create and wear fully functional mesh items that animated along with our avatar skeletons, and responded along with our appearance sliders! Game changer right? Yes and no. With this update, came complete mesh replacements for the SL avatar body, since we could finally change shapes with the avatar appearance sliders, however, the ability to just wear an alpha layer and have your body disappear was gone, along with the ability to just wear a skin, tattoo, makeup, etc.
So we creators had to come up with a solution. That solution was HUD controlled, scripted alpha cuts.
HUD Controlled Alpha Cuts
HUD controlled alpha cuts gave us the ability to turn on and off parts of our new, pretty mesh bodies, but with some significant drawbacks:
- Each alpha cut area must be designated in the 3d program by the creator of the body, and must by design, follow the geometry of the body.
- To be at all functional, the body must be cut into many many zones or “faces”.
- SL creators are hard limited by the platform to 8 “faces” per single mesh.
- 8 is obviously not enough zones to properly cater to all the varieties of clothing available in SL, so we had to break the bodies up into many, many pieces, each with 8 individual zones.
- At final count, the Slink bodies were in 27 pieces, with 8 faces each, multiplied by 4, since we also wanted to provide layer options for tattoos, underwear and clothing.
- Each layer had to respond to the HUD the same way so when you turned off part of your arm, the corresponding part of your tattoo would also turn off, and not come on again until you enabled it again on your HUD
- To make any sense to the person scripting the body, the faces must never change in order. Otherwise when you think you are turning off your arm, you may be turning off your leg! This can lead to hours of pointless bug hunting. Ask me how I know 🙂
- 27 pieces, 8 faces each, multiplied by 4, needing to respond to the same HUD commands, quickly, without glitches if you turned on and off your layers separately is a mammoth, complicated and time consuming scripting task, not to mention managing the pieces to ensure no gaps, seams, texture mismatches or errors in face assignment in the 3d program.
- We had to provide a solution to 3rd party creators so they could script their clothing to automatically turn off bits and pieces of your body when you wore it. More scripting!
- The scripting of the alpha zones alone constituted more than half of the required scripting for the entire body.
- Each mesh piece, face and script contributes to your overall avatar rendering cost, (another article) which is an important number for keeping SL manageable for everyone. Lower is better.
By the time all was said and done, the layers of mesh, body pieces, faces, textures and scripts added up to a substantial avatar rendering cost JUST for the body alone. And then you start adding clothing and hairstyles, shoes and jewellery and.. well you see where this is going.
AND even all of that still wasn’t enough. Every week I would receive requests for more alpha cuts. Cuts down the front and back of the legs. Cuts down the sides of the legs. More cuts for different shirt necklines. Cuts for open front jackets, low back dresses. Jeans with lacing up the sides, teeny weeny bikinis. I could seriously see a future where I did nothing else but manage alpha cuts for the rest of my SL life.
And then came …Bakes on Mesh…
Join me in the next article where I talk about Bakes on Mesh and how we now handle hiding our avatar bits!