Is it still not possible to bake normal maps in Unity 5?

I remember this was a common issue in Unity 4, now with Enlighten and Unity 5 I was hoping it would be possible to bake in normal maps into the light maps.

I have some textures which look 10x better with normal mapping and the shadows they cast, yet I still can’t seem to bake these in with Unity 5 no matter what I try.

Does anyone know how to do this or if it’s even possible? Or is there some asset store tool that could do this?

Thanks

@Aras @jonas-echterhoff_1 Do any of you guys know if this is somehow possible with Unity 5?

Try directional lightmaps with specular in the lighting tab.

Baking the normals into a completely lit map wouldn’t make sense in most cases, because you’d need huge lightmaps.
I agree, though, that the possibility would be neat.

1 Like

Thanks Findus, I will give it a try.

Is there any other way to do it though, perhaps in a program like 3DS or Maya?

Sure, it just got a bit more complicated in 5 as far as I’m aware. There are threads about it here on the forums. It seems you need to do some scripting/programming now in order to assign externally baked lightmaps.
(Directional lightmaps you’ll have to bake in Unity, though, I guess, not sure if there is a standard for those and even if, I’m not sure if there are solutions for Max or Maya to render those. )

If you really want to bake the normals into the map, you don’t need normals or shading, though, afterwards, in many cases, so you could simply discard your first uv set and use the unique unwrap and texures as your base uvs.

It might also be that normal maps are respected by Unity while baking, but it’s not visible because of the usually much lower resolution, so maybe you could test that if you haven’t. Generally though, normals often are close to invisible with fairly ambient lighting.

2 Likes

@Findus
I got it working with Directional Specular, thank you for that, but there are 2 problems with this…

1.) The realtime shadows no longer cast, even though I have set the baking property on the light to ‘Mixed’.
2.) This doesn’t support OpenGL 2.0, which is what most Android devices run.

Any workarounds or ideas on how to get around these issues?

Thanks

As for 1: I’m afraid you’ll have to wait till they fix that. However I’m not sure if you’d get an outcome like you expect. Directional lightmaps are a clever solution, but not perfect. Maybe post a screenshot of your exact problem.

If you want specular, e.g. for cars, then a completely baked map will look off in many cases since specular is view dependent.

I don’t really know what does or doesn’t run on which platform, but I’d probably try to decide which elements do need realtime specular/normals and which can go with baked elements and if polygonreduced shadowmeshes would give a performance advantage, so you maybe need to bake less.

If it’s a racetrack and everything is in motion you could try to double your lightsource. One for the baked shadows and another one for dynamic shadows. The shadows won’t be “unified” but maybe it’s good enough.

This is definitely a regression from Beast, in non directional lighting mode it should include the affect of the normal map in the baked lighting.

Sure the lightmap resolution in some cases might not be enough to support super fine detail in normal maps but for larger details it comes through, and even when it cant support the fine detail there is normally some overall effect that is more pleasant than it looking flat. Also it would have no cost in the shader and the editors already doing the calculation for it in directional mode.