草庐IT

GPUImage – 纯色 GPUImageSolidColorGenerator

猿说编程 2023-03-28 原文

目录

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录  >> OpenGL ES 基础

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 转场

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 特效

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 函数

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES GPUImage 使用

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES GLSL 编程

一.简介

GPUImage  共 125 个滤镜, 分为四类

1、Color adjustments : 31 filters , 颜色处理相关
2、Image processing : 40 filters , 图像处理相关.
3、Blending modes : 29 filters , 混合模式相关.
4、Visual effects : 25 filters , 视觉效果相关.

GPUImageSolidColorGenerator  属于 GPUImage 颜色处理相关,用来处理图片纯色;

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:GPUImage – 纯色 GPUImageSolidColorGenerator
//@Time:2022/03/28 07:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/

#if TARGET_IPHONE_SIMULATOR || TARGET_OS_IPHONE
NSString *const kGPUSolidColorFragmentShaderString = SHADER_STRING
(
 precision lowp float;

 varying highp vec2 textureCoordinate;
 uniform sampler2D inputImageTexture;
 uniform vec4 color;
 uniform float useExistingAlpha;

 void main()
 {
     lowp vec4 textureColor = texture2D(inputImageTexture, textureCoordinate);
     gl_FragColor = vec4(color.rgb, max(textureColor.a, 1.0 - useExistingAlpha));
 }
 );
#else
NSString *const kGPUSolidColorFragmentShaderString = SHADER_STRING
(
 varying vec2 textureCoordinate;
 uniform sampler2D inputImageTexture;
 uniform vec4 color;
 uniform float useExistingAlpha;

 void main()
 {
     vec4 textureColor = texture2D(inputImageTexture, textureCoordinate);
     gl_FragColor = vec4(color.rgb, max(textureColor.a, 1.0 - useExistingAlpha));
 }
 );
#endif

二.猜你喜欢

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

有关GPUImage – 纯色 GPUImageSolidColorGenerator的更多相关文章

  1. javascript - 如何在 Angular 图表条形图中使用纯色条 - 2

    我正在使用angular-chart(基于chart.js)创建一些条形图,但无法获得我想要的条形样式。我希望条形图是这样的纯色:但我不知道如何摆脱chart.js默认添加的alpha:我的html看起来像这样:和javascript:angular.module('myApp',['chart.js']).controller('myController',[function(){varctrl=this;ctrl.socialChart={options:{legend:{display:true}},labels:['2012'],series:['FACEBOOK','GOOG

  2. javascript - 使用 KendoUI 折线图,如何使数据标记(点)成为纯色? - 2

    我正在使用KendoUI替换现有图表。我需要尽量减少图表之间的变化。有谁知道如何使折线图上的点变为实线?有没有可能把线做得更细?这是我的图表图片:如果你想玩的话,这是我的jsFiddle项目:http://jsfiddle.net/rodneyhickman/uMTnh/2/我的html看起来像:我的jQuery脚本看起来像:jQuery('#chart').kendoChart({title:{text:"OverallScoreoutof100",align:"left",font:"18pxArial,Verdana,sans-serif",color:"#444"},serie

  3. windows - 如何找出用于 Windows 壁纸的纯色? - 2

    我知道如何从注册表中检索壁纸:HKEY_CURRENT_USER\ControlPanel\Desktop\Wallpaper但如果用户选择使用纯色作为墙纸,我该如何检索该特定颜色呢? 最佳答案 您可以从中检索它HKEY_CURRENT_USER\ControlPanel\Colors\Background它是一个包含以空格分隔的元组“RGB”的字符串,例如“25500”代表红色,“2551020”代表橙色。参见here有关使用C#、C++、F#和VB.NET获取注册表值的信息。以及下面的Powershell示例#PowerShel

  4. javascript - 如何为 flot 中的条形图赋予纯色 - 2

    我需要为条形图提供纯色...我已点击此链接BarchartExample但是我想给纯色而且我还需要自己改变颜色...怎么办... 最佳答案 首先,阅读API.txt,它回答了你所有的问题。那么你需要做两件事。当您指定需要条形时,设置fill:1,它告诉flot使颜色100%不透明。要为每个系列指定一种颜色,只需将color:'red'添加到每个数据对象即可。所以你最终得到了这样一个数据对象:vardata=[{label:'foo',color:'red',data:[[1,300],[2,300],[3,300],[4,300],

  5. ios - GPUImage:取消 GPUImageMovieWriter - 2

    在运行startRecording和startProcessing之后,有什么方法可以取消/停止GPUImageMovieWriter和GPUImageMovie吗? 最佳答案 最近,GPUImageMovie中添加了一个新方法,允许取消对视频文件的处理:-(void)cancelProcessing;这将允许您有效地取消对视频的处理,不再处理更多的帧。请考虑到您的GPUImageMovieWriter的completionBlock无论如何都会被调用,因此您应该有某种标志来检查调用该block是为了成功完成还是通过取消。下面是一些

  6. ios - 如何使用 GPUImage 压缩视频 - 2

    我正在使用GPUImage通过GPUImage裁剪过滤器裁剪现有视频。当前正在导出一个5秒的视频,大小为3.5MB@320x320。我需要将其压缩到1MB以下,但我不确定如何使用GPUImage来压缩视频。 最佳答案 我发现了这个更新:https://github.com/BradLarson/GPUImage/pull/310有一个接受输出设置字典的初始化器-(id)initWithMovieURL:(NSURL*)newMovieURLsize:(CGSize)newSizefileType:(NSString*)newFile

  7. ios - GPUImage 可用于 iOS 8 吗? - 2

    我在iOS8中收到一条关于GPUImage的错误消息,但它在iOS7中工作正常,所以有人知道GPUImage是否可用于iOS8吗?出现这个错误:Debug-iphoneos/libGPUImage.afile'/Users/xyz/Desktop/mno/project1/Latest/projectDemo/ExternalLibrary/build/Debug-iphoneos/libGPUImage.a'forarchitecturearmv7sclang:error:linkercommandfailedwithexitcode1(use-vtoseeinvocation)

  8. ios - iOS 中的 GPUImage 二值化 - 2

    我正在尝试使用GPUImage技术进行图像二值化。我写了这几行代码,其中“图像”是灰度图像GPUImagePicture*imageSource=[[GPUImagePicturealloc]initWithImage:image];GPUImageAdaptiveThresholdFilter*stillImageFilter=[[GPUImageAdaptiveThresholdFilteralloc]init];stillImageFilter.blurRadiusInPixels=3.0;[imageSourceaddTarget:stillImageFilter];[imag

  9. ios - GPUImage GroupFilter、亮度和对比度 iOS - 2

    我在我的应用程序中使用GPUImage,但我一直在尝试更改图像的亮度和对比度。我创建了一个带有源图片的GPUImageView,并设置了将使用UISlider修改的亮度滤镜和对比度滤镜这是我的代码:首先.h__weakIBOutletGPUImageView*imageView;.mGPUImagePicture*sourcePicture;GPUImageBrightnessFilter*brightnessFilter;GPUImageContrastFilter*contrastFilter;当我的ViewController加载后,我做下一件事:UIImage*image="[

  10. ios - 使用 UISlider 应用 GPUImage 过滤器 - 2

    我正在使用GPUImage过滤器创建一个简单的图像亮度、对比度和饱和度调整工具。该View有一个ImageView和每个过滤器的3个slider。起初我以为我会在每个slider的值发生变化时应用每个过滤器,但后来我意识到必须链接过滤器。所以我写了下面的代码。此代码的问题在于仅将亮度滤镜应用于图像。-(IBAction)brightnessSlider:(UISlider*)sender{brightnessValue=sender.value;UIImage*inputImage=[UIImageimageNamed:@"2.jpg"];GPUImagePicture*stillIm

随机推荐