Updated voxel remesher defaults #97163

Closed
opened 2022-04-08 12:48:12 +02:00 by Julien Kaspar · 5 comments
Member

This is a minor to-do to create a smoother sculpting experience and freezes.

Issues

Preserve painted data

Often the user wants to preserve various object-data when remeshing. But by default the options to preserve "Painted Masks", "Face Sets" and "Color Attributes" are disabled.
Because of that these options need to be manually enabled for each new object that is created.
And all of these options combined will still perform better than just having the Fix Poles option enabled.

Since color attribute painting was recently introduced with D12587 it does make sense to update the defaults to preserve any painted data.

Fix Poles performance
The voxel remesher options that are currently enabled by default cause some issues.
By default the option "Fix Poles" is enabled, which leads to a lower vert-count when remeshing and cleaner topology.
This is a minor trad-off for the increased loading times, which can increase too much if more options to preserve additional object-data are enabled.
Here are some results after testing various combinations.

A monkey primitive with 536.769 vertices:

None options enabled = 1 second
Preserve Volume = 1 second
Fix Poles = 8 seconds
Fix Poles & Preserve Volume = 1 min 20 seconds
All enabled = 7 minutes 58 seconds
All except Fix Poles enabled = 5 seconds

Proposal

To provide a better experience for remeshing we should update the defaults.
Long term it would be better to improve the performance of the Fix Poles option but that is a bigger task.
So the new default options would be:

Fix Poles = Disabled
Preserve Volume = Enabled
Preserve Painted Mask = Enabled
Preserve Face Sets = Enabled
Preserve Color Attributes = Enabled

This is a minor to-do to create a smoother sculpting experience and freezes. ## Issues **Preserve painted data** Often the user wants to preserve various object-data when remeshing. But by default the options to preserve "Painted Masks", "Face Sets" and "Color Attributes" are disabled. Because of that these options need to be manually enabled for each new object that is created. And all of these options combined will still perform better than just having the Fix Poles option enabled. Since color attribute painting was recently introduced with [D12587](https://archive.blender.org/developer/D12587) it does make sense to update the defaults to preserve any painted data. **Fix Poles performance** The voxel remesher options that are currently enabled by default cause some issues. By default the option "Fix Poles" is enabled, which leads to a lower vert-count when remeshing and cleaner topology. This is a minor trad-off for the increased loading times, which can increase too much if more options to preserve additional object-data are enabled. Here are some results after testing various combinations. **A monkey primitive with 536.769 vertices:** None options enabled = 1 second Preserve Volume = 1 second Fix Poles = 8 seconds Fix Poles & Preserve Volume = 1 min 20 seconds All enabled = 7 minutes 58 seconds All except Fix Poles enabled = 5 seconds ## Proposal To provide a better experience for remeshing we should update the defaults. Long term it would be better to improve the performance of the Fix Poles option but that is a bigger task. So the new default options would be: Fix Poles = Disabled Preserve Volume = Enabled Preserve Painted Mask = Enabled Preserve Face Sets = Enabled Preserve Color Attributes = Enabled
Author
Member

Added subscriber: @JulienKaspar

Added subscriber: @JulienKaspar
Ramil Roosileht self-assigned this 2022-04-11 19:30:04 +02:00

This issue was referenced by d1418dd151

This issue was referenced by d1418dd151b1b446fd97108959ef0ba5c0404424

Changed status from 'Needs Triage' to: 'Resolved'

Changed status from 'Needs Triage' to: 'Resolved'
Member

Added subscriber: @JosephEagar

Added subscriber: @JosephEagar
Member

I just realized, I wasn't paying enough attention to this issue; users are complaining. I can probably fix the performance penalties in the remesher projection code which is extremely inefficient at the moment.

I just realized, I wasn't paying enough attention to this issue; users are complaining. I can probably fix the performance penalties in the remesher projection code which is extremely inefficient at the moment.
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#97163
No description provided.