As many of you in SecondLife® (aka SL) might have already started hearing or reading about, Linden Lab has been working for months on the introduction of a Materials System (aka MS for remainder of article) in SL that is available to the entire building community and would be visible for all SL residents. This is extremely exciting when it gets fully deployed and will bring the quality and reality level within SL to another level ! But before I go any further I am sure many of you might not know what a MS is. Well let me try to explain what it is and why it's so cool. A MS is a technology that allows 2D textures (i.e. basic images like from a photo or a texture) react with corresponding shadows and reflections when light sources are directed at the texture. |
Light sources within a gaming systems like SL can be a moving sun on a sim, or any lit prim (like a face-light or street lamp). As such, since the MS enabled texture knows how to appropriately interact with these moving / changing light sources, if the light sources change in any way (i.e. they move or get brighter or dimmer or get turned off), the texture will respond to these changes and create shadows and shininess / reflections in a realistic way.
As part of this blog, I have created my first "Toysoldier Thor Video Blog Series" on YouTube whereby I actually show you how the new MS works within SecondLife. Click on the video title image above to watch the 9 minute video.
Up until now (and until MS is fully released in SL), us builders have had very basic ways to provide realistic shadows and reflections on SL built textures. What we have been doing is hard painting the shadows and reflections right into the basic texture to make it look like the texture is interacting with nearby lights. This is referred to as "BAKING" the materials system onto a texture.
As a 3D model / Mesh creator, my 3D modelling tool (ZBrush) has a powerful MS built into it that can interact with light sources, but then before I bring this mesh object into SL, I have BAKED the desired result onto the textures of the model. When it shows up in SL as an art sculpture, you all might say that is cool and see the shadows and reflection. But what the observer is subtly missing is that even if all the lights are turned off or moved, these reflections and shadows don't change.
This might sound like a small problem but the human brain is an extremely powerful interpreter of it's surroundings. It picks up unusual lighting situations and concludes that what it sees is fake and not a real situation. This reduces your human experience of the level of realism within SL. Therefore, the better you as a builder can reduce these "Unnatural Reference Points" and fake out the human mind, the more believable it is to the mind and the more real the experience for you within SL.
I should point out one interesting fact. SL has had a special MS active for a long time and we all see it in action almost every day when you are bouncing around any sim near the LL Ocean. Yup... you got it. Have you every noticed and marveled at how much more beautiful and realistic and interactive the LL Oceans are than anything else in SL? That is because the LL Oceans have been specially built with a MS that directly interacts with the sim's sun / moon light sources. That is why it shimmers and the reflections change as the waves are rolling.
As part of this blog, I have created my first "Toysoldier Thor Video Blog Series" on YouTube whereby I actually show you how the new MS works within SecondLife. Click on the video title image above to watch the 9 minute video.
Up until now (and until MS is fully released in SL), us builders have had very basic ways to provide realistic shadows and reflections on SL built textures. What we have been doing is hard painting the shadows and reflections right into the basic texture to make it look like the texture is interacting with nearby lights. This is referred to as "BAKING" the materials system onto a texture.
As a 3D model / Mesh creator, my 3D modelling tool (ZBrush) has a powerful MS built into it that can interact with light sources, but then before I bring this mesh object into SL, I have BAKED the desired result onto the textures of the model. When it shows up in SL as an art sculpture, you all might say that is cool and see the shadows and reflection. But what the observer is subtly missing is that even if all the lights are turned off or moved, these reflections and shadows don't change.
This might sound like a small problem but the human brain is an extremely powerful interpreter of it's surroundings. It picks up unusual lighting situations and concludes that what it sees is fake and not a real situation. This reduces your human experience of the level of realism within SL. Therefore, the better you as a builder can reduce these "Unnatural Reference Points" and fake out the human mind, the more believable it is to the mind and the more real the experience for you within SL.
I should point out one interesting fact. SL has had a special MS active for a long time and we all see it in action almost every day when you are bouncing around any sim near the LL Ocean. Yup... you got it. Have you every noticed and marveled at how much more beautiful and realistic and interactive the LL Oceans are than anything else in SL? That is because the LL Oceans have been specially built with a MS that directly interacts with the sim's sun / moon light sources. That is why it shimmers and the reflections change as the waves are rolling.
Anyway, LL's MS is very close to full deployment and they already have a MS enabled viewer released. Its not in the latest release of FS (4.4.1). So I decided this weekend to experiment with this new MS on the SL Beta grid and installed the latest LL Viewer 3.6.1. I took one of my landscape textures from my BANFF ROCKWALL texture pack that I have been selling for many years and convert it to be able to interact with SL's MS. This is done by using a program that can interpret a 2D texture as it is being hit by light sources and creates a set of additions related textures that a MS uses to do it's magic. These special textures are called MAPS. There are several types of maps but SL only uses THREE. The basic texture map called a "Diffuse Map", the "Normal Map", and the "Specular Map". The others are not used in SL. To the left you can see all three of them I created for my RockWall texture. The first one looks completely normal - because it is completely normal (ironically it's not the "normal map"). It is what I sell in my pack. The other two maps look completely weird but these special colors on these maps are providing very important light reacting instructions to the SL MS so that it can create the shadows and reflections on your screen as light sources move. There are many methods to create these maps, but an extremely powerful small programs that can very effectively create these maps from a basic texture is a program called CRAZYBUMP. This is what I used to make these maps in a matter of about 1 minute. Once I created the three maps, it was time to go into SL's Beta Grid called Aditi to do some experiments. At the time of this article you have to use the LL's latest materials system enabled viewer - I used version 3.6.1. Once logged in, I uploaded the three maps (i.e. they are just texture like any other texture so you upload them like you would load any image into SL). I decided to create a floor and three balls made of this texture so that I could see how the sim's lighting and shadows interact with all the prims. For each prim, I followed the instructions to load all three maps. This is done in the newly enhanced TEXTURE tab of the object's EDIT window. You first load the Diffuse map. Then you load the Normal Map, then the Specular Map. Both the new maps have several options to changes their interaction on the prim, but the specular map has more settings to increase/decrease the amount of reflection (aka Glossiness). |
Once I was done, I set up the scene with the sim's sun set in the sunset position so I could see how the low sun's angle created the shadows and lighting with all around it (including me and a recent jail cell cage I created. I also, create one scene with NO MS used and one with many of them prims using the MS. I also inserted a basic cube prim and enabled its "LIGHT FEATURE" similar to what we all use to make face-lights for our avatars. You can see it glowing in the middle. It was put there so I could see how the prim's shadows and reflections interact with this light source. Finally I also took the same image of the MS scene from the latest version of Firestorm 4.1.1 to show you all that it does not yet know how to interact with the MS (even with all my settings at their max). As you can see, even though my texture does a pretty good job in looking 3D-like with some subtle baked on shadows, there is just no comparison to the amazing realism that you witness when the prims are installed with the MS maps (the middle image). Enlarge the middle image by clicking on it and tell me with of the three balls DOES NOT have the MS enabled. Its very easy to see which one it is. Also, notice the reflections on the floor. What this image cannot illustrate but is very clear in my embedded video blog is that the reflections and shadow change with the changes in the light sources around it. When I move the lightbox, all the shadows and reflections change to respond to where the light is coming from. This is the most amazing feature of the new MS to SecondLife®. When LL works out all the bugs and this is fully released into the grid by all the 3PV makers, grid residents will see an evolution to an amazing new level of realism. |
There was one quickly noticed annoyance regarding the EDIT of the MS deployment. Once I set up the Texture, Normals, and Specular maps the way I want, if I later decide I want to change the texture's repeat pattern, the other corresponding textures must be manually changed to match the main texture. Considering there are almost no instances where these 3 textures would need to be out of synch, I am not sure why LL did not lock the repeat values for these 3 textures together so that if any one of them changed, the others would also change. They should have placed a manual override as an option but defaulted them to be in lockstep.
This concludes my blog on the new SecondLife® Materials Systems. Looking forward to exciting new builds with it.
This concludes my blog on the new SecondLife® Materials Systems. Looking forward to exciting new builds with it.