RedWebImage 高性能 img 标签开源项目

我要开发同款
Redknot2017年04月21日
119阅读
开发技术JavaScript
所属分类iOS代码库、图像(Image)
授权协议MIT

作品详情

RedWebImage,高性能img标签Demo 演示

这是一个很有意思的项目,基于WebGL的滤镜系统,我们将使用OpenGLES作为硬件加速,做一个高性能的img标签。你可以使用这个img标签完成非常多,非常炫酷的效果,例如,动态的高斯模糊,漩涡效果等。

我们的小工具

使用默认Shader:我们默认写了一些Shader,这些Shader放在了/shader文件夹之下。我们在发布的时候,把这些文件的内容写成了js的变量,在/build/red-web-shader-lib.js里面,其实就是把这些文件的内容用引号阔了起来。你如果想使用,直接在你的Html页面里引入这个js文件就行了。

自定义Shader:如果你觉得我写的Shader太差劲,或者你想要什么新的效果,需要自己写Shader,那么也很容易。/shader文件夹之下有两个文件夹Fragment和Vertex。你直接把你需要的Shader写进去就好了,注意,文件不要加后缀,开头也不要以数字什么的开头,因为我们的工具会把你的文件名当成变量名。写好之后,就可以用我们的工具把Shader文件变成js的变量,写到/build/red-web-shader-lib.js里面。

我们的工具是这个,/build.jar,这是一个Java写的小工具,所以需要你的电脑安装jre,最好是Java8,写好自己的的Shader以后,你就可以用这个工具了

java -jar build.jar shader

用这行命令就可以了。这行命令会把原先的/build/red-web-shader-lib.js删除掉,然后根据/shader下的内容,重新生成一个。

使用的时候,要引入/build下面的两个js文件,我们的小工具除了把Shader文件写入/build/red-web-shader-lib.js中之外,还有一个功能是把我们的源文件写入/build/red-web-image.js里面。我们的项目源码在/lib文件夹之下,如果你改变了我们的项目源码,那么你可能需要下面这个命令。

java -jar build.jar all
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论