1
$\begingroup$

I've figured out how to apply normal maps onto diffuse textures the correct way (thanks BSE :D), but now I've been searching on how I can use a normal map with an emission shader. I haven't found a proper solution after some digging, unfortunately.

Is there a way I could add or mix it in? I tried using a mix shader and connecting the emission shader that way, but it just makes the model grey-ish. Changing "color" from white to black has no effect, and changing the strength doesn't do anything neither.

Here's the setup I have going. Everything's spot-on except that I really need an emission shader. The point is to maintain my shadow-less & noise-less method like some of my other renders without any normal maps used. It also makes rendering time significantly quick. The top priority pretty much is to get that Emission shader in and also get it to work its magic, while maintaining the normal map. Phone with normal map

And here's the model without its normal map, for additional reference.

Phone without normal map

Thanks!

$\endgroup$
  • 4
    $\begingroup$ Normal maps work by altering shading. The emission shader does not have any shading, just light output. Thus, normal maps cannot do anything to it. I'm not sure why you are trying to use the emission shader in the first place? $\endgroup$ – JtheNinja Nov 6 '18 at 4:24
  • 1
    $\begingroup$ I think he wants the screen to bulge out via the normal map, but also glow. It is true that you cannot apply a normal map on an emission shader. I also don't undeerstand what in the world you are doing with those Mix shaders with only 1 input?? Perhaps if you posted your blend file we could help you more. $\endgroup$ – Dale Cieslak Nov 6 '18 at 7:32
  • $\begingroup$ Well, JtheNinja, I put the reasons why I want to use an emission shader right in my post.And precisely Cieslak! What I want is the normal map to stand out, but to also somehow include an emission shader so there's 0 noise and 0 shadows. If you take a look at the two images I put to compare them, the normal map for this model basically adds missing details to the diffuse texture. But as you've said it's pretty much impossible to do this? :( $\endgroup$ – Anthony Nov 6 '18 at 13:28
  • $\begingroup$ The Mix shader will only one input will effectively mix with a pure black shader - effectively just darkening whatever you mix it with. You could possibly use some vector maths to affect the emission based on your normal map. It would be helpful to have the blend file to be able to produce some examples without having to replicate your meah and normal map. $\endgroup$ – Rich Sedman Nov 6 '18 at 16:11
2
$\begingroup$

You could use vector maths to affect the strength of the Emission based on how close the Incoming ray is to the Normal using a setup similar to the following :

nodes

Note that I've used a Bump node to generate the normal - rather than a normal map - but the same principle applies.

The Incoming ray is the ray (in world space) projecting from the camera to the surface. The Dot Product compares the Incoming ray with the Normal and produces an output that varies based on how closely those vectors are to being in the same direction. The Power node is set to 'Clamp' to prevent negative values (where the ray is effectively from the 'back' of the surface) and changing the Value allows the strength of the effect to be adjusted.


In order to change the direction of the apparent illumination and shadows you can add a Mapping node and set the rotation as desired :

rotated light source

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.