OpenGl学习第二章

openGl的图形基本绘制以后,该是开始从平面想立体转移了,现在画一个金三角的样子,其实主要的还是定点数组的问题,GL10.GL_TRIANGLES这个参数的主要作用,

GL_TRIANGLES - 这个参数意味着OpenGL使用三个顶点来组成图形。所以,在开始的三个顶点,将用顶点1,顶点2,顶点3来组成一个三角形。完成后,在用下一组的三个顶点来组成三角形,直到数组结束。
 

那么我们用这个就可以画出一个金三角,代码其实没有多少变化,只是顶点数组的变化:

// 金三角数组
private float[] mTriangleArray = {

          0.0f,1.0f,0.0f,

          -1.0f,-1.0f,1.0f,

          1.0f,-1.0f,1.0f,

         

          0.0f,1.0f,0.0f,

          1.0f,-1.0f,1.0f,

          1.0f,-1.0f,-1.0f,

         

          0.0f,1.0f,0.0f,

          1.0f,-1.0f,-1.0f,

          -1.0f,-1.0f,-1.0f,

         

          0.0f,1.0f,0.0f,

          -1.0f,-1.0f,-1.0f,

          -1.0f,-1.0f,1.0f

   };

//金三角颜色数组
private float[] mColorArray={

          1.0f,0.0f,0.0f,1.0f,

          0.0f,1.0f,0.0f,1.0f,

          0.0f,0.0f,1.0f,1.0f,

         

          1.0f,0.0f,0.0f,1.0f,

          0.0f,0.0f,1.0f,1.0f,

          0.0f,1.0f,0.0f,1.0f,

         

          1.0f,0.0f,0.0f,1.0f,

          0.0f,1.0f,0.0f,1.0f,

          0.0f,0.0f,1.0f,1.0f,

         

          1.0f,0.0f,0.0f,1.0f,

          0.0f,0.0f,1.0f,1.0f,

          0.0f,1.0f,0.0f,1.0f,    

   };

然后在绘制的时候把 gl.glDrawArrays(GL10.GL_TRIANGLES, 0, 12);

这个方法的最后一个参数改成12,因为是用了12个顶点绘制的

这是绘制一个金三角,还有绘制矩形,那个跟这个有点区别等,马上下班了,等过俩天在学习

时间: 2024-11-01 10:25:32

OpenGl学习第二章的相关文章

JavaScript Event学习第二章 Event浏览器兼容性_javascript技巧

在这里提出的事件,当他们发生在一个确定的HTML元素上的时候,他们的名字能够被大多数的浏览器所识别.也就是说,浏览器会查找你为这个HTML元素所注册的事件处理程序的脚本,而且会被立即执行.      一开始只有为数很少的一些事件.这些事件在几乎所有的JavaScript浏览器都能运行,即使是那些非常古老的.需要注意的是那些早期的事件只能工作在链接或者表单上,有时候也能运行在整个窗口上,但是其他的大多数HTML元素不行.      时代变迁,很多新的事件也给大家介绍过了.第四代浏览器和更高级的浏览

JavaScript CSS修改学习第二章 样式_基础知识

另外,有时候你也许想知道添加到一个元素或者链接上的样式的具体内容.而style属性只能读取元素的内联形式的样式,所以如果你想读取其他样式就得另想办法了. 偏移 在使用一些小技巧之前,IE和Mozilla已经添加了一个比较好的办法:offsetSomething.使用这些属性你就能够读取这个段落现在的一些比较重要的样式. 举个例子,使用offsetWidth.你就能知道这个段落现在的宽度的像素值.为了测试,你可以改变一下窗口的大小然后再运行一下. 代码也非常的简单: 复制代码 代码如下: func

JavaScript DOM 学习第二章 编辑文本_基础知识

例子 这个页面就是个例子.点击一个段落,编辑,然后点Ready.你的修改就会呈现. 问题 遇到的第一个问题是:我想用文本框作为编辑区域.一开始我却把内容放不进文本框去.读者发现Mozilla的一个警告说是只有在文本框放置到文档之后才能设置它的value. 另外,在Mozilla下面内容包装的不是很好.我试了好几种wrap参数,但是结果都不是很好. 最严重的问题就是把修改后的内容发回服务器,这是几乎所有的CMS系统都要做的.读者给了我很多高明巧妙的建议.然而因为不能通过JavaScript完成,所

《Computer Networks (fifth edition)》第二章学习小结

        第二章介绍了物理层(The Physical Layer),总共有九个小节,分别是:数据通信的理论基础(The theoretical basis for data communication).导向传输媒体(Guided transmission media).无线传输(Wireless transmission).通信卫星(Communication satellites).数字调制和复用(Digital modulation and multiplexing).公共交换电话

【PMP】Head First PMP 学习笔记 第二章 组织、约束和项目

第二章 组织.约束和项目 如果你希望正确地完成工作--最好有一个正确的组织. 项目联络人 项目联络人(project expediter),只是记录项目的进展情况,但是没有权利对项目做任何决策.他可能参与项目,但是并不管理任何事务. 不同类型的组织项目 职能型 项目经理的决策需要和职能经理确认 项目经理作为职能经理的助手,协助职能经理完成工作 项目经理大部分时间都用于行政任务,通常只有部分时间投入到项目管理中 在职能型组织中往往会有项目联络人 矩阵型 弱矩阵型 项目经理有一些经理有一些权利,但是

> 第二章 NGWS Runtime 技术基础(rainbow 翻译) (转自重粒子空

<<展现C#>> 第二章 NGWS Runtime 技术基础(rainbow 翻译)   出处:http://www.informit.com/matter/ser0000001/chapter1/ch02.shtml 正文: 第二章  NGWS  runtime 技术基础     既然你已经具有了C#全面的印象,我也想让你了解NGWS runtime的全貌.C#依靠由NGWS提供的运行时:因此,有必要知道运行时如何工作,以及它背后所蕴含的概念.    所以,这一章分为两部分--它

《.net编程先锋C#》第二章 理论基础-公用语言 运行环境(转)

编程 第二章 理论基础-公用语言 运行环境既然你已经具有了C#全面的印象,我也想让你了解NGWS runtime的全貌.C#依靠由NGWS提供的运行时:因此,有必要知道运行时如何工作,以及它背后所蕴含的概念.所以,这一章分为两部分--它们是所有的概念和使用的基础.两部分的内容虽然有些重叠,但它有助于加深理解正在学习的概念. 2.1 NGWS RuntimeNGWS和NGWS Runtime为你提供了一种运行时环境.该运行时管理执行代码,并提供了使编程更容易的服务.只要你的编译器支持这种运行时,你

第二章 andrid studio创建项目

原文 http://blog.csdn.net/zhanghefu/article/details/9326735 第二章 andrid studio创建项目 第二章 andrid studio创建项目...1 简 介... 1 2.1  Hello world.1 2.2  Andriod studio程序结构剖析...4 2.3 编辑环境设置...4 2.4 AVD..4 2.5 了解应用程序生命周期...4 2.6 常见问题... 4 总结...4                     

经典中的品味:第二章 C++基本的对象,类型和值(上)

2.1 一个简单问候的例子 最常见的就是keyBorad input(键盘输入).从HelloWorldd的输出,我们也想得到用户的输入.通常,实行中的程序会给它的输入产生输出.例如,输入你的名字,输出 一句问候.有时候它就在身边,像我最爱的苹果手机一样.人机交互就是那么简单~ 图2.1.1 人机交互(.net) 回 到技术点,为了读取用户输入的数据,我们需要在计算机内存中某个地方放置读取所需的内容.这就是对象(Class).对象是什么,对象时一个某种类型的内 存区域.其中类型则确定了对象的信息