我很努力獲得下一個簡單的算法,在三星Galaxy工作SIII噪聲算法在三星Galaxy SIII(GLES)失敗
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));
....
的代碼完全生成三星Galaxy S1和谷歌Nexus S的期望噪聲但在使用ARM Mali-400/MP4的新款智能手機中完全失敗。
任何人都可以發現這個算法有什麼問題嗎?或者也許理解爲什麼它會失敗?
失敗如何?你是否在檢查錯誤/警告的信息? – Tim
完全沒有錯誤,根本不顯示任何噪點像素。整體形象是好的,但沒有任何噪音。 – PerracoLabs
嗯,那麼不確定。我只是建議一次剝下一層,直到你能理解爲什麼。例如。 fract()是否工作? (sin())工作嗎?sin(點((()))工作嗎?等 – Tim