sfml 项目有一个heathaze 样例
heathaze 原理非常简单:
通过从一张特殊贴图里面读取值,用这个值偏移 纹理坐标,接着用新的纹理坐标 读取纹理, 最后得到的就是 扭曲的 画面。
通过引入时间,来调整 读取特殊贴图的坐标的偏移,可以形成动画效果。
最后可以通过 alpha 贴图蒙版,通过乘偏移值, 可以构造不同蒙版形状的 热力场 扭曲。
本文共 225 字,大约阅读时间需要 1 分钟。
sfml 项目有一个heathaze 样例
heathaze 原理非常简单:
通过从一张特殊贴图里面读取值,用这个值偏移 纹理坐标,接着用新的纹理坐标 读取纹理, 最后得到的就是 扭曲的 画面。
通过引入时间,来调整 读取特殊贴图的坐标的偏移,可以形成动画效果。
最后可以通过 alpha 贴图蒙版,通过乘偏移值, 可以构造不同蒙版形状的 热力场 扭曲。
转载于:https://my.oschina.net/u/186074/blog/610075