evo

自强不息,厚德载物 ii Making others better! Making life better ^_^

【OpenGL ES】同步对象和栅栏

OpenGL ES 3.0为客户-服务器模型,客户即应用程序,发送命令,服务器即OpenGL ES实现,处理命令,因为针对的是手持和嵌入平台,所以客户和服务器通常在同一个设备上。在客户-服务器模型中,一个常见的问题是,客户如何发送命令,每次发送一个命令还是缓存后批量发送,服务器如何处理命令,同步等...

2017-12-21 17:05:25

阅读数:982

评论数:0

【OpenGL ES】帧缓冲区对象FBO

1、FBO使用OpenGL ES,一般要通过EGL来配置本地窗口系统,关于EGL的介绍可参照“【OpenGL ES】EGL简介”http://blog.csdn.net/ieearth/article/details/71180457。默认情况下,OpenGL ES使用窗口系统提供的帧缓冲区作为绘...

2017-12-21 15:41:12

阅读数:971

评论数:0

【OpenGL ES】片段操作

在OpenGL ES 3.0的可编程管线中,片段操作在片断着色器之后,下一步是帧缓冲区。片段着色器执行之后,片断着色器的输出是片段的颜色和深度值,片段在前往帧缓冲区途中经历的测试和操作包括裁剪区域测试、模板缓冲区测试、深度缓冲区测试、混合、抖动,下面逐个介绍。1、缓冲区缓冲区包括颜色缓冲区、深度缓...

2017-12-20 16:26:31

阅读数:516

评论数:0

【OpenGL ES】片段着色器

1、管线片段着色器在OpenGL ES 3.0的可编程管线的位置如下图所示。 2、输入输出片段着色器为片段操作提供了通用功能的可编程方法,输入和输出如下图所示。 输入或者可变值,in,是顶点着色器生成的插值数据,顶点着色器输出跨图元进行插值,并作为输入传递给片段着色器。 统一变量,unifo...

2017-12-19 21:12:42

阅读数:819

评论数:0

【OpenGL ES】纹理

1、2D纹理2D纹理是OpenGL ES中最基本和最常用的纹理形式,它是一个图像数据的二维数组,纹理坐标(s, t)或(u, v)用作纹理图像中的索引,代表用于查找一个纹理贴图的规范化坐标。纹理图像的左下角由st坐标(0.0, 0.0)指定,右上角由坐标(1.0, 1.0)指定,在[0.0, 1....

2017-12-19 17:27:17

阅读数:927

评论数:0

【OpenGL ES】顶点着色器

1、输入输出顶点着色器可用于传统的基于顶点操作,例如通过矩阵变换位置、计算照明方程式以生成逐顶点的颜色以及生成或者变换纹理坐标。顶点着色器的输入、输出如下图所示。输入变量或属性:用顶点数组提供的逐顶点数据。 统一变量和统一变量缓冲区:顶点着色器使用的不变数据。 采样器:代表顶点着色器使用的纹理...

2017-10-24 20:36:54

阅读数:1238

评论数:0

【QT】float double的范围与精度及Qt中的qfloat16

1、格式float和double都是浮点数据类型,前者为单精度占四个字节,后者为双精度占八个字节。浮点数的存储格式采用IEEE标准,float包括1个符号位、8个指数位和23个尾数位,double包括1个符号位、11个指数位和52个尾数位,其中符号位表示正负,为1时表示负数,为0时表示正数。2、范...

2017-08-25 18:12:37

阅读数:3598

评论数:0

【QT】QApplication简介

1、QApplicationQApplication类管理GUI程序的控制流和主要设置,是基于QWidget的,为此特化了QGuiApplication的一些功能,处理QWidget特有的初始化和结束收尾工作。 对于使用了Qt的任何GUI程序来说,不管何时何地有多少个Window,但只有一个QA...

2017-08-16 19:34:16

阅读数:5134

评论数:0

【QT】QObject简介

1、简介QObject类是所有Qt对象的基类,是Qt对象模型的核心,这个模型的主要特征为信号与槽,信号与槽是一个非常重要的机制,用于对象间的通信。连接信号与槽使用connect()函数,断开连接使用disconnect()函数,blockSignals()函数可以临时屏蔽信号,避免循环不断的通知,...

2017-08-16 19:33:26

阅读数:1175

评论数:0

【QT】Qt QFlags源码分析

QFlags是个模板类,目的是提供类型安全的enum,在头文件qflags.h中定义,传统上C++使用int或uint存储enum值,却没有作类型检查。1、QFlagQFlag是一个基础类,还用到了QTypeInfo类,定义如下:// 在C++11中Q_DECL_CONSTEXPR为constex...

2017-08-09 18:37:15

阅读数:1474

评论数:0

【QT】Qt对大小端字节序的处理

1、Endian Order什么是大小端字节序(Endian Order)?以四字节十六进制整型数0x12345678为例,按照书写习惯,从左到右,高位在前,低位在后,我们称0x12为最高有效字节,0x78为最低有效字节,在存储这个数字时,需要四字节的地址空间,比如说从0x00到0x03,地址空间...

2017-08-09 18:36:14

阅读数:2542

评论数:0

【QT】Qt Compiler Detection(编译)

1、Compiler&GNUQt是跨平台的,从下面的编译配置选项(宏)中可以看出Qt支持的编译环境。// qcompilerdetection.h /* The compiler, must be one of: (Q_CC_x) SYM - Digital...

2017-08-08 18:22:27

阅读数:1591

评论数:0

【QT】Qt 5.9 QWidget程序执行过程分析

一个最简单的QWidget程序可能是下面这个样子:int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget w; w.show(); return a.exec(); }首先是QAppl...

2017-08-08 12:30:44

阅读数:1446

评论数:0

【QT】QPA

1、QPAQPA即Qt Platform Abstraction,是Qt5里面的平台抽象层,用以取代Qt for Embedded Linux以及Qt4中的平台接口。QPA插件通过定义QPlatform开头的一系列类的子类实现,其中有两个根类,QPlatformIntegration和QPlatf...

2017-07-28 17:56:18

阅读数:2533

评论数:0

【QT】Qt for Embedded Linux Hardware Accelerated Graphics

1、硬件加速在嵌入式设备上设计应用程序时,通常要在图形特效与性能之间作出选择,不过在大多数设备上由于硬件特性,以及越来越多的设备上硬件能够很好地支持图形操作,可能不必担心这个问题。使用图形加速,不仅可以使用动态图形特效,还有其它两方面好处。一方面,图形硬件加速比CPU的电源使用率更高,当完成同样的...

2017-07-05 21:58:36

阅读数:902

评论数:0

【QT】Qt for Embedded Linux Architecture

1、简介Qt for Embedded Linux(Qt4.8),是用于嵌入式设备(Linux)的开发GUI和应用程序的C++框架,提供了一个轻量级的窗口系统(QWS)以及标准的Qt API,基本架构如下图所示。Qt for Embedded Linux程序直接向Framebuffer写数据,Fr...

2017-07-05 21:56:52

阅读数:1233

评论数:0

【QT】深入qt信号与槽实现原理

1、先上示例代码先上示例代码直观地感受一下qt信号与槽的用法,后面再详细解释。通过QtCreator创建一个Qt Widget工程(没有创建ui文件,其它选项为默认值),工程名为SS,最后在SS目录下会生成5个文件:main.cpp、mainwindow.cpp、mainwindow.h、SS.p...

2017-07-01 05:19:38

阅读数:5022

评论数:1

【Wayland】初识Wayland(X、Mir)

【声明】下图copy自wikipedia,如有侵权请告知。在介绍Wayland之前,先熟悉一下X与Mir,简单来说,同样作为显示服务,X是一个老派的庞然大物,Wayland是一颗节节高的芝麻,Mir是一个颇受争议的新秀,其它的显示服务还包括Android的SurfaceFlinger,MacOS家...

2017-05-28 09:41:04

阅读数:5717

评论数:0

【QT】Qt版本史

【Qt】https://www.qt.io/ 【Qt Developer】https://developer.android.com/index.html1、Qt 11995年5月20日,第一个公开发行的预览版,版本0.90。 1996年5月,版本0.97。 1996年9月24日,第一个稳定...

2017-05-28 05:46:12

阅读数:1833

评论数:0

【OpenGL ES】图元装配与光栅化

OpenGL ES 3.0支持三种基本图元,三角形、直线和点,它们由一组表示顶点位置的顶点描述,其它如颜色、纹理坐标和几何法线等也作为通用属性与每个顶点关联。1、三角形三角形有三种类型,GL_TRIANGLES用于绘制一系列单独的三角形,GL_TRIANGLE_STRIPE用于绘制一系列相互连接的...

2017-05-27 09:26:51

阅读数:2459

评论数:0

提示
确定要删除当前文章?
取消 删除