September 11, 2006

Textures Make a Build


This past week saw a quiet aloft blog but a really busy build team. We brought the interior to life with the addition of texturing. I actually believe that texturing is the most difficult part of building within Second Life -- to make something look great and be low-lag (inefficient textures use is actually one of the worst causes of lag within Second Life) takes creativity, skill and smarts. Custom texturing is extremely time consuming but it separates a great build from an only-decent one.

Two examples below show how textures make all the difference in the creation of an immersive space:

GC3-bathroom-texturing.jpg

GC3-lobby-texturing.jpg

Sometimes you need to combine both clever prim work and texture work together to accomplish a difficult effect. Because everything in Second Life is made out of blocky primitives, organic shapes can be quite difficult. You cannot prim creased sheets, so Cory and Makaio combined forces to make the below effect. It is actually quite difficult to come up with a texture that makes a flat box and a few cylinders look like wrinkled cloth.

GC3-bedroom-texturing.jpg

GC3-lobby-texturing.jpg

When it comes to texturing, the devil is truly in the details. Details that differentiate a build include knowing when to add shadow effects (Linden Lab added local lighting to Second Life, but there is not much in the way of shadow rendering), knowing how to age a texture and when to add "noise" to prevent a flat or plastic look, and designing textures that do not over-repeat a pattern thus shattering the immersion. Smart execution in texture application is also important, such as paying attention to how textures sit on every side of a prim, checking for the pattern-repeat problem, using the repeat and offset settings appropriately, and double-checking texture size to avatar size (many make the mistake of leaving their texture patterns too big because they work with the camera zoomed out).

Speaking of details, one of my favorite touches in the kitchen is a very faint reflection effect cory placed underneath the aloft bags (I happen to like how she did the aloft bags as well, but that's another topic). If you look at the image below, you can just make out a faint reflection in the countertop. This actually is not a texture effect -- rather it is accomplished by mirroring the prim bags (making a copy and flipping them upside down under the counter) and making the counter-top faintly transparent. The illusion is shattered if you expect to see your avatar reflection, but if done subtly, I believe it can be a nice touch.

/GC3_kitchen_texturing.jpg

-- Giff Constable aka Forseti Svarog

Posted by at 6:54 AM in Texturing | Comments (1) | TrackBack (0) |

August 7, 2006

Texturing the Build

aloftsunflower.jpg

As we prepare our on-site visit to the aloft design warehouse before we begin work on the hotel interior, the time has come to begin creating textures for the rest of the island in earnest.

Creating textures for use in Second Life is generally done in a program like Photoshop, Paint Shop Pro, or GIMP. I've worked in Photoshop for about 7 years now, so I have a good working knowledge to draw from - but like designing for any medium, creating textures for SL requires some specialized knowledge of what to do and what not to do to get the best results. It’s kind of like designing graphics for a website - physical size and file size play a big part in how fast your graphics will load for a visitor, which can make the difference between an enjoyable build or a frustrating experience.

alofttextureap.jpg

Also being able to "map out" how the textures will be applied to prims of various sizes allows you to create some pretty neat effects, like the extra-large sunflower logo shown above, which stretches across 6 prims of differing sizes.

Another level of texture creation for SL involves knowing the limitations of the SL client itself, and how to fake a richer visual effect. Adding shadows and lighting effects directly to your textures before you upload them into SL (known as "shadow baking" or just "baking") gets around the fact that SL, as a streaming client, doesn't render realistic shadows. (The program can shadow individual prims, but a light pole won't cast a shadow onto the ground, for example.) Taking the time to add something as simple as a gentle gradient along the side of your walkway can have an immediate visual impact, making a flat texture seem more engaging and real. You can also go a step further and recreate your entire build in a 3D program such as Maya, render realistic shadows and lighting, then import the textures that Maya creates into SL. The results from that process are truly beautiful, but can also be extremely time consuming. Like anything, we try to strike a good balance between what we have time to accomplish and how best to use that time.

alofttreeshad.jpg

Sometimes you can use certain areas of a build to concentrate extra shadowing work on to make a better overall impact. In the picture above, I baked a shadow of the tree and bushes onto the texture used as the wall behind the foliage. It is subtle, but it is something the eye is likely to subconsciously absorb, and can really enhance the realism of the overall build.

Finally, you don't want to go too overboard in creating a special texture for each prim, no matter how good the results may look. Like a website, each graphic is streamed to the visitor in real time and then cached. The more individual files, the longer it takes to load. Judicious reuse of textures in a large scale build is a must to keep load times down. Sometimes it makes more sense to add shadows via the use of extra prims that have a special gradient texture applied to them, and then placed directly over the prim you want to shadow.

Posted by Cory Edo at 5:51 PM in Texturing | Comments (2) | TrackBack (0) |