New kick-ass low discrepancy quasirandom sequence

category: general [glöplog]
Check this guys:


Better than Sobol, ultra easy to compute
added on the 2018-08-28 22:57:59 by v3nom v3nom
Nice algo

The article links to this shadertoy impl:
weyl sequence by jaybird
added on the 2018-08-28 23:35:42 by neoneye neoneye
... Oh my, what kind of crazy thing are you working on nowadays to be looking into this?
added on the 2018-08-28 23:55:01 by p01 p01
Oh, it appeared on my Twitter feed and it is super useful for raytracing
That one is pretty cool and super trivial to implement.
TL;DR (for those who don't want to click links):
The 2D variant basically boils down to:
Code: float2 sampleCoordinate = frac(i * float2(1.0/P, 1.0/(P*P));

where i is the integer index of the sample and P is the Plastic Constant.

While this seems a pretty nice sequence for adaptive sampling, keep in mind that you can find better ones if you know the number of samples beforehand.
added on the 2018-08-30 09:40:31 by las las
He didn't compare to scrambled versions of the sequences or lattices/lattice sequences, which would make more sense for the 2D case, but still looks very interesting!
added on the 2018-08-30 10:02:32 by toxie toxie
useful :)
added on the 2018-08-30 10:02:33 by T$ T$
Nice =) Now someone please connect this (mathematically) to my plane (fractal) filling cycle, where i visit each pixel exactly ONCE - implying a full green image in the "covering" section of the article - and then startover. I did some tests that imply the underlying random sequence is indeed very good, but have no proof yet.

Currently, i
dont't know exactly what "magic numbers" produce stable
plane filling cycles, how they are connected to the
branching criteria, or how to find them, other than by
trying. I'll leave that for later - or for the
mathemagicians amongst us ;)

Tiny Intro Example
added on the 2018-08-30 11:58:33 by HellMood HellMood
Just did some tests with this new sequence: Unfortunately it sucks for higher dimensions, as for example most low dimensional projections there show the same old stripes as most lattice based constructions do. So nothing to gain there. :/

And actually, as he points out himself, for d=1 & d=2, the sequence is already well known, plus IMHO the construction of the sequence is very similar to lattices in Korobov form, except that he uses irrational numbers instead of integers.

What i want to do next is to check 4 and 5D problems (like AO, sampling a set of area lights or camera DOF, note that the other 2 dimensions come from sampling the screen/pixel), cause that might actually work pretty well.
added on the 2018-08-30 13:09:32 by toxie toxie