I think we should reconsider the big picture here. I don't think we should continue to add thousands of lines of code (which bloats the Cycles kernel, has to be maintained, refactored, optimized…
@CharlieJolly Can't we just increase the cutoff point of truncating the gabor kernel?
To quote the paper:
If required, this discontinuity could be alleviated by truncating at a…
Gabor noise does exhibit some discontinuities because the gaussian envelope is not continuous.
This is noted in Tavernier et. al. 2018, Gabor noise revisited which includes the improved…
Please stop this project and look into adding loops to shaders and reworking all fractal noise texture types into a node group asset)
Voronoi and Noise have both recently had fractal noise…
The number of inputs is definitely increased by adding the fractal controls. Removing those alone would reduce inputs by five but at the loss of that feature.
Okay, so why not remove the enum, rename Rotation Variance to Anisotropy, and unify the Direction and Rotation inputs?
I did think about this but found it tricky to do this in a nice way. The…
Yes, in OSL implementation we have the angular frequency set to a random number
float omega_t = float(M_TWO_PI) * rng();
in this patch this is contolled by Rotation and Rotation…
@OmarEmaraDev this is achieved using the Rotation and Rotation Variance controls.
This scaling factor here was simplification used in a script implementation by Lee Bruemmer.
The OSL reference uses the following based on the bandwidth value.
float gabor_variance =…
Well TBH I'm not sure, reading it again this looks like a feature of their application which is no longer available it seems. In this case I believe this can be achieved using the Rotation…
Added note to gabor_kernel function, this is due to returning Phasor values.
I'm leaning towards the fact that part of the outputs is literally a other output + a math node (fract, floor, min, smooth min, rand, ...).
That might be the case, but most of this data is…