位置: 编程技术 - 正文

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

  • 购买财务软件可以抵税吗
  • 积分抵现是什么意思
  • 税务uk开票人显示是管理员怎么改
  • 设备转产需要停止折旧吗
  • 汽车维修费可以计入交通费吗
  • 网购商品怎么报销
  • 中介公司报税怎么操作
  • 应收账款贷方余额重分类到哪
  • 企业流水账怎么查
  • 小规模纳税人年应税销售额标准是
  • 企业清算时
  • 公益性捐赠全额扣除2020年第9号文件
  • excel单元格内换行macbook
  • 纳税人必须熟知什么
  • 选择纳税人身份考虑的因素
  • 不是房屋产权人可以卖房吗
  • 天猫店不开发票会被扣多少分
  • 基金经费管理办法
  • 给出含税货款会计分录
  • 运输服务费和运输费分别计入什么科目
  • 公司名下汽车过户给个人
  • 优先股分类为金融负债
  • php连接mysql数据库详细步骤(图文)
  • 金针菜的养殖方法和技术
  • msgdlg.exe是什么意思
  • 代扣代缴的增值税算进项税吗
  • 代扣代缴手续费比例
  • 红字发票只能一张一张开吗
  • 网络层IP协议的配套协议有哪些
  • 企业与员工之间的法律
  • php的json_encode
  • 固定资产清理净损失为什么在贷方
  • phpwhile循环多维数组
  • 其他营业账簿印花税减免政策
  • 外请培训老师的路费谁承担
  • 非贸付汇代扣代交哪些税
  • android应用程序开发语言
  • uniapp官方教程
  • thinkphpgui
  • PHP+JQuery+Ajax实现分页方法详解
  • php禁用函数怎么删除
  • 企业内部培训费用
  • 帝国cms教程官方完整版
  • 自建厂房折旧算制造费用吗
  • 工资有社保是什么意思
  • 对外支付3万美元怎么算
  • 员工上班的停车费谁出
  • 国外扣款手续费
  • 分期收款提供劳务 是什么
  • 合同负债属于什么账户
  • 如何创办企业(组建程序)
  • 借贷行为如何认定
  • 商业资本金
  • Windows下使用gccgo
  • SQL直接操作excel表(查询/导入/插入)
  • mysql数据库主从数据不一致
  • 清空mysql数据库
  • 在windows操作中
  • mac音频设置在哪里
  • linux怎么使用ping命令
  • linux安装软件可以用哪些方式
  • linux防火墙设置firewalld
  • 任务管理器快捷键ctrl+alt+
  • linux如何使用gcc编程
  • Win10 Mobile build 10586.338上手视频曝光
  • win7怎么样激活
  • windows8如何进入bios
  • cocos2dx解密
  • win7安装要求配置
  • perl读取文件内容到数组
  • cocos3.0
  • js如何使用
  • unity3d 脚本
  • [置顶]马粥街残酷史
  • ajax 分页
  • python 管理系统
  • 购房发票上的税率9%包含契税吗
  • 县税务局可以去市里吗
  • 缴纳社保问题证明怎么查
  • 沈阳市税务局全称
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设