IOS OpenGL ES GPUImage 强光混合 GPUI

2022-08-18  本文已影响0人  猿说编程

<div id="content_views" class="markdown_views prism-atom-one-light">
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
<path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path>
</svg>
<p>目录</p>
<ul><li><a href="#%E4%B8%80%E7%AE%80%E4%BB%8B" title="一.简介" target="_self">一.简介</a></li><li><a href="#%E4%BA%8C%E6%95%88%E6%9E%9C%E6%BC%94%E7%A4%BA" title="二.效果演示" target="_self">二.效果演示</a></li><li><a href="#%E4%B8%89%E6%BA%90%E7%A0%81%E4%B8%8B%E8%BD%BD" title="三.源码下载" target="_self">三.源码下载</a></li><li><a href="#%E5%9B%9B%E7%8C%9C%E4%BD%A0%E5%96%9C%E6%AC%A2" title="四.猜你喜欢" target="_self">四.猜你喜欢</a></li></ul>
<blockquote>
<p>零基础 OpenGL (ES) 学习路线推荐 : <a href="https://www.codersrc.com/opengl-es">OpenGL (ES) 学习目录 </a>>><a href="https://www.codersrc.com/opengl-es-%e5%9f%ba%e7%a1%80"> OpenGL ES 基础</a></p>
<p>零基础 OpenGL (ES) 学习路线推荐 : <a href="https://www.codersrc.com/opengl-es">OpenGL (ES) 学习目录</a> >> <a href="https://www.codersrc.com/opengl-es-%e8%bd%ac%e5%9c%ba">OpenGL ES 转场</a></p>
<p>零基础 OpenGL (ES) 学习路线推荐 : <a href="https://www.codersrc.com/opengl-es">OpenGL (ES) 学习目录</a> >> <a href="https://www.codersrc.com/opengl-es-%e7%89%b9%e6%95%88">OpenGL ES 特效</a></p>
<p>零基础 OpenGL (ES) 学习路线推荐 : <a href="https://www.codersrc.com/opengl-es">OpenGL (ES) 学习目录</a> >> <a href="https://www.codersrc.com/opengl-es-%e5%87%bd%e6%95%b0">OpenGL ES 函数</a></p>
<p>零基础 OpenGL (ES) 学习路线推荐 : <a href="https://www.codersrc.com/opengl-es">OpenGL (ES) 学习目录</a> >> <a href="https://www.codersrc.com/opengl-gpuimage">OpenGL ES GPUImage 使用</a></p>
<p>零基础 OpenGL (ES) 学习路线推荐 : <a href="https://www.codersrc.com/opengl-es">OpenGL (ES) 学习目录</a> >> <a href="https://www.codersrc.com/opengl-glsl">OpenGL ES GLSL 编程</a></p>
</blockquote>
<h2><a name="t0"></a><a id="_19"></a>一.简介</h2>
<p><a href="https://www.codersrc.com/opengl-gpuimage">GPUImage</a> 共 125 个滤镜, 分为四类</p>
<blockquote>
<p>1、Color adjustments : 31 filters , 颜色处理相关
2、Image processing : 40 filters , 图像处理相关.
3、Blending modes : 29 filters , 混合模式相关.
4、Visual effects : 25 filters , 视觉效果相关.</p>
</blockquote>
<p><a href="https://www.codersrc.com/archives/17291.html">GPUImageHardLightBlendFilter</a>属于 GPUImage 混合模式相关,<strong>用于图像强光混合</strong>。shader 源码如下:</p>
<pre data-index="0" class="set-code-hide prettyprint"><code class="has-numbering" onclick="mdcp.copyCode(event)" style="position: unset;">/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:IOS – OpenGL ES GPUImage GPUImageHardLightBlendFilter
//@Time:2022/07/16 06:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/

if TARGET_IPHONE_SIMULATOR || TARGET_OS_IPHONE

NSString *const kGPUImageHardLightBlendFragmentShaderString = SHADER_STRING
(
varying highp vec2 textureCoordinate;
varying highp vec2 textureCoordinate2;

uniform sampler2D inputImageTexture;
uniform sampler2D inputImageTexture2;

const highp vec3 W = vec3(0.2125, 0.7154, 0.0721);

void main()
{
mediump vec4 base = texture2D(inputImageTexture, textureCoordinate);
mediump vec4 overlay = texture2D(inputImageTexture2, textureCoordinate2);

 highp float ra;
 if (2.0 * overlay.r &lt; overlay.a) {
     ra = 2.0 * overlay.r * base.r + overlay.r * (1.0 - base.a) + base.r * (1.0 - overlay.a);
 } else {
     ra = overlay.a * base.a - 2.0 * (base.a - base.r) * (overlay.a - overlay.r) + overlay.r * (1.0 - base.a) + base.r * (1.0 - overlay.a);
 }

 highp float ga;
 if (2.0 * overlay.g &lt; overlay.a) {
     ga = 2.0 * overlay.g * base.g + overlay.g * (1.0 - base.a) + base.g * (1.0 - overlay.a);
 } else {
     ga = overlay.a * base.a - 2.0 * (base.a - base.g) * (overlay.a - overlay.g) + overlay.g * (1.0 - base.a) + base.g * (1.0 - overlay.a);
 }

 highp float ba;
 if (2.0 * overlay.b &lt; overlay.a) {
     ba = 2.0 * overlay.b * base.b + overlay.b * (1.0 - base.a) + base.b * (1.0 - overlay.a);
 } else {
     ba = overlay.a * base.a - 2.0 * (base.a - base.b) * (overlay.a - overlay.b) + overlay.b * (1.0 - base.a) + base.b * (1.0 - overlay.a);
 }

 gl_FragColor = vec4(ra, ga, ba, 1.0);

}
);

else

NSString *const kGPUImageHardLightBlendFragmentShaderString = SHADER_STRING
(
varying vec2 textureCoordinate;
varying vec2 textureCoordinate2;

uniform sampler2D inputImageTexture;
uniform sampler2D inputImageTexture2;

const vec3 W = vec3(0.2125, 0.7154, 0.0721);

void main()
{
vec4 base = texture2D(inputImageTexture, textureCoordinate);
vec4 overlay = texture2D(inputImageTexture2, textureCoordinate2);

 float ra;
 if (2.0 * overlay.r &lt; overlay.a) {
     ra = 2.0 * overlay.r * base.r + overlay.r * (1.0 - base.a) + base.r * (1.0 - overlay.a);
 } else {
     ra = overlay.a * base.a - 2.0 * (base.a - base.r) * (overlay.a - overlay.r) + overlay.r * (1.0 - base.a) + base.r * (1.0 - overlay.a);
 }

 float ga;
 if (2.0 * overlay.g &lt; overlay.a) {
     ga = 2.0 * overlay.g * base.g + overlay.g * (1.0 - base.a) + base.g * (1.0 - overlay.a);
 } else {
     ga = overlay.a * base.a - 2.0 * (base.a - base.g) * (overlay.a - overlay.g) + overlay.g * (1.0 - base.a) + base.g * (1.0 - overlay.a);
 }

 float ba;
 if (2.0 * overlay.b &lt; overlay.a) {
     ba = 2.0 * overlay.b * base.b + overlay.b * (1.0 - base.a) + base.b * (1.0 - overlay.a);
 } else {
     ba = overlay.a * base.a - 2.0 * (base.a - base.b) * (overlay.a - overlay.b) + overlay.b * (1.0 - base.a) + base.b * (1.0 - overlay.a);
 }

 gl_FragColor = vec4(ra, ga, ba, 1.0);

}
);

endif

<div class="hljs-button {2}" data-title="复制"></div></code><div class="hide-preCode-box"><span class="hide-preCode-bt"><img class="look-more-preCode contentImg-no-view" src="https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png" alt="" title=""></span></div><ul class="pre-numbering" style=""><li style="color: rgb(153, 153, 153);">1</li><li style="color: rgb(153, 153, 153);">2</li><li style="color: rgb(153, 153, 153);">3</li><li style="color: rgb(153, 153, 153);">4</li><li style="color: rgb(153, 153, 153);">5</li><li style="color: rgb(153, 153, 153);">6</li><li style="color: rgb(153, 153, 153);">7</li><li style="color: rgb(153, 153, 153);">8</li><li style="color: rgb(153, 153, 153);">9</li><li style="color: rgb(153, 153, 153);">10</li><li style="color: rgb(153, 153, 153);">11</li><li style="color: rgb(153, 153, 153);">12</li><li style="color: rgb(153, 153, 153);">13</li><li style="color: rgb(153, 153, 153);">14</li><li style="color: rgb(153, 153, 153);">15</li><li style="color: rgb(153, 153, 153);">16</li><li style="color: rgb(153, 153, 153);">17</li><li style="color: rgb(153, 153, 153);">18</li><li style="color: rgb(153, 153, 153);">19</li><li style="color: rgb(153, 153, 153);">20</li><li style="color: rgb(153, 153, 153);">21</li><li style="color: rgb(153, 153, 153);">22</li><li style="color: rgb(153, 153, 153);">23</li><li style="color: rgb(153, 153, 153);">24</li><li style="color: rgb(153, 153, 153);">25</li><li style="color: rgb(153, 153, 153);">26</li><li style="color: rgb(153, 153, 153);">27</li><li style="color: rgb(153, 153, 153);">28</li><li style="color: rgb(153, 153, 153);">29</li><li style="color: rgb(153, 153, 153);">30</li><li style="color: rgb(153, 153, 153);">31</li><li style="color: rgb(153, 153, 153);">32</li><li style="color: rgb(153, 153, 153);">33</li><li style="color: rgb(153, 153, 153);">34</li><li style="color: rgb(153, 153, 153);">35</li><li style="color: rgb(153, 153, 153);">36</li><li style="color: rgb(153, 153, 153);">37</li><li style="color: rgb(153, 153, 153);">38</li><li style="color: rgb(153, 153, 153);">39</li><li style="color: rgb(153, 153, 153);">40</li><li style="color: rgb(153, 153, 153);">41</li><li style="color: rgb(153, 153, 153);">42</li><li style="color: rgb(153, 153, 153);">43</li><li style="color: rgb(153, 153, 153);">44</li><li style="color: rgb(153, 153, 153);">45</li><li style="color: rgb(153, 153, 153);">46</li><li style="color: rgb(153, 153, 153);">47</li><li style="color: rgb(153, 153, 153);">48</li><li style="color: rgb(153, 153, 153);">49</li><li style="color: rgb(153, 153, 153);">50</li><li style="color: rgb(153, 153, 153);">51</li><li style="color: rgb(153, 153, 153);">52</li><li style="color: rgb(153, 153, 153);">53</li><li style="color: rgb(153, 153, 153);">54</li><li style="color: rgb(153, 153, 153);">55</li><li style="color: rgb(153, 153, 153);">56</li><li style="color: rgb(153, 153, 153);">57</li><li style="color: rgb(153, 153, 153);">58</li><li style="color: rgb(153, 153, 153);">59</li><li style="color: rgb(153, 153, 153);">60</li><li style="color: rgb(153, 153, 153);">61</li><li style="color: rgb(153, 153, 153);">62</li><li style="color: rgb(153, 153, 153);">63</li><li style="color: rgb(153, 153, 153);">64</li><li style="color: rgb(153, 153, 153);">65</li><li style="color: rgb(153, 153, 153);">66</li><li style="color: rgb(153, 153, 153);">67</li><li style="color: rgb(153, 153, 153);">68</li><li style="color: rgb(153, 153, 153);">69</li><li style="color: rgb(153, 153, 153);">70</li><li style="color: rgb(153, 153, 153);">71</li><li style="color: rgb(153, 153, 153);">72</li><li style="color: rgb(153, 153, 153);">73</li><li style="color: rgb(153, 153, 153);">74</li><li style="color: rgb(153, 153, 153);">75</li><li style="color: rgb(153, 153, 153);">76</li><li style="color: rgb(153, 153, 153);">77</li><li style="color: rgb(153, 153, 153);">78</li><li style="color: rgb(153, 153, 153);">79</li><li style="color: rgb(153, 153, 153);">80</li><li style="color: rgb(153, 153, 153);">81</li><li style="color: rgb(153, 153, 153);">82</li><li style="color: rgb(153, 153, 153);">83</li><li style="color: rgb(153, 153, 153);">84</li><li style="color: rgb(153, 153, 153);">85</li><li style="color: rgb(153, 153, 153);">86</li><li style="color: rgb(153, 153, 153);">87</li><li style="color: rgb(153, 153, 153);">88</li><li style="color: rgb(153, 153, 153);">89</li></ul></pre>
<h2><a name="t1"></a><a id="_120"></a>二.效果演示</h2>
<p><a href="https://www.codersrc.com/archives/17291.html">GPUImageHardLightBlendFilter</a>使用 ****,****源图如下:</p>
<p><img src="https://img-blog.csdnimg.cn/img_convert/749a6d606fb41d0517ae38eff3043687.jpeg" alt=""></p>
<p><img src="https://img-blog.csdnimg.cn/img_convert/7ca7abb14597cb6cdd1602bb7d0ae596.jpeg" alt=""></p>
<p>使用<a href="https://www.codersrc.com/archives/17291.html">GPUImageHardLightBlendFilter</a>,效果如下:</p>
<p><img src="https://img-blog.csdnimg.cn/img_convert/3ea681aee23f3fc2292b47d2313e430b.png" alt=""></p>
<h2><a name="t2"></a><a id="_132"></a>三.源码下载</h2>
<p>OpenGL ES Demo 下载地址 : <a href="https://www.codersrc.com/archives/17291.html">IOS OpenGL ES GPUImage 强光混合 GPUImageHardLightBlendFilter</a></p>
<p><img src="https://img-blog.csdnimg.cn/img_convert/7aa125ba59b25ff8bebc17ab1a729ace.png" alt=""></p>
<h2><a name="t3"></a><a id="_138"></a>四.猜你喜欢</h2>
<ol><li><a href="https://www.codersrc.com/archives/15342.html">IOS OPenGL ES 设置图像亮度 GPUImageBrightnessFilter</a></li><li><a href="https://www.codersrc.com/archives/15407.html">IOS OPenGL ES 调节图像曝光度 GPUImageExposureFilter</a></li><li><a href="https://www.codersrc.com/archives/15422.html">IOS OpenGL ES 调节图像对比度 GPUImageContrastFilter</a></li><li><a href="https://www.codersrc.com/archives/15438.html">IOS OPenGL ES 调节图像饱和度 GPUImageSaturationFilter</a></li><li><a href="https://www.codersrc.com/archives/15453.html">IOS OPenGL ES 调节图像伽马线 GPUImageGammaFilter</a></li><li><a href="https://www.codersrc.com/archives/15468.html">IOS OpenGL ES 调节图像反色 GPUImageColorInvertFilter</a></li><li><a href="https://www.codersrc.com/archives/15484.html">IOS OpenGL ES 调节图像褐色 GPUImageSepiaFilter</a></li><li><a href="https://www.codersrc.com/archives/15498.html">IOS OpenGL ES 调节图像灰色 GPUImageGrayscaleFilter</a></li><li><a href="https://www.codersrc.com/archives/15521.html">IOS OpenGL ES 调节图像 RGB 通道 GPUImageRGBFilter</a></li><li><a href="https://www.codersrc.com/archives/15546.html">IOS OpenGL ES 调节图像不透明度 GPUImageOpacityFilter</a></li><li><a href="https://www.codersrc.com/archives/15557.html">IOS OpenGL ES 调节图像阴影 GPUImageHighlightShadowFilter</a></li><li><a href="https://www.codersrc.com/archives/15571.html">IOS OpenGL ES 调节图像色彩替换 GPUImageFalseColorFilter</a></li><li><a href="https://www.codersrc.com/archives/15602.html">GPUImage – 色彩直方图 GPUImageHistogramFilter</a></li><li><a href="https://www.codersrc.com/archives/15609.html">GPUImage – 色彩直方图 GPUImageHistogramGenerator</a></li><li><a href="https://www.codersrc.com/archives/15617.html">GPUImage – 像素平均色值 GPUImageAverageColor</a></li><li><a href="https://www.codersrc.com/archives/15625.html">GPUImage – 亮度平均 GPUImageLuminosity</a></li><li><a href="https://www.codersrc.com/archives/15791.html">IOS OpenGL ES 调节图像色度 GPUImageHueFilter</a></li><li><a href="https://www.codersrc.com/archives/15808.html">IOS OpenGL ES 指定颜色抠图 GPUImageChromaKeyFilter</a></li><li><a href="https://www.codersrc.com/archives/15830.html">IOS OpenGL ES 调节图像白平衡/色温 GPUImageWhiteBalanceFilter</a></li><li><a href="https://www.codersrc.com/archives/15840.html">IOS OpenGL ES 设置图像 lookup 滤镜 GPUImageLookupFilter</a></li><li><a href="https://www.codersrc.com/archives/15861.html">IOS OpenGL ES 设置图像滤镜 GPUImageAmatorkaFilter</a></li><li><a href="https://www.codersrc.com/archives/15909.html">IOS OpenGL ES 设置图像滤镜 GPUImageSoftEleganceFilter</a></li><li><a href="https://www.codersrc.com/archives/16058.html">IOS OpenGL ES 设置图像锐化 GPUImageSharpenFilter</a></li><li><a href="https://www.codersrc.com/archives/16077.html">IOS OpenGL ES 绘制十字 GPUImageCrosshairGenerator</a></li><li><a href="https://www.codersrc.com/archives/15931.html">IOS OpenGL ES 绘制线条 GPUImageLineGenerator</a></li><li><a href="https://www.codersrc.com/archives/16102.html">IOS OpenGL ES 设置图像黑白燥点 GPUImageLocalBinaryPatternFilter</a></li><li><a href="https://www.codersrc.com/archives/16161.html">IOS OpenGL ES 设置图像卡通效果(黑色粗线描边) GPUImageToonFilter</a></li><li><a href="https://www.codersrc.com/archives/16176.html">IOS OpenGL ES 桑原滤波/水粉画模糊效果 GPUImageKuwaharaFilter</a></li><li><a href="https://www.codersrc.com/archives/16191.html">IOS OpenGL ES 黑白马赛克效果 GPUImageMosaicFilter</a></li><li><a href="https://www.codersrc.com/archives/16207.html">IOS OpenGL ES 像素化马赛克效果 GPUImagePixellateFilter</a></li><li><a href="https://www.codersrc.com/archives/16229.html">IOS OpenGL ES 同心圆像素化马赛克效果 GPUImagePolarPixel</a></li><li><a href="https://www.codersrc.com/archives/16257.html">IOS OpenGL ES 黑白网状效果 GPUImageCrosshatchFilter</a></li><li><a href="https://www.codersrc.com/archives/16279.html">IOS OpenGL ES 色彩丢失/模糊效果 GPUImageColorPackingFilter</a></li><li><a href="https://www.codersrc.com/archives/16301.html">IOS OpenGL ES 图像晕影 GPUImageVignetteFilter</a></li><li><a href="https://www.codersrc.com/archives/16311.html">IOS OpenGL ES 图像漩涡 GPUImageSwirlFilter</a></li><li><a href="https://www.codersrc.com/archives/16348.html">IOS OpenGL ES 图像鱼眼扩散效果 GPUImageBulgeDistortionFilter</a></li><li><a href="https://www.codersrc.com/archives/16367.html">IOS OpenGL ES 图像鱼眼移动效果 GPUImageBulgeDistortionFilter</a></li><li><a href="https://www.codersrc.com/archives/16376.html">IOS OpenGL ES 图像凹面镜移动效果 GPUImagePinchDistortionFilter</a></li><li><a href="https://www.codersrc.com/archives/16402.html">IOS OpenGL ES 图像凹面镜放大效果 GPUImagePinchDistortionFilter</a></li><li><a href="https://www.codersrc.com/archives/16389.html">IOS OpenGL ES 图像哈哈镜效果 GPUImageStretchDistortionFilter</a></li><li><a href="https://www.codersrc.com/archives/16427.html">IOS OpenGL ES 图像水晶球效果 GPUImageGlassSphereFilter</a></li><li><a href="https://www.codersrc.com/archives/16440.html">IOS OpenGL ES 图像球形折射 GPUImageSphereRefractionFilter</a></li><li><a href="https://www.codersrc.com/archives/16462.html">IOS OpenGL ES 图像色调分离噪点效果 GPUImagePosterizeFilter</a></li><li><a href="https://www.codersrc.com/archives/16473.html">IOS OpenGL ES 图像 CGA 色彩滤镜 GPUImageCGAColorspaceFilter</a></li><li><a href="https://www.codersrc.com/archives/16497.html">IOS OpenGL ES 图像柏林噪点/花边噪点 GPUImagePerlinNoiseFilter</a></li><li><a href="https://www.codersrc.com/archives/16520.html">IOS OpenGL ES 图像加亮边缘 GPUImage3x3ConvolutionFilter</a></li><li><a href="https://www.codersrc.com/archives/16535.html">IOS OpenGL ES 图像浮雕 3d 效果 GPUImageEmbossFilter</a></li><li><a href="https://www.codersrc.com/archives/16555.html">IOS OpenGL ES 图像马赛克圆点 GPUImagePolkaDotFilter</a></li><li><a href="https://www.codersrc.com/archives/16571.html">IOS OpenGL ES 图像侵蚀边缘黑白模糊 GPUImageErosionFilter</a></li><li><a href="https://www.codersrc.com/archives/16592.html">IOS OpenGL ES 图像侵蚀边缘色彩模糊 GPUImageRGBErosionFilter</a></li><li><a href="https://www.codersrc.com/archives/16620.html">IOS OpenGL ES 图像扩展边缘黑白模糊 GPUImageDilationFilter</a></li><li><a href="https://www.codersrc.com/archives/16645.html">IOS OpenGL ES 图像扩展边缘彩色模糊 GPUImageRGBDilationFilter</a></li><li><a href="https://www.codersrc.com/archives/16674.html">IOS OpenGL ES GPUImage 黑白色调模糊 GPUImageOpeningFilter</a></li><li><a href="https://www.codersrc.com/archives/16686.html">IOS OpenGL ES GPUImage 彩色模糊 GPUImageRGBOpeningFilter</a></li><li><a href="https://www.codersrc.com/archives/16699.html">IOS OpenGL ES GPUImage 图像黑白色调模糊/暗色提亮 GPUImageClosingFilter</a></li><li><a href="https://www.codersrc.com/archives/16708.html">IOS OpenGL ES GPUImage 图像彩色调模糊/暗色提亮 GPUImageRGBClosingFilter</a></li><li><a href="https://www.codersrc.com/archives/16717.html">IOS OpenGL ES GPUImage 图像 Lanczos 重取样模糊效果 GPUImageLanczosResamplingFilter</a></li><li><a href="https://www.codersrc.com/archives/16744.html">IOS OpenGL ES GPUImage 图像显示亮度最高的像素,其他为黑 GPUImageNonMaximumSuppressionFilter</a></li><li><a href="https://www.codersrc.com/archives/16761.html">IOS OpenGL ES GPUImage 图像显示亮度最高的像素,其他为黑 GPUImageThresholdedNonMaximumSuppressionFilter</a></li><li><a href="https://www.codersrc.com/archives/16781.html">IOS OpenGL ES GPUImage 图像 Sobel 边缘检测,类似漫画反色 GPUImageSobelEdgeDetectionFilter</a></li><li><a href="https://www.codersrc.com/archives/16798.html">IOS OpenGL ES GPUImage GPUImageWeakPixelInclusionFilter</a></li><li><a href="https://www.codersrc.com/archives/16809.html">IOS OpenGL ES GPUImage GPUImageDirectionalNonMaximumSuppressionFilter</a></li><li><a href="https://www.codersrc.com/archives/16863.html">IOS OpenGL ES GPUImage 图像阈值边缘检测 GPUImageThresholdEdgeDetectionFilter</a></li><li><a href="https://www.codersrc.com/archives/16877.html">IOS OpenGL ES GPUImage 图像普瑞维特(Prewitt)边缘检测 GPUImagePrewittEdgeDetectionFilter</a></li><li><a href="https://www.codersrc.com/archives/16889.html">IOS OpenGL ES GPUImage 图像 XYDerivative 边缘检测 GPUImageXYDerivativeFilter</a></li><li><a href="https://www.codersrc.com/archives/17079.html">IOS OpenGL ES GPUImage 图像阀值素描,形成有噪点的素描 GPUImageThresholdSketchFilter</a></li><li><a href="https://www.codersrc.com/archives/17093.html">IOS OpenGL ES GPUImage 图像阴影和深度效果 GPUImageMultiplyBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17105.html">IOS OpenGL ES GPUImage 图像混合 GPUImageNormalBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17121.html">IOS OpenGL ES GPUImage 图像透明混合 GPUImageAlphaBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17133.html">IOS OpenGL ES GPUImage 图像溶解 GPUImageDissolveBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17142.html">IOS OpenGL ES GPUImage 图像叠加 GPUImageOverlayBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17153.html">IOS OpenGL ES GPUImage 图像加深混合 GPUImageDarkenBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17162.html">IOS OpenGL ES GPUImage 图像减淡混合 GPUImageLightenBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17171.html">IOS OpenGL ES GPUImage 图像源混合 GPUImageSourceOverBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17180.html">IOS OpenGL ES GPUImage 图像平移 GPUImageTransformFilter</a></li><li><a href="https://www.codersrc.com/archives/17193.html">IOS OpenGL ES GPUImage 图像缩放 GPUImageTransformFilter</a></li><li><a href="https://www.codersrc.com/archives/17201.html">IOS OpenGL ES GPUImage 图像旋转 GPUImageTransformFilter</a></li><li><a href="https://www.codersrc.com/archives/17211.html">IOS OpenGL ES GPUImage 图像镜像 GPUImageTransformFilter</a></li><li><a href="https://www.codersrc.com/archives/17222.html">IOS OpenGL ES GPUImage 色彩加深混合 GPUImageColorBurnBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17230.html">IOS OpenGL ES GPUImage 色彩减淡混合 GPUImageColorDodgeBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17250.html">IOS OpenGL ES GPUImage 滤色混合 GPUImageScreenBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17261.html">IOS OpenGL ES GPUImage 排除混合 GPUImageExclusionBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17270.html">IOS OpenGL ES GPUImage 差值混合 GPUImageDifferenceBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17282.html">IOS OpenGL ES GPUImage 减法混合 GPUImageSubtractBlendFilter</a></li><li><a href="https://www.codersrc.com/archives/17291.html">IOS OpenGL ES GPUImage 强光混合 GPUImageHardLightBlendFilter</a></li></ol>
</div>

本文由博客 - 猿说编程 猿说编程 发布!

上一篇下一篇

猜你喜欢

热点阅读