Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bounty: $250] Coherent noise fuzzy skin support #7467

Open
1 task done
Arachnid opened this issue Nov 13, 2024 · 0 comments · May be fixed by #7678
Open
1 task done

[Bounty: $250] Coherent noise fuzzy skin support #7467

Arachnid opened this issue Nov 13, 2024 · 0 comments · May be fixed by #7678
Labels
enhancement New feature or request

Comments

@Arachnid
Copy link

Is there an existing issue for this feature request?

  • I have searched the existing issues

Is your feature request related to a problem?

The existing support for fuzzy skin uses a naive approach that generates random displacements for the skin. The result looks better than printing artefacts, but still a long way from looking like the textured surfaces commonly found on injection moulded parts.

Which printers will be beneficial to this feature?

All

Describe the solution you'd like

Implement fuzzy skin generation using a coherent noise library such as libnoise. This should be fairly straightforward to do; libnoise lets you sample noise anywhere in a 3-dimensional space, so the existing fuzzy skin code can be modified to interpolate each affected perimeter at fixed intervals, then sample the noise function at the interpolated coordinates to determine the displacement for each point. The main complexity appears to be getting the current z-height inside the perimeter generation functionality.

Libnoise provides several configurable parameters, documented here; it would make sense to expose the octave count, frequency, and persistence values as configurable parameters to users, alongside the existing distance and thickness metrics, which remain relevant.

Describe alternatives you've considered

I considered applying perlin noise as a surface texture prior to importing it to the slicer, but this increases the size of the model and adds workflow steps, while making it less accessible to people.

Additional context

I'd love to have access to this functionality, but I'm unfamiliar with CMake and the codebase, so I'll happily pay $250 - via PayPal or in stablecoins - to anyone who's prepared to implement this and can get their PR accepted by the OrcaSlicer devs.

@Arachnid Arachnid added the enhancement New feature or request label Nov 13, 2024
@Arachnid Arachnid linked a pull request Dec 9, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant