真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

IOS – OpenGL ES 調(diào)節(jié)圖像陰影 GPUImageHighlightShadowFilter

目錄

創(chuàng)新互聯(lián)長期為千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為東洲企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、做網(wǎng)站,東洲網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

  • 一.簡介
  • 二.效果演示
  • 三.源碼下載
  • 四.猜你喜歡

零基礎(chǔ) OpenGL (ES) 學(xué)習(xí)路線推薦 : OpenGL (ES) 學(xué)習(xí)目錄 >> OpenGL ES 基礎(chǔ)

零基礎(chǔ) OpenGL (ES) 學(xué)習(xí)路線推薦 : OpenGL (ES) 學(xué)習(xí)目錄 >> OpenGL ES 轉(zhuǎn)場

零基礎(chǔ) OpenGL (ES) 學(xué)習(xí)路線推薦 : OpenGL (ES) 學(xué)習(xí)目錄 >> OpenGL ES 特效

零基礎(chǔ) OpenGL (ES) 學(xué)習(xí)路線推薦 : OpenGL (ES) 學(xué)習(xí)目錄 >> OpenGL ES 函數(shù)

零基礎(chǔ) OpenGL (ES) 學(xué)習(xí)路線推薦 : OpenGL (ES) 學(xué)習(xí)目錄 >> OpenGL ES GPUImage 使用

零基礎(chǔ) OpenGL (ES) 學(xué)習(xí)路線推薦 : OpenGL (ES) 學(xué)習(xí)目錄 >> OpenGL ES GLSL 編程

一.簡介

GPUImage 共 125 個濾鏡, 分為四類

1、Color adjustments : 31 filters , 顏色處理相關(guān)
2、Image processing : 40 filters , 圖像處理相關(guān).
3、Blending modes : 29 filters , 混合模式相關(guān).
4、Visual effects : 25 filters , 視覺效果相關(guān).

GPUImageHighlightShadowFilter 屬于 GPUImage 顏色處理相關(guān),用來處理圖片陰影,shader 源碼如下:

/******************************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:IOS – OpenGL ES 調(diào)節(jié)圖像陰影 GPUImageHighlightShadowFilter
//@Time:2022/03/17 07:30
//@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!
/******************************************************************************************/


#if TARGET_IPHONE_SIMULATOR || TARGET_OS_IPHONE
NSString *const kGPUImageHighlightShadowFragmentShaderString = SHADER_STRING
(
uniform sampler2D inputImageTexture;
varying highp vec2 textureCoordinate;

uniform lowp float shadows;
uniform lowp float highlights;

const mediump vec3 luminanceWeighting = vec3(0.3, 0.3, 0.3);

void main()
{
	lowp vec4 source = texture2D(inputImageTexture, textureCoordinate);
	mediump float luminance = dot(source.rgb, luminanceWeighting);

	mediump float shadow = clamp((pow(luminance, 1.0/(shadows+1.0)) + (-0.76)*pow(luminance, 2.0/(shadows+1.0))) - luminance, 0.0, 1.0);
	mediump float highlight = clamp((1.0 - (pow(1.0-luminance, 1.0/(2.0-highlights)) + (-0.8)*pow(1.0-luminance, 2.0/(2.0-highlights)))) - luminance, -1.0, 0.0);
	lowp vec3 result = vec3(0.0, 0.0, 0.0) + ((luminance + shadow + highlight) - 0.0) * ((source.rgb - vec3(0.0, 0.0, 0.0))/(luminance - 0.0));

	gl_FragColor = vec4(result.rgb, source.a);
}
);
#else
NSString *const kGPUImageHighlightShadowFragmentShaderString = SHADER_STRING
(
 uniform sampler2D inputImageTexture;
 varying vec2 textureCoordinate;

 uniform float shadows;
 uniform float highlights;

 const vec3 luminanceWeighting = vec3(0.3, 0.3, 0.3);

 void main()
 {
	vec4 source = texture2D(inputImageTexture, textureCoordinate);
	float luminance = dot(source.rgb, luminanceWeighting);

	float shadow = clamp((pow(luminance, 1.0/(shadows+1.0)) + (-0.76)*pow(luminance, 2.0/(shadows+1.0))) - luminance, 0.0, 1.0);
	float highlight = clamp((1.0 - (pow(1.0-luminance, 1.0/(2.0-highlights)) + (-0.8)*pow(1.0-luminance, 2.0/(2.0-highlights)))) - luminance, -1.0, 0.0);
	vec3 result = vec3(0.0, 0.0, 0.0) + ((luminance + shadow + highlight) - 0.0) * ((source.rgb - vec3(0.0, 0.0, 0.0))/(luminance - 0.0));

	gl_FragColor = vec4(result.rgb, source.a);
 }
);
#endif

二.效果演示

三.源碼下載

下載地址 : IOS – OpenGL ES 調(diào)節(jié)圖像陰影 GPUImageHighlightShadowFilter

四.猜你喜歡

  • IOS – OPenGL ES 設(shè)置圖像亮度 GPUImageBrightnessFilter
  • IOS – OPenGL ES 調(diào)節(jié)圖像曝光度 GPUImageExposureFilter
  • IOS – OpenGL ES 調(diào)節(jié)圖像對比度 GPUImageContrastFilter
  • IOS – OPenGL ES 調(diào)節(jié)圖像飽和度 GPUImageSaturationFilter
  • IOS – OPenGL ES 調(diào)節(jié)圖像伽馬線 GPUImageGammaFilter
  • IOS – OpenGL ES 調(diào)節(jié)圖像反色 GPUImageColorInvertFilter
  • IOS – OpenGL ES 調(diào)節(jié)圖像褐色 GPUImageSepiaFilter
  • IOS – OpenGL ES 調(diào)節(jié)圖像灰色 GPUImageGrayscaleFilter
  • IOS – OpenGL ES 調(diào)節(jié)圖像 RGB 通道 GPUImageRGBFilter
  • IOS – OpenGL ES 調(diào)節(jié)圖像不透明度 GPUImageOpacityFilter
  • IOS – OpenGL ES 調(diào)節(jié)圖像陰影 GPUImageHighlightShadowFilter

本文由博客 - 猿說編程 猿說編程 發(fā)布!


文章標(biāo)題:IOS – OpenGL ES 調(diào)節(jié)圖像陰影 GPUImageHighlightShadowFilter
文章鏈接:http://weahome.cn/article/dsoijgg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部