it is fair this way, try it yourself. did not touch any IsChanged field.
after reading your comment i double checked though and found some issues when spreading funnily. one is related with the buffer.Length not being the same as the SliceCount which i could fix. and another happening if the minimum is bigger than the maximum.
edit: fixed both issues. added some kind of automated test. On my laptop the threshold is also around 250 slices, then the cost of it being a plugin is compensated by its performance (which stems from using modulo only once per slice).
the numbers are static... for a fair comparison you need to change the random seed of the input data every frame with a Random node or so...
it is fair this way, try it yourself. did not touch any IsChanged field.
after reading your comment i double checked though and found some issues when spreading funnily. one is related with the buffer.Length not being the same as the SliceCount which i could fix. and another happening if the minimum is bigger than the maximum.
edit: fixed both issues. added some kind of automated test. On my laptop the threshold is also around 250 slices, then the cost of it being a plugin is compensated by its performance (which stems from using modulo only once per slice).
Please note if pin is not green, random seed does not make any difference ;)