波动+灰度图+噪点的简单实现
纹理波动的一种简单方案:
Tex.x += sin(fTimer+Tex.x*10)*0.01f;
Tex.y += cos(fTimer+Tex.y*10)*0.01f;
图片反相的简单实现:用1.0f或255减去当前每种颜色的值
灰度图的简单实现:
1、平均颜色-不推荐;2、灰度强度-人眼对绿色比红色和蓝色更加敏感,g=0.3R+0.59G+0.11B,推荐数值为(0.222,0.707,0.071)
噪点-扭曲的简单实现:
float NoiseX = iSeed * fTimer * sin(Tex.x * Tex.y+fTimer); //iSeed为随机种子
NoiseX=fmod(NoiseX,8) * fmod(NoiseX,4); //fmod为取余函数
float DistortX = fmod(NoiseX,fNoiseAmount); //fNoiseAmount最好在0.001~0.5
float DistortY = fmod(NoiseX,fNoiseAmount+0.002); //DistortX与DistortY为纹理坐标的变换量