forked from blender/blender
Mesh: Add viewport normals simplify option #5
No reviewers
Labels
No Label
No Milestone
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: HooglyBoogly/blender#5
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "mesh-normals-simplify-option"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Before #108014, toggling "Auto Smooth" was an easy way to disable
evaluation of custom normals and face corner normals for faster
viewport playback performance. Now that corner normals are calculated
automatically as necessary, it's helpful to still have a way to disable
expensive normal computation for faster playback.
This commit adds a "Normals" scene simplify setting. To avoid a bunch
of complexity, it just influences which normals are requested from the
object by viewport rendering. In my tests, skipping calculating at
least doubled viewport FPS in a few test files with a large mesh with
custom normals. This works well because normals are cached and lazily
calculated.
Looks reasonable to me, and more logical than "simplifying" normals by disabling auto-smooth.
@ -2119,1 +2117,3 @@
R_MODE_UNUSED_27 = 1 << 27, /* cleared */
R_EDGE_FRS = 1 << 25, /* R_EDGE reserved for Freestyle */
R_PERSISTENT_DATA = 1 << 26, /* Keep data around for re-render. */
R_SIMPLIFY_NORMALS = 1 << 27, /* cleared */
How are these flags assigned? I don't know the usage and history, but why not use the lower bits? Or add a new one if they are somehow reserved? Seems kind of arbitrary.
Pull request closed