Hoshinova
  • Joined on 2023-04-11
Hoshinova commented on pull request blender/blender#106827 2023-05-01 22:48:30 +02:00
Add Fractal Voronoi Noise V.2

@brecht I have a question regarding hash_float_to_float

hash_float_to_float(cellPosition + cellOffset) * randomness;

Hoshinova commented on pull request blender/blender#106827 2023-05-01 22:43:17 +02:00
Add Fractal Voronoi Noise V.2

@mod_moder I'd figured you'll say that, but I honestly don't see how splitting this up into multiple pull requests would reduce the work for the reviewers in any way. Apart from that as all the…

Hoshinova commented on pull request blender/blender#106827 2023-05-01 20:49:42 +02:00
Add Fractal Voronoi Noise V.2

@mod_moder Well, looks like I did end up having to change a lot of the pre-exisitng code, so you did kind of get your general code cleanup after all ;-)

Hoshinova pushed to add-fractal-voronoi at Hoshinova/blender 2023-05-01 19:20:27 +02:00
2a0b9c8633 -- Change Distance to Edge normalization logic
3a059ab355 -- General refactor for OSL Fractal Voronoi noise
537f6941cf BLENDER_SOURCE_CODE_COMMIT commit message number: 3
Compare 3 commits »
Hoshinova pushed to add-fractal-voronoi at Hoshinova/blender 2023-04-30 21:20:07 +02:00
d22bb0e1c0 Refactor: General refactor for Geometry nodes Fractal Voronoi noise
3888623026 BLENDER_SOURCE_CODE_COMMIT commit message number: 2
Compare 2 commits »
Hoshinova commented on pull request blender/blender#106827 2023-04-28 19:28:45 +02:00
Add Fractal Voronoi Noise V.2

Right, I completely forgot about noise.cc, in that case I think I'll put the switch statement in the for loop, as it would probably still be faster than a function call and the performance…

Hoshinova commented on pull request blender/blender#106827 2023-04-26 20:22:37 +02:00
Add Fractal Voronoi Noise V.2

I meant something like this:

const VArray<float> &randomness = get_randomness(param++);
...
for (int64_t i : mask) {
  VoronoiParams params;
  params.randomness =
Hoshinova commented on pull request blender/blender#106827 2023-04-26 18:58:42 +02:00
Add Fractal Voronoi Noise V.2

As for GLSL I'll just #define a macro (something like INITIALIZE_VORONOIPARAMS) which would take care of the initialization of VoronoiParams.

Hoshinova commented on pull request blender/blender#106827 2023-04-26 18:54:25 +02:00
Add Fractal Voronoi Noise V.2

The voronoi evaluation still runs on one element at a time, and I think it's fine to keep it like that. And so that would mean VoronoiParams does not need to contain a VArray. Rather you can…

Hoshinova commented on pull request blender/blender#106827 2023-04-26 18:42:55 +02:00
Add Fractal Voronoi Noise V.2

@brecht I've made some final changes to voronoi.h. I would then copy the voronoi.h implementation to the other versions as closely as reasonable, so is there still anything you would like to…

Hoshinova pushed to add-fractal-voronoi at Hoshinova/blender 2023-04-26 18:40:14 +02:00
ac2a66b499 Merge branch 'main' into add-fractal-voronoi
f9d2cf3ad6 Refactor: further changes to SVM implementation
d8f4387ac9 Geometry Nodes: Index of Nearest: Use grain size based on tree sizes
4346314351 Geometry Nodes: Index of Nearest: Use span for non-single ids
45cecb101c Nodes: Support adding multiple nodes from search menu
Compare 439 commits »
Hoshinova commented on pull request blender/blender#106827 2023-04-25 22:49:14 +02:00
Add Fractal Voronoi Noise V.2

For VArray, I guess it's best to keep the implementation in noise.cc scalar for now, including VoronoiParams? To avoid making that much more complicated and keep it similar to the other…

Hoshinova commented on pull request blender/blender#106827 2023-04-25 20:51:36 +02:00
Add Fractal Voronoi Noise V.2

Also regarding the GLSL implementation, as far as I know the GLSL voronoi implementation starts in this file: https://projects.blender.org/blender/blender/src/commit/557a245dd5ce30f9e802e5b11a986f8

Hoshinova commented on pull request blender/blender#106827 2023-04-25 19:57:18 +02:00
Add Fractal Voronoi Noise V.2

Apart from that I have a question regarding the const VArray<> &s in 5a6db19da4/source/blender/nodes/shader/n

Hoshinova commented on pull request blender/blender#106827 2023-04-25 19:49:11 +02:00
Add Fractal Voronoi Noise V.2

@brecht It generally looks pretty great to me, though I noticed that after your refactor all 4D outputs of F1, Smooth F1 and F2 have been somehow distorted when using the Minkowski metric:

Ref…

Hoshinova pushed to add-fractal-voronoi at Hoshinova/blender 2023-04-23 18:23:41 +02:00
c5f25a05b1 BLENDER_SOURCE_CODE_COMMIT commit message number: 1
a50c8ccf0a BLENDER_SOURCE_CODE_COMMIT commit message number: 6
9b95d7a482 BLENDER_SOURCE_CODE_COMMIT commit message number: 5
Compare 3 commits »
Hoshinova commented on pull request blender/blender#106827 2023-04-23 14:48:27 +02:00
Add Fractal Voronoi Noise V.2

@mod_moder "As I once told you, it would be much better to do a more general code cleanup first." I have already altered and cleaned up the code wherever it was necessary. Apart from that the…

Hoshinova commented on pull request blender/blender#106827 2023-04-22 21:37:37 +02:00
Add Fractal Voronoi Noise V.2

@brecht I was able to eliminate all duplicate functions in voronoi.h by moving both the switch statements and the normalization functions into the fractalization functions.

voronoi.hin my…

Hoshinova pushed to add-fractal-voronoi at Hoshinova/blender 2023-04-22 21:13:35 +02:00
affa7a0a15 Merge remote-tracking branch 'me/add-fractal-voronoi' into add-fractal-voronoi
fbc0c03bf7 Fully optimize voronoi.h implementation with helper structs VoronoiParams and VoronoiOutput
966e44d892 AUTO_GIT_COMMIT commit message number: 5
9bbe51266d AUTO_GIT_COMMIT commit message number: 4
58612bd61a AUTO_GIT_COMMIT commit message number: 3
Compare 8 commits »
Hoshinova commented on pull request blender/blender#106827 2023-04-13 20:59:48 +02:00
Add Fractal Voronoi Noise V.2

I'll make the requested changes to the implementation in voronoi.h.

Just 2 questions before I do so: What exactly do you mean by `"Add utility function to accumulate octaves into VoronoiOutp…