Displacement map applied during slicing (resolves #8649) #13854
+746
−29
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This code allows a displacement map to be applied during the slicing stage similar to the vb_fuzzy_skin branch, drastically reducing the overhead of storage, transport, and rework (iterating).
I did this a while back and posted an issue, but didn't really here from people except a few excited people, and one suggested that making a PR would be a better way to bring attention to the feature and get it discussed by the community and considered by maintainers.
Cube mapping is good for many simple tasks like brick walls, which are popularly uploaded to model sites with displacement maps applied. For example, https://www.thingiverse.com/thing:5190970 makes Blender run at 1 frame per 30+ sec on an old i7 while doing any editing. On the contrary, if each brick were a few polygons, the same print detail could be achieved by applying displacement at the slicing stage instead (Keeping a low-poly model for storage, transport, and design iteration).
This feature is often hinted upon or discussed in various videos and forums, but for some reason no slicers (that I know) have implemented it, or even discussed it in official repos or forums. Maybe that is merely since game graphics specialists and engineers do not often share the same skill sets. Down the road maybe even custom UVs would be good, but for now cube mapping is a useful start for various scenarios.
I explain the problem and solution in detail here: