Having these options in the modifier is much more convenient, tho I'm unsure of the UI. The modifier must be the last in the stack or Cycles will ignore the options.
Details
- Reviewers
Brecht Van Lommel (brecht) - Group Reviewers
Cycles - Commits
- rC0b3358869363: Cycles microdisplacement: move subdivision options to subsurf modifier
rBS66e2e2484c09: Cycles microdisplacement: move subdivision options to subsurf modifier
rB66e2e2484c09: Cycles microdisplacement: move subdivision options to subsurf modifier
Diff Detail
- Repository
- rB Blender
Event Timeline
One issue we'll have to deal with here eventually is the case where you have a particle / hair modifier after the subdivision modifier. In that case render time subdivision gets disabled for what might seem no good reason. But it might be good to keep it disabled for now since you would get the issue that hair is not properly attached to the surface due to different subdivision levels.
| intern/cycles/blender/addon/properties.py | ||
|---|---|---|
| 1004 | I would prefer "Use Adaptive Subdivision". | |
| intern/cycles/blender/blender_mesh.cpp | ||
| 939 | We should check if the modifier is actually enabled here. | |
| intern/cycles/blender/blender_util.h | ||
| 54–63 | This kind of manipulation of scene data in export is not a problem now, but in the future it could be if we do better multithreading. Probably "ignore the last subdivision modifier" should become an API feature then, but I think it's ok as is for now. | |
| release/scripts/startup/bl_ui/properties_data_modifier.py | ||
| 907 | I think ideally we could arrange the UI something like this: Viewport: - Levels Render: - Adaptive Subdivision - Render Levels or Dicing Rate You could also check here if the modifier is the last modifier, to grey out or hide these options when they have no effect. It would be good if we could do this in the addon somehow as well, instead of modifying the Blender code, but I'm not sure how at the moment. | |
@Ronny G (nutel), in that screenshot I think it's not clear that Adaptive only applies to rendering.
- changed "use cycles subdivision" to "use adaptive subdivision"
- check if modifier is enabled
- updated ui
- new modifier settings are now only shown if modifier is last in the stack, otherwise old settings are displayed


