Верьте или нет, я использовал newx = oldx * 5 + 1 (или небольшое изменение этого) в нескольких видеоиграх. Случайность ужасна - это скорее зашифрованная последовательность, чем генератор случайных чисел. Но иногда это все, что вам нужно. Если я правильно помню, он проходит через все числа, прежде чем повторить.
У него ужасные характеристики. Он никогда не даст вам одно и то же число дважды подряд. Некоторые из нас сделали несколько тестов на его вариации, и мы использовали некоторые вариации в других играх.
Мы использовали его, когда не было доступного нам хорошего модуля. Это просто смещение на два и два добавления (или умножение на 5 и одно добавление). В настоящее время я бы никогда не использовал его для случайных чисел - я бы использовал LCG - но, возможно, он будет работать нормально для шейдера, где скорость важна и ваш набор команд может быть ограничен.