At this years Second Life Community Convention, Linden Lab Chief Product Officer Tom Hale, aka T. Linden, showed video of a polygon mesh object responding to a dynamic lighting system much more advanced then the current lighting and shadows that are available in several Beta viewers. (videos below) With the new system, light is able to be reflected off of objects to their surroundings. Both are much sought after and desired features of advanced and experienced content creators, especially those who want to make use of existing polygon meshes made in Maya and other industry standard modeling tools. Unfortunately, Hale did not give any indication on when theses features might be available.
To help us better understand these features, I have asked our co-founder and Chief Creative Officer here at Sand Castle Studios, Reed Steamroller, to tell us a little more of what this means and what we can expect.
Linden Lab Offically Announces Mesh Support in Second Life
Second Life has been in a probationary period for me since I first logged in. On that faithful day back in October of 2006, I asked a question that has lingered with me since. Can I bring things into Second Life from 3rd party software? The answer I got was, of course, a big, nasty no, as this was the state of affairs of the time. Since then, there has been one giant improvement to the situation: sculpted prims, which do, technically, allow you to import shapes from 3rd party 3D modeling software. However, due to their limitations, sculpted prims are no final answer to that question I asked those years ago. As it turned out, as announced at this year at the Second Life Community Convention 2009, sculpted prims are merely a taste what’s to come, and polygon mesh support is soon to arrive.
Since the dawn of the new millennium, most video games have presented their virtual environments via something called a polygon, and while Second Life isn’t a game per se, it does run on game engine technology. A polygon, in reference to computer graphics, is a simple, two-dimensional shape that can be represented by your computer in three-dimensional space. Normally, most game engines use three-sided polygons, which you may also know by their technical terminology; “triangles.” Although, polygons can have four sides as well. If you guessed these four sided polygons are called “squares”, you are absolutely…. WRONG. We call them “quads” here. Polygons can also have more than four sides, but after that, to the world of computer graphics, they’re just referred to as “n-gons” to keep things simple. In the end, what you need to know is that these are the tiny building blocks of everything you see in Second Life.
Well, you can’t do much with just a triangle, and that’s why we have polygon meshes. A mesh is a bunch of polygons linked together. For example, a prim cube in Second Life may look like just that, a cube. However, if you go into wireframe mode, you would see that each face of the Second Life cube is actually made up of 18 individual triangles connected on their sides. We call this a regular mesh, because of how the polygons are laid out nice and neat across the faces of the cube, in somewhat of a grid-like pattern. If you look at all of the other prim shapes in wireframe, you’ll see their polygons laid out in much the same manner. Even sculpted prims, while they can be bent and formed into a wide variety of shapes, are still made up of these very grid-like, regular meshes.
There are pluses and minuses to these regular polygon meshes. Linden Lap supports these shapes because they are very conducive to a virtual world that is constantly changing, and which constantly needs to be streamed back to its residents. It is much easier for the Second Life asset servers to define a cube as “cube” and be universally understood what is meant by this across all of the viewers, as opposed to defining the coordinates of each individual vertex along the corner of each individual polygon that makes up said cube. From the viewpoint of a builder, however, the problem with these prims is that they are very restrictive, in that they force you into placing groups of polygons at a time, instead of defining for yourself just how these polygons will be positioned individually.
The guts of the question I asked back in 2006 really lay at the feet of irregular meshes. You can think of an irregular mesh as a polygon mesh in which the polygons are NOT laid out in neat or predictable pattern. These meshes are dependent only on the wishes of their creator, and are not restrained by any prerequisites of form. Irregular meshes give the creator access to manipulate the polygons themselves, instead of being limited to manipulating groups of polygons aligned in regular meshes. What is important to know is that allowing user-created, irregular, polygon meshes on the grid will give builders a higher level of freedom in not only what they build, but just how they build it.
You may be surprised to find that Second Life already uses irregular meshes, it’s just that we, the people, haven’t been given the ability to create any of our own. The most visible example of this is the Second Life avatar, an irregular polygon mesh created by Linden Lab to be especially good at deforming to the users will into all the different styles seen in Second Life.
If you’ve never been taught, or learned on your own, the correct way to model 3D objects out of polygons, you’ve got some work to do. Characteristics such as edge flow and poly count can make or break a polygonal mesh, and it takes time to get a handle on things. As with most disciplines, be prepared to make a lot of crap before anything worth showing to people.
Those of you out there with experience in making sculpted prims will be ahead of the curve, in that you won’t have to learn a new user interface. Chances are the software you already use for creating sculpted prims (be it Blender, Zbrush, 3D Studio Max, Maya, etc…) is primarily geared towards modeling irregular polygon meshes, and that sculpted prim functionality was added by some friendly Second Life resident as an afterthought. Really, the only place I’ve found that makes a distinction between regular and irregular meshes is Second Life.
Also demonstrated at SLCC was a new feature in the Second Life client that Linden Lab is referring to as diffuse, or reflective lighting. This seems to be a new lighting scheme allowing whats called indirect lighting. To visualize indirect lighting, think about when the sun shines through your window and hits the floor. The sunlight doesn’t just illuminate the parts of your floor that it hits directly, but instead bounces off the floor and illuminates the entire room as well. This is indirect illumination, and normally it is a VERY resource hungry, ray-trace intensive process. I imagine Linden Lab has figured out some sort of work around with regards to ray-tracing this effect, in order to keep frame rates up, but you really can’t tell from the results. This looks SPECTACULAR!
All in all, we have a ton of things to look forward to in the coming months. Kudos to Linden Lab for all of their efforts. Second Life 2.0 can’t get here soon enough!
Hale’s Presentation with Sound
Up close view