位置: 编程技术 - 正文

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 入门

  • 济南非税是什么意思
  • 银行短期存款利息怎么算
  • 个税系统里的免税收入在哪删除
  • 电费为什么计入成本费用
  • 成品油红字发票开错了
  • 经营性现金流量净额是什么意思
  • 工程咨询属于什么合同
  • 物业公司外包保安死亡
  • 收到的普通发票需要认证吗
  • 注销公司报表应注意什么
  • 住宿发票专票可抵扣吗
  • 法人收到票据用什么抵扣
  • 购买税控设备,享受何种优惠政策
  • 机器维修费的会计科目
  • 免税品销售有增值税吗
  • 技术研发费加计扣除政策
  • 水利建设专项收入怎么计算
  • 企业职工补助
  • 普通发票需要什么
  • 境外个人汇入汇款规定
  • 企业的筹资费用哪里找
  • 材料成本差异率要算发出材料吗
  • 应付质保金到期怎么办
  • 交换房产土地如何交税
  • 什么是增值税
  • 汇丰银行账户管理费
  • 电脑桌面刷新反应迟钝
  • 月末累计折旧怎么结转
  • 非盈利组织又称
  • 什么时编制
  • 增值税发票选择确认平台注意事项
  • PHP:disk_total_space()的用法_Filesystem函数
  • laravel 日志配置
  • javascript获取input的值并计算
  • 小规模企业购入固定资产怎么做账务处理
  • vue使用技巧
  • phpcms默认密码
  • 出租改自用房产税
  • 从财务报表中能看出什么
  • 金税盘怎么增加收款人和复核人
  • 企业日常费用支出明细表
  • 捐款 企业
  • java 读写锁 map
  • 织梦商城
  • 小规模纳税人转让土地使用权税率
  • 一般劳务报酬个人所得税退税吗
  • 企业进项税和销项税怎么抵扣
  • 未开票的收入如何申报增值税
  • 第三方代销什么意思
  • 预付一年的房租怎么做账
  • 支付金额小于发票怎么办
  • 会计的视频教程
  • 工资每月变动社保怎么变
  • 建筑业农民工工资个税合理避税
  • 认缴的实收资本需要做账吗?
  • 开发票的时候密码超出密码区发票还能用吗?
  • 开给个人的普通增值税
  • 新准则固定资产处置的账务处理
  • 会计凭证的摘要 报销 保险费用
  • 政府会计准则具体准则的作用
  • MySQL利用不同的流程语句输出1到200的和
  • win7怎么打开后缀
  • windows如何删除本地用户
  • linux系统的
  • linux系统查看磁盘io
  • 服务器双系统怎么安装
  • linux使用rpm安装软件
  • windows 8
  • iptables配置详解
  • 我今天抽6
  • cmd命令进行ftp下载文件夹
  • android opengl绘图
  • node 操作mysql
  • 四川国税发票查询验证
  • 付了120救护车费怎么报销
  • 社保缴纳人数和公积金人数不一样怎么说明
  • 广州市国家税务局第三分局
  • 深圳税务局官方客服电话
  • 江西税务客服电话
  • 残疾人个体工商户补贴
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设