OpenGL ES Shader相关API 总结【0】——获取绘制信息

获取绘制信息

======================

EGL的API作用分类:

用于与手机关联并获取手机支持的配置信息
用于根据需要生成手机支持的surface和context,并对surface和context进行关联
用于指定使用哪个版本的OpenGL ES,并与OpenGL ES建立关联
用于操作EGL上纹理,以及与多线程相关的高级功能
其他用处

常用API如下:

1.
EGLint eglGetError(void);
功能:用于返回当前thread,如果EGL的API出错的话,最近一个错误所对应的错误代码
输出:错误代码

2.
EGLDsiplay eglGetDisplay(EGLNativeDisplayType display_id);
功能:从EGL运行的操作系统中获取一个Display(获取手机屏幕)
输入:从操作系统中,得知的Display的ID
输出:用于显示图片绘制的Display

3.
EGLBoolean eglInitalize(EGLDisplay dpy, EGLint *major, EGLint *minor);
功能:针对某display初始化一个某版本的EGL
输入:使用Display的handle特指某个Display,major和minor共同用于指定EGL的版本
输出:EGL初始化成功或者失败

4.
EGLBoolean eglGetConfigs(EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config)
功能:获取某display支持的配置信息
输入:display的handle,一个用于保存配置信息的指针,指针中存放的配置信息的数量,某display支持的配置信息数量
输出:配置信息获取成功或者失败

5.
EGLBoolean eglChooseConfig(EGLDisplay dpy, const EGLint * attrib_list, EGLConfig* configs, ELGint config_size, EGLint * num_config)
功能:获取与需求匹配,且某display支持的配置信息(根据开发者的需要,获取一种手机支持的buffer格式)
输入:display的handle,用于匹配使用的需求信息,一个用于保存匹配信息的指针,指针中存放的配置信息的数量,匹配配置信息的数量
输出:匹配的配置信息获取成功或者失败

6.
EGLSurface eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list);
功能:创建一个可以显示在屏幕上的rendering surface(根据获取的格式,创建handle,用于包含手机系统提供的绘制所需的buffer)
输入:display的handle,用于创建surface的配置信息,窗口信息的handle,额外的需求信息
输出:创建的rendering surface的handle

7. 
EGLBoolean eglBindAPI(EGLenum api)
功能:设置当前thread的绘制API(用于指定使用的绘制语言:EGL_OPENGL_ES_API)
输入:支持的绘制API
输出:API设置成功或者失败

8.
EGLContext eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext share_context, const EGLint* attrib_list)
功能:针对当前的绘制API创建一个rendering context(创建调色板,用于保存状态集)
输入:display的handle,用于创建context的配置信息,指定一个context使得创建的context与其share,额外的需求信息
输出:创建的rendering context的handle

9.
EGLBoolean eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx)
功能:将指定的context绑定到当前thread以及读和写的surface上(将创建的surface和context启动)
输入:display的handle,用于写入的surface,用于读取的surface,指定的context
输出:创建的rendering context的handle

10.
EGLBoolean eglSwapBuffers(EGLDisplay dpy, EGLSurface surface)
功能:将surface中的color buffer显示到屏幕上(用于将绘制完毕的buffer与手机屏幕上显示的buffer进行交换)
输入:display的handle,将会被展示的surface
输出:显示成功或者失败

11.
EGLBoolean eglTerminate(EGLDisplay dpy)
功能:将某display对应的EGL相关的资源释放
输入:使用Display的handle特指某个display
输出:释放EGL相关资源成功或者失败




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ShaderJoy

您的打赏是我继续写博客的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值