二項演算子なしで疑似乱数を作成する方法はありますか?これは3Dマップなので、XとYの関数として作成しようとしていますが、ランダムシードをどこかに含めて、毎回同じにならないようにしたいと思います。二項演算子を使用して、このようなノイズ関数を作成できることを知っています。
double PerlinNoise::Noise(int x, int y) const
{
int n = x + y * 57;
n = (n << 13) ^ n;
int t = (n * (n * n * 15731 + 789221) + 1376312589) & 0x7fffffff;
return 1.0 - double(t) * 0.931322574615478515625e-9;/// 1073741824.0);
}
ただし、C ++の代わりにluaを使用しているため、二項演算子は使用できません。私は多くの異なることを試しましたが、どれもうまくいきません。ヘルプ?