More Materials : Emissive Masks

Most of the talk I’ve seen about the Materials Project has been connected with the goodness that normal maps and specular maps are going to bring to the party. While these features are going to be great there’s also even more stuff packed into the materials system, so I thought I’d do a quick tour round one of the features I haven’t seen mentioned so much : Emissive Masks.

If you’ve done much building in SL you’re probably familiar with the “Full Bright” checkbox on the texture tab of the build floater. Prims that have this option set always appear brightly lit, even at night – in effect they are emitting their own inner light, so they never fall into shadow. This effect is known as being emissive, or an emissive material.

In the current version of SL you can only apply the emissive property to a prim an entire face at a time – you have no fine control over it. With the Materials Project you can now get fine control over how emissive every bit of a face’s surface is.

What does this mean in practice? I’ve cobbled together an example from an original image downloaded from CGTextures – the front panel of an Audio mixing…gizmo. I don’t know the technical term for what it is; it just had the right amount of shiny when I was looking for a tutorial texture 😉

I’ve taken the original texture, made an emissive mask from it, and applied it to a prim with a little glow thrown into the mix:

EmissiveNightAndDay

By day the effect is to give a little selective glow to the panel. By night the effect is far more dramatic – the illuminated parts of the panel really pop.

To help you achieve this effect yourself I’ll need to cover two main topics: Creating the emissive mask and then how it’s combined with the original diffuse texture for upload.

Creating the Emissive Mask:

The emissive mask is another one of those greyscale masks that are going to be cropping up a lot when you’re dealing with materials – in this case the whiter the image is at any given point controls how much light it will seem to emit.

To make the emissive mask from the original texture I first converted it to a greyscale image – that takes care of the greyscale part of the map.

MakeEmissiveMask

Then it’s a case of painting black over every part of the image that I don’t want to be emissive. In this case it took about ten minutes to carefully black out everything except the glowing displays and indicator lights.

Combining the Texture and Emissive Mask:

Now, to create a texture that uses the emissive mask you must take the original texture and apply the emissive mask to it as an alpha mask. Your graphics editor (and every other piece of software) will interpret this as transparency rather than emissive but once it’s uploaded we can instruct SL to interpret it as we like.

Once the combined texture (original + the emissive as an alpha mask) is uploaded to SL we can get to work on it. Create a simple box prim, select a single face and apply the texture to it. This will look weird at first because SL will interpret the alpha layer as transparency by default.

In the build panel’s texture tab you need to look for the “Alpha Mode” dropdown and change it to “Emissive Mask”. The Materials Project viewer can interpret the alpha mask of a texture in different ways, which is efficient but means that you can’t have a texture with an emissive mask that is also transparent in parts. Swings and roundabouts. Once you set the Alpha Mode to Emissive Mask the prim will look much like the screenshots further up this post.

BuildPanelEmissiveMask

To give some more life to the surface add a little Glow and it’ll really look like those lights are shining out.

Adding More to the Shine

The emissive mask doesn’t really make the surface of an object light up – it’s really just a trick that makes parts of the surface always look bright. We can use some of the existing features of SL to push things a little further, though.

For some time now we’ve been able to create “Projectors” – prims that project a texture as light into the scene. If we combine this with the emissive mask we can get some really nice effects.

To see this in action, take a prim with an emissive mask and look in the “Features” tab of the build floater. In there are the light options where you can set the texture it projects. Turn the light on for the prim and set the projector texture to the same combined diffuse/emissive texture created above. The surface will now not only seem to shine when viewed but it will also project its light into the scene.

EmissiveProjecting

Now the panel not only glows and shines in the right places but actually shines that light onto passing avatars.

Using a projector isn’t perfect – it actually projects a mirror image of what the emissive surface should be projecting into the scene. A little judicious use of the projector’s focus hides this well 😉  I haven’t played enough with the Materials Project to know for sure, but you can probably get it all to work precisely with one texture so long as you’re flipping the x-axis in the right places on the texture tab.

Anyway, that wraps it up for this quick look at emissive textures. Now we can make control panels that seem to light up and cast dramatic light across our avatars’ faces along with a million other things I’m likely too dense to imagine – over to you 🙂

Kat’s Toolbox : Knald

Now and then I try out new pieces of software to see how they can fit into my workflow. Most of the time this means that the wreckage of dozens of apps I’ve tried and discarded pile up in forgotten corners of my hard disk until I go after them in a fit of mad space reclaiming and delete them, usually along with a handful of files I really needed and have to spend the next few hours recovering.

Some of the time the new app makes its way into my toolbox, even sometimes gaining coveted space as an icon on my desktop or perhaps (hushed tones…) on my Rocket Dock. Thus, a hierarchy of tools forms – they know how much they are loved by where their icons live.

Knald is hovering in no-man’s-land at the moment. I like it, I really do, but it’s still in its open beta phase with no price announced, so at any moment the hammer may come down and it might turn out that I can’t afford it. That said, while I’ve got it, I’m using it.

What it does is fairly narrow, but it’s no worse for that because what it does do it does very well. It’s basically a tool for going from a height map to a normal map (or vice versa) with all of the number crunching done on your graphics card via OpenCL which means that you can lean on your hundreds of CUDA cores in your shiny new nVidia card to make playing around with your maps a real-time operation.

It can also do some cool extras like generating ambient occlusion, concavity and convexity maps from your original height or normal map. The ambient occlusion in particular is very useful for adding some dimensionality to a diffuse map to give the surface even more life.

KnaldUI

In the picture above I’ve fed Knald the height map from my previous tutorial Materials for Dummies and it’s made me a nice ambient occlusion map (along with a normal map that’s not shown). It’s also showing me a nice 3D preview so that I can see how things look as I fiddle with the sliders. The preview window in Knald makes use of Tesselation, a feature on current-gen 3D cards that converts normal maps into extra geometry detail. It’s not something SL is doing right now, so for the SL-compatible preview you need to slide the Tesseletion setting down to zero in the preview window.

Taking the ambient occlusion map from Knald and blending it with the original flat diffuse texture produces something that’s already got some feeling of depth to it – match this with a normal map in SL and you’re really going to be pushing some life into your surfaces.

KnaldNumPad

Knald is much cooler looking than xNormal, but nowhere near as powerful. It’s not made for someone who has high poly and low poly models and is using one to generate normals for the other; Knald’s all about your textures and doesn’t care too much about your models, but if you’re not a 3D modeller (or are taking a break to just make some nice textures for general use) it’s definitely useful.

That’s not to say it doesn’t have anything for the person bringing a few OBJ files to the party. Knald can load your models and calculate some ambient occlusion for them along with the existing texture functions.

KnaldUIDress

This kinda feels like a bit of an afterthought, though. Knald really just wants to make you some textures really quickly and then let you mix them up in Photoshop.

I’m using Knald for the moment, while it’s free. When the beta period ends I’ll give serious consideration to buying a license, depending on how much it costs. For now, though, it’s the best value you can get: free 🙂

Peplum Dress Progress 01

I haven’t said much about this build yet, and I’m about a week into it, so it’s probably about time I let you all in on my latest project: The Peplum Dress.

Yes, another inspired product name from Kcreations 😉

PepDress1.1

 

I thought this was an interesting look – a fitted leather dress worn over a contrasting collared shirt. In the final version I’ll likely make it so that you can show or hide the shirt and I’m still playing with ideas about textures for it. I may go with latex or just cotton cloth.

The picture is the low poly model with the current working textures applied. There’s still work to be done there on the maps and textures but it’s coming together.

I’ll try to post another update in the not-too-distant future.

V-neck T-shirt Developer’s Kit

I’m sure many of you reading this blog also follow Shiniez, aka Sjepan Sejic, on DeviantArt.

The other day he posted some T-shirt designs on his DA with permission to make your own. Dari beat me to the punch, using my avatar layer T-shirt templates to make a Second Life version that very day but, like with everything that tries to put writing across the avatar’s chest, the breasts distorted it into unreadbility.

The only answer was mesh!

Shiniez Shirts Vendor
I tried to copy the v-necked style from the original comic panels and I think I ended up with something quite similar.

I’ve also put together a Developer’s Kit for this – the meshes and textures are all full-perms so you can go nuts making your own T-shirts and variations.

Shirt DK Vendor

The Developer’s Kit is available for free at my shop and on the Marketplace. The Shiniez versions, also free, are only available at my shop.

Anyway, this one’s all open for you all to play with. I’d really love to see what you come up with 🙂

Kcreations Leather Vest release

In the previous post I talked about a speedbuild project – a sleeveless leather vest. After wearing the earliest version in-world for a little while I fell a little bit in love with it and decided to give it a bit of a better treatment than my last speedbuild, the Dragon Dress.

So, I’ve invested a little more time to give it some nice bump mapping and a full set of colour textures plus a handful of extra ones with an appliqué “BDSM” logo. Roll this up with a HUD and a Texture Developer’s Kit and you have the Kcreations Leather Vest, available now for a very reasonable L$100.

AsyVest GrpNotice

It’s nice to get a product out without having to spend so much time on it that I become sick of the sight of it 😉  With the Maid Dress I was stretching myself on pretty much every front; modelling, texturing, scripting. All that takes time and effort and by the time I was done I was glad to just be done with it. With a speedbuild I get something out that I still want to wear everywhere I go – so don’t be surprised if you see me hanging around wearing this vest for a little while!

 

Speedbuild : Sleeveless Vest

Sometimes, as change from my usual glacial pace, I like to try a speed build of something simple.

The last time I did this I came up with the Kcreations Dragon Dress that’s currently going for an amazing L$10 in my shop. Deirdre of the SLFF blog had asked some designers, including me, for some cheap items to go on sale at her in-world Fetish Spot, so I decided to see how quickly I could get a product worth that price out of the door.

DragonDress

The Kcreations Dragon Dress

I managed to knock that dress up in about four hours. It took another few to sort out vendors and other little details, but I felt that wasn’t bad.

Today I had another go. I recently got a nice vest top with an extravagant collar that I’ve become rather fond of (us bondage types, we’re all about the collars, you know)  so I decided to have a go at making something similar but with a slightly more fetishy edge.

Final high-poly model in Lightwave

Final high-poly model in Lightwave

What I ended up with was a simple square vest that drapes across the hips with a high collar that collapses down into interesting folds around the neck. It’s ended up some way away from the original I have in real life, but I think I rather like it all the same.

So far it’s taken about five hours and I’ve only got one of the standard sizes rigged and uploaded, but it’s enough to have a go at modelling it in-world. I’ve started off with a leather texture for it just ‘cos I think it looks cool 🙂

Showing off the vest in-world

Showing off the vest in-world

I’m not sure if I’ll finish developing this into a saleable item yet – I’ll see how I feel about it tomorrow. I might pitch it somewhere between a L$10 cheapie and my normal prices and give it a simple HUD with a few textures and let anyone ambitious to have a go at the Texture Developer’s Kit fill in the rest.

 

Maid Dress Progress 05 : The release!

Yes, finally, it’s out!

After all the delays and setbacks on this one today’s the day when it finally escaped into the marketplace.

Maid Dress Marketplace 2

 

I think it’s turned out pretty cute – I’ve added some more pink options to the colour scheme since they seemed a bit more maid-appropriate than brown.

For those of you who’re good with Photoshop there’s also a Texture Developer’s Kit available for free. This contains lots of texture resources and UV mapping guides so you can have a go at making your own custom textures for the dress.

Maid Dress Marketplace 1