首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

OpenGL ES - 获取当前的 blendFunc

您好!OpenGL ES 是一种用于嵌入式系统和移动设备的轻量级、高效的图形 API。它是 OpenGL 的子集,主要用于 2D 和 3D 图形渲染。

在 OpenGL ES 中,blendFunc 是一个非常重要的函数,它用于设置混合因子,以控制源像素和目标像素在混合时的行为。blendFunc 函数接受两个参数,分别表示源像素和目标像素的混合因子。

以下是 blendFunc 函数的两个参数:

  • sfactor:源像素的混合因子。
  • dfactor:目标像素的混合因子。

在 OpenGL ES 中,有很多种不同的混合因子可以使用,例如:

  • GL_ZERO:表示使用 0 作为混合因子。
  • GL_ONE:表示使用 1 作为混合因子。
  • GL_SRC_COLOR:表示使用源像素的颜色作为混合因子。
  • GL_ONE_MINUS_SRC_COLOR:表示使用 1 减去源像素的颜色作为混合因子。
  • GL_DST_COLOR:表示使用目标像素的颜色作为混合因子。
  • GL_ONE_MINUS_DST_COLOR:表示使用 1 减去目标像素的颜色作为混合因子。
  • GL_SRC_ALPHA:表示使用源像素的 alpha 值作为混合因子。
  • GL_ONE_MINUS_SRC_ALPHA:表示使用 1 减去源像素的 alpha 值作为混合因子。
  • GL_DST_ALPHA:表示使用目标像素的 alpha 值作为混合因子。
  • GL_ONE_MINUS_DST_ALPHA:表示使用 1 减去目标像素的 alpha 值作为混合因子。
  • GL_CONSTANT_COLOR:表示使用常量颜色作为混合因子。
  • GL_ONE_MINUS_CONSTANT_COLOR:表示使用 1 减去常量颜色作为混合因子。
  • GL_CONSTANT_ALPHA:表示使用常量 alpha 值作为混合因子。
  • GL_ONE_MINUS_CONSTANT_ALPHA:表示使用 1 减去常量 alpha 值作为混合因子。

在 OpenGL ES 中,blendFunc 函数的使用方法如下:

代码语言:c
复制
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

这里,我们首先使用 glEnable 函数启用混合功能,然后使用 glBlendFunc 函数设置源像素和目标像素的混合因子。在这个例子中,我们使用 GL_SRC_ALPHAGL_ONE_MINUS_SRC_ALPHA 作为混合因子。

总之,blendFunc 函数在 OpenGL ES 中非常重要,它可以帮助您实现各种各样的混合效果。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

OpenGL ES实践教程(六)全景视频获取焦点

教程 OpenGL ES实践教程1-Demo01-AVPlayer OpenGL ES实践教程2-Demo02-摄像头采集数据和渲染 OpenGL ES实践教程3-Demo03-Mirror OpenGL...ES实践教程4-Demo04-VR全景视频播放 OpenGL ES实践教程5-Demo05-多重纹理实现图像混合 其他教程请移步OpenGL ES文集。...,需要不断重绘);最后,glReadPixel是同步操作,对性能有较大影响; 方案3是较为合理实现方案,仅需要CPU进行少量浮点变化运算,不需要外设和离屏渲染; 本文在OpenGL ES实践教程...核心思路 通过计算全景球面上点经过旋转投影后位置,来确定当前焦点是否停留在按钮上。...具体细节 先把OpenGL ES实践教程4-Demo04-VR全景视频播放工程拖过来。

1.5K50

python获取当前系统日期_python怎么获取当前系统时间

python获取当前系统时间,包括年月日,时分秒,主要通过Python中datetime模块来实现。 下面我们就通过具体代码示例,给大家详细介绍Python获取当前时间日期实现方法。...代码示例如下:import datetime now = datetime.datetime.now() print (“当前系统日期和时间是: “) print (now.strftime(“%Y-%...m-%d %H:%M:%S”)) 获取当前系统时间,结果如下所示: Python datetime: datetime模块提供了以简单和复杂方式操作日期和时间类。...now(tz=None)返回当前本地日期和时间。如果可选参数tz没有指定,与today()一样。 strftime(format)返回一个表示日期字符串,由显式格式字符串控制。...引用小时、分钟或秒格式代码将看到0值。 本篇文章就是关于Python获取当前系统时间及日期方法介绍,也很简单易懂,希望对需要朋友有所帮助!

6.1K90

基于OpenGL ES深度学习框架编写

可实时 跟PC或服务器不同,移动设备上GPU可不一定有CPU强悍(多线程+neon/vfp),但在需要实时计算场景(主要是相机预览和视频播放),往往都是基于OpenGL渲染环境。...对每一帧相机预览产生数据,系统将其映射为opengl 一个external texture,然后需要 计算出一个 mask texture,与原先texture作混合,显示出来。...使用GPU加速有如下一些方案: CUDA、OpenCL、OpenGLES)、RenderScript、Metal CUDA只适用到NVIDIAGPU,Metal只适用于apple系列,这两个对...RenderScript 这个坑比较多,文档极少,而且会有跟OpenCL一样需要跟OpenGL同步问题,不做考虑。...最后就只剩下 OpenGL ES,为了开发方便,用 Computer shader 实现,尽管会有一定兼容性牺牲(Android 5.1 及以上,GPU支持openGLES 3.1),但考虑到下面两点是值得

2.5K91

mysql 获取当前时间戳

大家好,又见面了,我是你们朋友全栈君。...1.获取系统当前时间,类型:timestamp 格式yyyy-MM-dd HH:mm:ss select NOW(),CURRENT_TIMESTAMP(),SYSDATE(); 结果: 三者基本没有区别...,稍微一点区别在于:NOW(),CURRENT_TIMESTAMP()都表示SQL开始执行时间;SYSDATE()表示执行此SQL时的当前时间 select NOW(),CURRENT_TIMESTAMP...CURRENT_TIMESTAMP(),SYSDATE(); 结果:sleep(2)表示等待2s再执行,从结果可以看出SYSDATE在中断前后则相差了2秒;NOW(),CURRENT_TIMESTAMP()完全没区别 2.获取系统当前时间时间戳...,就是去掉上面中间小数点,可以借助replace函数 replace函数用法:replace(object, search,replace),简单解释就是:把object中出现search全部替换为

8K30

Hibernate获取当前Session,Hibernate清空当前Session缓存

---- 先从网上盗张图,来看下Hibernate三种状态以及生命周期。 ? ---- 需求情景: 每次update时,都要记录更新了什么字段,由什么值更新为什么值。...所以使用是Aop,在@around方法中,joinPoint.proceed()之前,运用方法反射查询下数据库得到objectOld;joinPoint.proceed()之后,再运用方法反射查询下数据库得到...但是,因为每次update之前都会get一个model,因为get()方法得到是 持久化状态 。所以这样就不容易得到update之前值。...我做法是,在joinPoint.proceed()之前,运用方法反射查询下数据库得到objectNew,因为此时对model修改,已经跟进到了持久化状态;然后执行evict()方法,将objectNew...不然的话,会报同一个session里包含两个同一标识不同model异常。 ---- sessionFactory.getCurrentSession().evict(object)

2.3K10

java获取当前时间戳方法

大家好,我是架构君,一个会写代码吟诗架构师。今天说一说java获取当前时间戳方法[通俗易懂],希望能够帮助大家进步!!!...获取当前时间戳 //方法 一 System.currentTimeMillis(); //方法 二 Calendar.getInstance().getTimeInMillis(); //方法 三 new...Date().getTime(); 获取当前时间 此代码由Java架构师必看网-架构君整理 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd...HH:mm:ss");//设置日期格式 String date = df.format(new Date());// new Date()为获取当前系统时间,也可使用当前时间戳 获取时间戳三种方法执行效率比较...} } 执行结果: 133 2372 137 Calendar.getInstance().getTimeInMillis() 这种方式速度最慢,这是因为Canlendar要处理时区问题会耗费较多时间

6K20
领券