位置: 编程技术 - 正文

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

  • 2023年印花税税率口诀
  • 资产损失税前扣除管理办法
  • 税额和税款的区别
  • 直接抵免和间接抵免的区别
  • 弥补上年度亏损
  • 租赁房屋缴纳什么税
  • 未进行账务处理违反什么
  • 城建税教育附加地方教育附加的税率
  • 增值税普通发票和专用发票有什么区别
  • 事业单位的房租上缴国库吗
  • 营改增后物业管理公司需要交营业税吗
  • 结转出租包装物的成本
  • 本月无票收入到下月开具如何申报
  • 原材料意外损失会计分录
  • 验资报告需要什么材料
  • 如何解决蓝屏错误代码0x000007B问题
  • 关于暂时性差异的所得税会计处理,正确的是
  • win10老是错误
  • php哪个函数能取得字符串长度
  • 关于工程材料的图书有哪些
  • php删除用户
  • 怎样删除电脑系统账户
  • 使用php进行mysql数据库编程的基本步骤
  • 补缴的耕地占用税怎么做账
  • bigfile是什么意思
  • 资金占用利息会计处理
  • 笔记本电池保养注意事项
  • 营改增之前的收入开什么票
  • 库存现金清查主要包括哪些内容
  • php pdo oracle
  • pytorch :OSError: [WinError 1455] 页面文件太小,无法完成操作。 Error loading 【已解决】
  • php删除指定字符串
  • Thinkphp事务操作实例(推荐)
  • 个人独资企业如何做账
  • python 统计学包
  • vgdisplay命令无效
  • 无形资产摊销的方法
  • 小米开发回稳定
  • 接口二次封装
  • 收到保险公司的车赔款会计分录怎么写
  • 购买固定资产的运费计入什么科目
  • phpcms v9安装教程
  • 织梦常用调用标签
  • SQLServer中Partition By及row_number 函数使用详解
  • 应付职工薪酬的
  • 财产租赁合同按金额的多少进行计税
  • 城建税的减免规定有哪些
  • win2008iis安装
  • 筹资现金流量净额
  • 多计提企业所得税怎么冲回
  • 一般纳税人可以开1%的发票吗
  • 融资租入固定资产的入账价值
  • 开经销商公司要多少钱
  • 企业优惠政策是什么意思
  • 招标代理服务费计算器在线
  • 财务工作交接的通知
  • 车船使用税会计分录怎么写
  • 在sql server中关于数据库的说法正确的是
  • Linux下MySQL 5.6.27 安装教程
  • 免激活合法使用的软件
  • ubuntu每次开机都会进入grub
  • win 7电脑音箱没有声音
  • WIN7系统还原
  • opengl sharder
  • net命令用法
  • 常用批处理命令大全
  • HTTP 304错误的详细讲解
  • bat批处理执行cmd命令
  • nodejs连接mysql的历程
  • jquery html5 视频播放控制代码
  • js文件设置编码
  • tomcat8.5.8
  • js如何实现单例模式
  • android事件处理方式有几种
  • js如何实现类的继承
  • Python中的除号
  • 企业登录初始密码
  • 税务上成品油换算
  • 纳税人销售免征增值税
  • 房产税的计税依据及税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设