Triangulate modifier breaks custom normals #61942

Closed
opened 2019-02-25 18:11:09 +01:00 by Nick Sawyer · 12 comments

Operating system: Windows 10 Pro
Graphics card: Nvidia Geforce 1070

blender-2.80.0-893fa598319e-windows64

Adding a triangulate modifer breaks any custom vertex normals, such as those created by the weighted normal modifier. It's typical in game art to add a non-destructive triangulate before exporting to a game engine or texture baking app. Weighted normals behave differently on a triangulated mesh, so it's not practical to add them after the triangulate modifier.

Reproduction :

Using the included simple blend file -

  1. Toggle the triangulate modifier at the end of the stack.

  2. Observe the changes in vertex nomals

TriangulateNormals.blend

Operating system: Windows 10 Pro Graphics card: Nvidia Geforce 1070 blender-2.80.0-893fa598319e-windows64 Adding a triangulate modifer breaks any custom vertex normals, such as those created by the weighted normal modifier. It's typical in game art to add a non-destructive triangulate before exporting to a game engine or texture baking app. Weighted normals behave differently on a triangulated mesh, so it's not practical to add them after the triangulate modifier. Reproduction : Using the included simple blend file - 1. Toggle the triangulate modifier at the end of the stack. 2. Observe the changes in vertex nomals [TriangulateNormals.blend](https://archive.blender.org/developer/F6712649/TriangulateNormals.blend)
Author

Added subscriber: @CheeseOnToast

Added subscriber: @CheeseOnToast

Added subscribers: @ideasman42, @ZedDB

Added subscribers: @ideasman42, @ZedDB
Sebastian Parborg self-assigned this 2019-02-26 15:19:20 +01:00

@ideasman42 would you accept a toggle to keep the vertex-per-face normals?

@ideasman42 would you accept a toggle to keep the vertex-per-face normals?

Added subscriber: @mont29

Added subscriber: @mont29

Think this is more for @mont29, would assume if the data is there is should be maintained without having to add an option unless it's especially slow.

Think this is more for @mont29, would assume if the data is there is should be maintained without having to add an option unless it's especially slow.

Generally this is not considered a bug, rather a low priority TODO.

However in that case it looks like a valid need for that pipeline, so think we can add it (should not be that hard) - as an option indeed, as it will likely have a significant impact on speed of this modifier. ;)

@ZedDB feel free to re-assign to me, or add me as reviewer once you have a patch.

Generally this is not considered a bug, rather a low priority TODO. However in that case it looks like a valid need for that pipeline, so think we can add it (should not be that hard) - as an option indeed, as it will likely have a significant impact on speed of this modifier. ;) @ZedDB feel free to re-assign to me, or add me as reviewer once you have a patch.

@mont29 I'll try to have it done until next week. You can snatch it from me if you want to. Just let me know before hand.

@mont29 I'll try to have it done until next week. You can snatch it from me if you want to. Just let me know before hand.

Added subscriber: @JacRossiter

Added subscriber: @JacRossiter

It's fantastic this is being talked about. I believe that triangulation at export also breaks custom normal information. Would this fall into the same scope as the modifier fix? Thanks

It's fantastic this is being talked about. I believe that triangulation at export also breaks custom normal information. Would this fall into the same scope as the modifier fix? Thanks

I believe that the export, edit mode operator and modifier all share the same base code. I'll get the modifier working first and we can go from there.

I believe that the export, edit mode operator and modifier all share the same base code. I'll get the modifier working first and we can go from there.

Added subscriber: @michaelknubben

Added subscriber: @michaelknubben

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
Sign in to join this conversation.
6 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: blender/blender#61942
No description provided.