我们可以只使用OpenGL获得相同的Instagram滤镜效果吗?

时间:2013-10-10 05:49:58

标签: ios objective-c opengl-es

我正在尝试像Instagram一样但不使用GPUImage框架。 我只使用OpenGL 2.0和着色器。一开始,我采用Instagram使用的一个着色器和纹理,并在我的项目中使用它们。我没有得到相同的结果和相同的滤镜效果。我不明白为什么有差异.GPUImage也基于OpenGL。在Instagram和GPUImage框架中有什么特别的东西吗?

1 个答案:

答案 0 :(得分:2)

没有理由你不能重新实现使用OpenGL在Instagram中看到的相同类型的过滤器。这只是创建一些纹理和开发一些着色器的“简单问题”。您可能会发现,您可以在Photoshop中进行实验,或者在实际切割代码之前使用GLShader工具对算法进行原型设计。这可能会节省一些时间。

显然,过滤器需要数月的调整才能获得正确的“外观”,所以不要指望在一夜之间重新创建它。我记得读过一篇关于Instagram的历史和开头的文章,这篇文章很有趣。

经过大约一分钟的搜索,我找到了这个Quora线程,其中Kevin Systrom自己负重,而最高评论者发布了一些反向工程描述的一些方法:

请注意,他的github回购已被删除,因为他愚蠢地从应用程序本身提取纹理并在线重新发布。显然这是侵犯版权的行为,所以不要这样做!我建议你从Instagram获得灵感,但从头开发自己独特的过滤器。