位置: 编程技术 - 正文

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

  • 汇算清缴需要做分录吗
  • 劳务报酬个人所得税税率表
  • 应付款为什么是负数
  • 出票后定期付款的汇票是什么意思
  • 发票红票和退票区别在哪
  • 眼镜所属行业怎么填写
  • 企业外币账户怎么开通
  • 金融企业往来收入是指
  • 研发费用在企业所得税中怎么扣除
  • 建筑业营改增主要政策一览表
  • 接受捐赠收入会计利润含税吗
  • 销售商品的成本计入什么科目
  • 企业资产净资产
  • 这个月只有进项没有销项
  • 以物易物方式销售货物例题
  • 进项税额不可抵扣
  • 非生产用设备及器具
  • 不同项目的进项税可以抵销项税吗
  • 发给一个人的说说
  • 开专票需要对方是一般纳税人吗
  • 发票虚开税务局要求补税怎么办?
  • 清包工程增值税税率
  • 这些常用的发票知识,你都知道了吗?
  • 计提工资与发放工资
  • 个体虚开普通发票罪立案标准
  • 没有生产产品,费用怎么结转
  • 银行存款日记账和现金日记账的区别
  • 卖固定资产如何做账
  • 土地增值税地价扣除
  • 纸质承兑汇票到期怎么兑现,多久能到帐
  • 存货盘亏进项税额转出会计分录怎么做
  • windows10如何关闭病毒和威胁防护设置
  • 出纳日记账填写样本
  • php mb_convert_encoding
  • php中的函数可以分为哪几种
  • Win11 Build10.0.22000.51预览版正式推送 (附完整更新日志)
  • 确认收入的必要条件
  • 简述项目融资风险的内容
  • 房地产项目如何通过抖音宣传
  • php ssl
  • 最优化模型的优点
  • php simple html dom parser
  • 微信小程序slot
  • 规划设计费会计处理
  • dedecms官网
  • 营业执照筹建是做什么的
  • day28--Java泛型01
  • python中assert()函数
  • windows安装mq
  • mongodb如何修改数据
  • 代扣代缴个人所得税奖励金
  • 软件企业研发费用
  • 除了住房公积金还有什么基金
  • 暂估成本比实际高分录
  • 研发费用计入营业成本还能加计扣除吗
  • 资产类科目一般是什么
  • 团体意外保险能赔多少钱
  • 期末账面余额是什么意思
  • 商业企业包装物包括哪些
  • 房地产会计核算科目
  • 所有符合条件x+5的绝对值加x- 2的绝对值等于七的数x
  • Linux/Mac MySQL忘记密码命令行修改密码的方法
  • mac chrome浏览器插件
  • yAssistSe.exe是什么进程
  • uphclean.exe - uphclean进程是什么意思
  • 电脑怎么换系统教程
  • win8系统win10有什么区别
  • win10 win7控制面板
  • windows 如何解密
  • win8创建我的电脑
  • cocos2dx tableview基础:实现多图片的滑动显示
  • Cocos2dx3.2 Crazy Tetris 制作简单的凸多边形刚体
  • 深入了解求助者时,首先要进行工作是
  • linux中makefile怎么写
  • nodejs获取post数据
  • 在xml文件里使用的命令
  • JavaScript中的NaN代表什么
  • javascript中的对象用于
  • 计算两gps坐标之间距离
  • 江西国家税务局入围体检名单
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设