位置: 编程技术 - 正文

OpenGL ES常用API(opengl es programming guide)

编辑:rootadmin

推荐整理分享OpenGL ES常用API(opengl es programming guide),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:opengl es4,opengl es programming guide,opengl es2.0应用,opengl es programming guide,opengl es 教程,opengl es应用开发实践指南,opengl es api,opengl es 教程,内容如对您有帮助,希望把文章链接给更多的朋友!

OPenGL ES常用API:

glClearColor( 0.f, 0.f, 0.f, 1.f ); // 设置模式窗口的背景颜色,颜色采用的是RGBA&#;

glViewport( 0, 0, iScreenWidth, iScreenHeight );//设置视口的大小以及位置,

视口:也就是图形最终显示到屏幕的区域,前两个参数是视口的位置,后两个参数是视口的宽和长。

glMatrixMode( GL_PROJECTION ); // 设置矩阵模式为投影矩阵,之后的变换将影响投影矩阵。

OpenGL属于状态管理机制,比如:设置当前矩阵为投影矩阵过后,在没有重新调用glMatrixMode()之前,任何矩阵变换都将影响投影矩阵。

glFrustumf( -1.f, 1.f, -1.f, 1.f, 3.f, .f ); //该函数创建一个透视投影矩阵,其中的参数定义了视景体,可以理解为用相机的时候,&#;睛的可视范围。就像一个三棱锥,参数1、3、5和2、4、6分别定义了近裁面和远裁面的左下和右上的(x、y、z)坐标。

OpenGL 投影有两种模式,一种是透视投影,也就是通过上述函数创建一个三棱锥视景体,这种模式下观看三维模型是近大远小。另外一种模式是正交模式,视景体是一个平行六面体,离相机的距离不会影响物体的大小。

glMatrixMode( GL_MODELVIEW ); //设置当前矩阵为模式矩阵

glVertexpointer( 3, GL_BYTE, 0, vertices ); //指定从哪里存取空间坐标数据

OpenGL 一共有8个这样的函数可以存取不同的坐标数据:

glColorPointer();

glIndexPointer();

glNormalPointer();

glTexCoordPointer();等

glShadeModel( GL_FLAT ); //设置阴影模式为GL_FLAT,默认是GL_SMOOTH

阴影模式一共有两种,GL_SMOOTH和GL_FLAT,在有关照的情况下会有不同的效果。

glClear( GL_COLOR_BUFFER_BIT ); //清除颜色缓存

glLoadIdentity(); //设置当前矩阵为单位矩阵

OpenGL里面的位置大小都是用矩阵来表示的,比如:glScanf()放大或缩小,其实就是用一个矩阵去乘当前的矩阵,为了使变换不受当前矩阵的影响,所以把当前矩阵设置为单位矩阵。

glTranslatex(0, 0, - << ); //将坐标向z轴负方向移动

OpenGL ES常用API(opengl es programming guide)

glColor4f( 1.f, 0.f, 0.f, 1.f ); 设置颜色为红色

glScalex( << , << , << ); // 将物体沿xyz者分别放大倍

glDrawElements( GL_TRIANGLES, 1 * 3, GL_UNSIGNED_BYTE, indices ); //绘制图形,GL_TRIANGLES说明要绘制的图形是三角形,3表示一共有三个定点,GL_UNSIGNED_BYTE表示indices存储的数据类型

void glTranslatef(GLfloat x, GLfloat y, GLfloat z)

void glTranslatex(GLfixed x, GLfixed y, GLfixed z)

功能:沿x、y、z平移

void glScalef(GLfloat x, GLfloat y, GLfloat z)void glScalex(GLfixed x, GLfixed y, GLfixed z)

功能:在x、y、z轴进行缩放,参数x、y、z为你想要的大小。

void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)void glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)

功能:沿x、y、z轴进行旋转。Angle表示将要旋转的角度。

void glClear(GLbitfield mask)

功能:用mask清除缓存可以有三种模式进行清除:GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, and GL_STENCIL_BUFFER_BIT.

void glClearDepthf(GLclampf depth)void glClearDepthx(GLclampx depth)

功能:设置深度缓存,参数为0到1,使用glClear清除缓存。3D场景OpenGL程序都使用深度缓存。它的排序决定那个物体先画。这样您就不会将一个圆形后面的正方形画到圆形上来。

void glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) void glClearColorx(GLclampx red, GLclampx green, GLclampx blue,GLclampx alpha)

功能:用指定的颜色&#;(RGBA)清除颜色缓存

void glColorPointer(GLint size, GLenum type, GLsizei stride,const GLvoid * pointer) 功能:指定颜色的存储空间,size在OpenGL ES默认为4,表示(RGBA);type为pointer内容的类型;stride为数据在pointer内存中的偏移量;pointer为第一个元素的地址。

void glEnableClientState(GLenum array)void glDisableClientState(GLenum array)

功能:启用或者禁止array,array有:GL_COLOR_ARRAY, GL_MATRIX_INDEX_ARRAY_OES, GL_NORMAL_ARRAY, GL_POINT_SIZE_ARRAY_ARRAY_OES, GL_TEXTURE_COORD_ARRAY, GL_VERTEX_ARRAY, and GL_WEIGHT_ARRAY_OES。

void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices)

功能:按照参数给定的&#;绘制图形,mode指定要绘制的类型:GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, and GL_TRIANGLES;count指定要绘制多少个;type指定indices为数组首地址

转载CSDN:

Android OpenGL ES 入门 原创:

OpenGl函数说明 glAccum操作累加缓冲区glAddSwapHintRectWIN定义一组被SwapBuffers拷贝的三角形glAlphaFunc允许设置alpha检测功能glAreTexturesResident决定特定的纹理对象是否常驻在纹

mac xcode运行opengl 初次接触opengl,就只说说配置运行的步骤吧!希望多指教!1.新建项目,new-project-OSX中选择CommandLineTool;2.导入OpenGlFrame,右键项目-AddFilesToXXXXX选中/System

标签: opengl es programming guide

本文链接地址:https://www.jiuchutong.com/biancheng/369511.html 转载请保留说明!

上一篇:在MAC平台上编译GLFW并配置到Xcode(macbook编译java)

下一篇:Android OpenGL ES 入门

  • 委托加工物资增值税纳税义务发生时间
  • 无效产权转移的契税需要征收吗?
  • 企业所得税纳税义务人
  • 房地产企业税率为5销售水泥怎么算
  • 借款合同怎么做
  • 包工包料工程要交哪些税
  • 包装版费怎么计入生产成本
  • 当月没有收入,发生的人工和费用怎么办
  • 自己打印的机票怎么退票
  • 劳保费属于什么会计科目
  • 这部分房屋是否可以抵押
  • 受托代销商品和受托代销商品款是什么科目
  • 管家婆进销存软件免费版
  • 未到期责任准备金计算方法
  • 借款合同法律规定的表述
  • 企业微信收款如何同步给别人
  • 预付材料款的会计分录怎么写
  • 学校发票抬头类型填企业还是非企业
  • 发票签收单怎么填
  • 税控机减免会计分录
  • 税务局代开发票需要什么资料
  • 企业停产后员工怎么办
  • 汇算清缴工资填哪个数
  • 在windows7中,使用鼠标拖放功能
  • 会计中的低值易耗品
  • 如何编制处置固定资产
  • win7缓存设置方法
  • NPFMSG.exe - NPFMSG是什么进程 有什么用
  • qtaet2s.exe - qtaet2s是什么进程 有什么用
  • 直接人工的核算包括
  • windows update更新错误
  • php中array怎么用
  • PHP:mcrypt_ecb()的用法_Mcrypt函数
  • 贸易公司的采购
  • 凯丽温泉可以做spa
  • 公司的土地
  • AttributeError: cannot assign module before Module.__init__() call
  • 销售自己使用过的物品的税率
  • 命名空间 php
  • 公司租赁个人车辆账务处理
  • 投资性房地产公允价值模式账务处理
  • 现金流量表的填写说明
  • 残保金计提和缴纳分录
  • 织梦面包屑导航最后的分隔符大于号去掉方法
  • 医院交什么保险
  • 企业利润分配项目是什么
  • 报销差旅费会计分录退回现金
  • 上年期末留底税额怎么算
  • 弥补亏损账务处理流程
  • 转账给个人账户
  • 坏账准备与应收账款的影响有哪些
  • 哪些费用可以入开办费
  • 进口关税税款的计税依据
  • 公司收到股东的投资款以后怎么处理
  • 工地加油
  • 为什么要缴纳残保金
  • 长期待摊费用的摊销期限应该是
  • 管理费用明细科目设置和核算需要注意哪些问题
  • 将sql语句的执行状态传递给主语言的是
  • django使用mysql
  • mybatis特殊字符查询出来编码了
  • MySQL MEM_ROOT详解及实例代码
  • system is boot up with
  • win10系统电脑如何共享
  • linux urb
  • AquariumDesktop.exe进程危险吗 AquariumDesktop是什么进程
  • VirtualBOX给CentOS建共享文件夹的方法
  • win10在哪里找
  • linux中修改命令
  • linux gtk+
  • win10多任务视图不排序怎么设置
  • cocos2dx键盘控制移动
  • 如何使用蓝牙耳机
  • easyui-accordion
  • 在shell命令行方式下,一行只能
  • 网页css加载失败
  • go 与 python
  • unity3d中用四元数 Quaternion来对一个坐标点进行旋转的初步体会
  • 企业房产税公式
  • 集体土地征收应该有哪些文件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设