Skip to content

Make noise generation resolution aware #1909

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

Merged
merged 2 commits into from
Aug 9, 2024
Merged

Make noise generation resolution aware #1909

merged 2 commits into from
Aug 9, 2024

Conversation

TrueDoctor
Copy link
Member

@TrueDoctor TrueDoctor commented Aug 7, 2024

Implements footprint based noise generation. I originally intended to also fix the Mandelbrot node in this pr but it turns out that the node itself was never broken and it only stopped working due to an regression somewhere else which has since been fixed.

Changes:

  • Remove dimension parameter
    The dimensions are new inferred from the footprint
  • Add clip parameter
    The user can now choose if they want to constrain the noise

Alternatives considered

  • Make dimension optional
    We could instead make the dimension parameter optional, which would eliminate the need for a transform node after the noise node. This might provide a nicer to use api and could be implemented in a follow-up pr.

We now only render what is visible on the screen and also support clipping to the viewport itself:

image

@Keavon
Copy link
Member

Keavon commented Aug 8, 2024

Nice! That's also great to see the Mandelbrot node has gotten fixed already too. My observation is that we'll want to remove the "Clip" parameter so it's always boundless, and always have it be infinite, then use clipping masks or other nodes to actually constrain the bounds as the user desires. We'll also want to inverse the Scale parameter, I think.

@TrueDoctor
Copy link
Member Author

TrueDoctor commented Aug 8, 2024

Nice! That's also great to see the Mandelbrot node has gotten fixed already too. My observation is that we'll want to remove the "Clip" parameter so it's always boundless, and always have it be infinite, then use clipping masks or other nodes to actually constrain the bounds as the user desires. We'll also want to inverse the Scale parameter, I think.

Doing this would hurt the performance as you would generate a bunch of useless information which only later gets clipped. This would even evaluate the texture if the artboard is not even in view.

We'll also want to inverse the Scale parameter, I think.

So using 1./scale ? We could instead rename scale to frequency, as we now just pass the value through instead of dividing it by some magic constant

@TrueDoctor TrueDoctor merged commit c5dde18 into master Aug 9, 2024
2 checks passed
@TrueDoctor TrueDoctor deleted the fix-mandelbrot branch August 9, 2024 10:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants