Алгоритм шума не работает в Samsung Galaxy SIII (GLES)

Я изо всех сил пытаюсь заставить следующий простой алгоритм работать в Samsung Galaxy SIII

float rand(vec2 co)
{
    return fract(sin(dot(co.xy,vec2(12.9898,78.233))) * 43758.5453);
}

....
vec3 color = texture2D(u_texture, v_texcoord);
gl_FragColor.rgb = color + vec3(rand(gl_FragCoord.xy + time / 1000.0));
....

. Код отлично генерирует ожидаемый шум в Samsung Galaxy S1 и Google Nexus S. Но он полностью терпит неудачу в новом смартфоне, который использует ARM Mali -400/MP4.

Кто-нибудь может заметить что-то не так с этим алгоритмом? Или, может быть, понять, почему он мог выйти из строя?

9
задан Stefan Hanke 2 July 2012 в 16:59
поделиться