OpenGL ES之GLSL实现仿抖音“缩放”“灵魂出窍”“抖动”“闪白”“毛刺”“幻觉”等动态滤镜效果

举报
Serendipity·y 发表于 2022/02/16 23:37:13 2022/02/16
【摘要】 无滤镜效果 “动态滤镜”效果的实现准备工作的代码与“无分屏滤镜”中的实现逻辑和流程一致,只需要修改相应的底部item数组及对应的着色器名称等,这里不再说明这部分内容,顶点着色器也没有任何变化,本文主...

无滤镜效果

  • “动态滤镜”效果的实现准备工作的代码与“无分屏滤镜”中的实现逻辑和流程一致,只需要修改相应的底部item数组及对应的着色器名称等,这里不再说明这部分内容,顶点着色器也没有任何变化,本文主要是针对片元着色器中GLSL代码实现“动态滤镜”的算法做具体的说明和实现;
  • 无滤镜效果具体实现流程请参考:OpenGL ES之GLSL实现“分屏滤镜”效果

缩放

一、效果展示

在这里插入图片描述

二、实现原理

① 原理
  • 可以通过修改顶点坐标和纹理坐标的对应关系来实现;
  • 需要在顶点着色器实现完成;
② 缩放滤镜算法
  • 通过mod取模函数计算当前时间戳对应的时间周期,通过uniform传入顶点着色器:

在这里插入图片描述

文章来源: blog.csdn.net,作者:Serendipity·y,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/Forever_wj/article/details/108047552

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。