没有合适的资源?快使用搜索试试~ 我知道了~
OPENGL ES 3.0编程指南 原书第2版 中文版 笔记1
需积分: 0 16 下载量 166 浏览量
2022-08-08
21:45:36
上传
评论
收藏 143KB DOCX 举报
温馨提示
试读
10页
2.窗口:esCreateWindow( esContext, ”test”, 320, 240, ES_WINDOW_RGB) 3.编译加载着色器: glCr
资源推荐
资源详情
资源评论
整个简略过程:
1.controller 中:
self.context = [[EAGLContext alloc]
initWithAPI:kEAGLRenderingAPIOpenGLES3]; GLKView *view = (GLKView
*)self.view; view.context = self.context;
2.窗口:esCreateWindow( esContext, ”test”, 320, 240, ES_WINDOW_RGB); 绘制/
回调: esRegisterDrawFunc(esContext, Draw);
3. 编 译 加 载 着 色 器 : glCreateShader(GL_VERTEX_SHADER); glShaderSource
(shader,1,&shaderSrc,NULL); glCompileShader(shader); glGetShaderiv(shader,
GL_COMPILE_STATUS, &complied);
4.创建程序连接着色器: programObject = glCreateProgram(); glAttachShader
(programObject, vertexShader); glLinkProgram(programObject);
5.在 Draw 函数中:
glviewport;
在每个帧的开始 glClear(GL_COLOR_BUFFER_BIT)清除颜色缓冲区, 清除颜色由
glClearColor 指定;
glUseProgram (programObject);
将 数 据 加 载 到 顶 点 属 性 0: glVertexAttribPointer(0,3,GL_FLOAT,GL_FALSE,0,
vVertices);
绘制图元:glDrawArrays(GL_TRIANGLES,0,3);
EGL 写在#ifndef __APPLE__ 等等里面,不然会报编译错误
窗口系统接口 EGLDisplay display = eglGetDisplay( EGL_DEFAULT_DISPLAY )
初始化 EGL:eglInitialize(EGLDisplay display, EGLint *egl 主版本号, EGLint
*egl 次版本号)
确定渲染表面类型和配置:eglGetConfigs(EGLDisplay display, EGLConfig *configs,
EGLint 指定 configs 的大小, EGLint *返回 configs 的大小)
查询 EGLConfig 属性:eglGetConfigAttrib(EGLDisplay display, EGLConfig config,
EGLint 返回的特定属性, EGLint *返回值)
EGL 选择配置: eglChoose(EGLDisplay display, const EGLint *attribList, EGLConfig
*configs, EGLint maxReturnConfigs, EGLint *numConfigs)
创 建 EGL 窗 口 : EGLSurface eglCreateWindowSurface(EGLDisplay display,
EGLConfig config, EGLNativeWindowType 原生窗口, NULL)
屏幕外渲染: Pbuffer
创建渲染上下文:EGLContext eglCreateContext(EGLDisplay display, EGLConfig
config, EGL_NO_CONTEXT, const EGLint *attribList)
关联渲染表面和上下文:eglMakeCurrent(EGLDisplay display, EGLSurface 绘图
表面, EGLSurface 读取表面, EGLContext context)
20 示例 Hello_Triangle
创建着色器: GLuint glCreateShader(GL_VERTEX_SHADER)
提供源码:glShaderSource(GLuint shader, 1, &字符串数组指针, NULL)
编译: glCompileShader(GLuint shader)
查询编译结果: glGetShaderiv(GLunit shader, GLenum 系统常量, GLint *查询结
资源评论
RandyRhoads
- 粉丝: 24
- 资源: 296
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功