(This is not a double-post, but a different question.)
I am facing a problem which,
after transferring normal, I want to edit split vertex normal to fix shading on a particular face, but avoid modifying other normals on the same vertex.To illustrate the issue:step 1: I transferred normal from this cylinder onto an arc of its piece (so that the shading is smooth when we put multiple of these arcs together.)
step 2: as we can see, while the top/bottom/front/back sides of the arc are now shaded smoothly, the left/right sides of the arc will shade badly, mostly because the cylinder doesn't hard edge/faces along the same sides.
step 3: we know splitting the edge (aka setting hard edge) will give us more vertex normals to work with, BUT, because Blender use "Auto Smooth" to display custom normals, doing so cause it to recalculate the normal, which defeats the purpose of transferring normal in the first place.
step 4: so I tried a setting the hard edge + edge split modifier before normal transfer, it got the hard edge sorted, BUT I still need to set the vertex normal, and importantly,
1 vertex normal from each split vertex, to be the same as face normal.
step 5: This is where I got stuck,
I don't know how to do that without affecting the other 2 normals on the same vertex. I know they are different vertices rendering wise, BUT Blender's normal tool doesn't know that.
step 6: also note that, because Blender's
Data Transfer modifier depends on
Auto Smooth, even if I have applied
Edge Split modifier beforehand, the transfer only store custom normal data for Auto Smooth mode! (these 2 objects are identical, the only difference is one has Auto Smooth enabled).
Thank you for reading this far, so my issue comes down to:- I want to transfer normal data.
- I also want to edit normal after transfer.
- BUT normal transfer depends on auto smooth.
- AND auto smooth by definition doesn't split vertices, so I can't edit normal individually.
- AND I can't set hard edge or use edge split after transfer as they will modify other normals.
I am in this circular dependency hell, please help!
Replies
STEP 7: since we have already split the vertices, we can separate the mesh faces we want to fix, align their vertex normal to face normal, then join them back. Existing normal won't change as Blender know they are different vertices.
Not convenient but at least the job is done.