- 1、本文档共91页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
绕某轴旋转定义旋转角度变量在onDrawFrame里设置旋转publicabstractvoidglRotatef(floatangle,floatx,floaty,floatz)Angle定义了旋转的角度x,y,z共同决定了旋转轴的方向改变旋转角度简单绘图-旋转floatrotate;gl.glRotatef(rotate,0.0f,1.0f,0.0f);//绕y轴rotate-=0.5f;例:绘制一个四棱锥与绘制三角形相似,重点都在于构建顶点坐标构建顶点坐标时,需要按照逆时针的方向来绘制(WHY?按照顺时针绘制会怎么样?)简单绘图-3D空间四棱锥由四个三角形组成简单绘图-3D空间privateIntBuffertriggerBuffer=IntBuffer.wrap(newint[]{0,one,0,-one,-one,0,one,-one,one,0,one,0,one,-one,one,one,-one,-one,0,one,0,one,-one,-one,-one,-one,-one,0,one,0,-one,-one,-one,-one,-one,one});使用循环把四个面都绘制出来简单绘图-3D空间//绘制四棱锥for(inti=0;i4;i++){gl.glDrawArrays(GL10.GL_TRIANGLE,i*3,3);}OpenGLES中具有的两种不同的视口类型。正交(orthogonal)透视(perspective)OpenGL---透视正交视线永远不会交汇而且物体不会改变其大小。没有透视效果。OpenGL---透视透视物体会随着移远而越来越小,视线会在物体移离观察者时最终交汇。这是对真实视觉的模拟,人们就是以这种方式观察世界的。OpenGL---透视AndroidSDK2.1及以下版本,都只支持OpenGLES1.1(SDK完整支持OpenGLES1.0,但并不完整支持OpenGLES1.1)Android2.2对OpenGLES2.0进行支持。
OpenGLOpenGLESOpenGL是一个跨平台的API,数据类型的大小会随使用的编程语言以及处理器(64位,32位,16位)等的不同而不同,所以OpenGL定义了自己的数据类型。当传递数据到OpenGL时,使用这些OpenGL的数据类型,能保证传递数据的尺寸和精度正确。数据类型GLenum:用于GL枚举的无符号整型。通常用于通知OpenGL由指针传递的存储于数组中数据的类型(例如,GL_FLOAT用于指示数组由GLfloat组成)。GLboolean:用于单布尔值。OpenGLES还定义了其自己的“真”和“假”值(GL_TRUE和GL_FALSE)以避免平台和语言的差别。当向OpenGL传递布尔值时,请使用这些值而不是使用YES或NO(尽管由于它们的定义实际没有区别,即使你不小心使用了YES或NO。但是,使用GL-定义值是一个好的习惯。)GLbitfield:用于将多个布尔值(最多32个)打包到单个使用位操作变量的四字节整型。我们将在第一次使用位域变量时详细介绍,请参阅wikipediaGLbyte:有符号单字节整型,包含数值从-128到127GLshort:有符号双字节整型,包含数值从?32,768到32,767数据类型GLint:有符号四字节整型,包含数值从?2,147,483,648到2,147,483,647GLsizei:有符号四字节整型,用于代表数据的尺寸(字节),类似于C中的size_tGLubyte:无符号单字节整型,包含数值从0到255。GLushort:无符号双字节整型,包含数值从0到65,535GLuint:无符号四字节整型,包含数值从0到4,294,967,295GLfloat:四字节精度IEEE754-1985浮点数GLclampf:这也是四字节精度浮点数,但OpenGL使用GLclampf特别表示数值为0.0到1.0GLvoid:void值用于指示一个函数没有返回值,或没有参数GLfixed:定点数使用整型数存储实数。由于大部分计算机处理器在处理整型数比处理浮点数快很多,这通常是对3D系统的优化方式。但因为iPhone具有用于浮点运算的矢量处理器,我们将不讨论定点运算或GLfixed数据类型。GL
文档评论(0)