Page MenuHome

baking normal map using cycles does not support custom vertex normals on the baking target mesh
Needs Information from User, NormalPublic

Description

System Information
Windows 10

Blender Version
blender-2.79.0 2bf3825

Bug Description:

When baking normal maps from a high poly mesh to a low poly mesh using cycles, if the low poly mesh has customized vertex normals, cycles will not use them.

I uploaded a test file here which contains a simple highpoly (using a material with the new blend node) and lowpoly with custom normals (created using the Y.A.V.N.E. plugin):

http://www.brameulaers.net/blender/debug/cycles_baketest.blend

Using cycles for baking I consistently get incorrect normals baked down.

Custom normals are very often used in game development to get higher quality bakes and more flexible normal maps. Getting this feature to work correctly in Blender, used together with the new bevel node will make Blender a very powerful tool for producing PBR ready game art.
If anyone has time to take a look at this, I'd be very grateful! Hit me up if you need more test cases to work with and I'll gladly set them up.

Event Timeline

Sergey Sharybin (sergey) lowered the priority of this task from 90 to Normal.

Uploading file here:

@Dalai Felinto (dfelinto), something you can have a look? :)

Any progress on this?
Doing a model with custom normals on the low-poly and the expertimental dispalcement on the high poly... and kinda can't progress until this is fixed, is there an ETA?

For what I can see the normals are baked correctly, at least in 2.79.6. The problem that I noticed was the rendering of the object, custom normals and normal maps are still giving problems to cycles{F4670131}. Can anyone Upload another example, maybe I'm missing it.

I tried baking a simple model with Cycles recently and the problem persists, the low poly mesh had edited normals using the blend4web plugin, and cycles ignored them during baking, while internal gave me a correct, and quite visibly different result of the bake.

I can provide an example file later today.

Here is a recording of the process, where I first try and bake it out in cycles and am getting an unwanted result, and in the end I use internal and the result is correct :

This was recorded during a stream, so you may have to skip through the video. It contains the normal editing process, baking in cycles and internal.
https://www.youtube.com/watch?v=b23nwQb_qLI

Philipp Oeser (lichtwerk) closed this task as Resolved.EditedMon, Feb 10, 1:05 PM
Philipp Oeser (lichtwerk) claimed this task.

It looks like this has been resolved?
In rB79003fa0c415 I get:

2.8 Cycles with Split Normals


2.8 Cycles without Split Normals

whereas in 2.79 these looked the same with or without the split normals...

[looks like this has been resolved somewhere between rB8aa87972cac3 and rB9ab0247b6efc, probably rBc8e3fe608e7a]

So will close as resolved, feel free though to comment again if issues persist...

At a quick glance the sides of the screws (I assume that's what it is- the two vertical strips on the left) look incorrect - like world space normals. It could be a problem with the model, will test it out on my own model.

Just making sure here too - the issue at hand is surface weighted normals on the low poly, not the high poly - as in, an ingame model might have both a baked normal map and surface weighted normals, and they need to be baked to the low poly with the weighted normal taken into account.

Thanks!

Philipp Oeser (lichtwerk) reopened this task as Needs Information from User.Mon, Feb 10, 3:00 PM
Philipp Oeser (lichtwerk) removed Philipp Oeser (lichtwerk) as the assignee of this task.

Thx for getting back.
Yes, please check again, if it turns out there are still issues, please also upload your own file here...