I'm implementing perlin noise in C++. I have a permutation table for the gradients vectors and want to shuffle them with a 2 number hash that has 2 purposes. The hash uses the integer portion of the current X and Z position of the float or double with 1 hash method (possibly Szudzik hashing) and another hash to generate a number used to select which element of a unshuffled permutation table to select (possibly using modulus of a division for any point not equal to zero) but I'm looking for be...