emission for surface viewed edge-on

Hi everyone,

I’m back to doing some astronomy modeling and I’d like to have a surface emit most strongly when the surface is viewed edge-on (nearly tangent).

I’m still trying to understand colorbands, textures, alpha vs. ztransp, and other features of blender, so I’m not sure how I would go about getting this effect.

Also, is there an easy way to force a surface to have a low alpha at the surface edges and a higher alpha in its middle? I know I can do this with UV mapping, but I wonder if there is another way to do achieve this. Perhaps, a particular coordinate for mapping a texture or colorband?


The tangent-brightness effect I was looking for is possible with nodes.

Fortunately, I just received “The Essential Blender” and worked through several examples and got the hang of the process.

In case anyone is interested, I’m attaching my .blend file.

Essentially I’m doing a dot product between the surface normal and the camera view vector, inverting it (so I get tangent instead of face-on), and then squaring the value to narrow the tangent zone a bit.

(For those interested in the math, the dot product basically produces a value between -1 and +1 depending only on the relative direction of two vectors. Result = +1 for parallel vectors, -1 for anti-parallel (pointing opposite), and 0 for perpendicular vectors, and cosine for values in between).

If anyone sees an easier way to do this process with fewer nodes (is there an invert node? 1 -> 0 and 0 -> 1), I’d be delighted to hear your suggestions…

For everyone else, happy Blendering!


materialnodestest.blend (178 KB)