On Fri Jun 2 04:54:44 2023 +0000, Nikolay Sivov wrote:
Yes, it accepts anything in there. I pushed scalar check for now.
I don't think the `uint` detection algorithm is completely correct right now. For instance, `(int, int)` causes the `float` variant to be called, but `(int, uint)` causes the `uint` variant to be called. Quite strange.
From my tests the algorithm seems something like this: * if at least an argument is `float` or `half`, then use the `float` variant; * otherwise, if at least an argument is `uint`, then use the `uint` variant; * otherwise, use the `float` variant.
In theory that shouldn't even change that much, given that texture sizes should never be fractional or bigger than the smallest integer not representable with a `float`; so I won't insist too much on this.