还记得前面曾说过表示曲棍球桌子的最容易的方式是长方形吗?然而,令人感到混乱的一点是:在OpenGL里,只能绘制点、直线以及三角形。三角形是最基本的几何图形;因为它的结构如此稳定,它随处可见,比如桥梁的结
让我们继续,并写一些代码存储这些顶点;这些顶点会表示为一个浮点数列表;因为它们定义在二维坐标系里,所以每个顶点要用两个浮点数进行标记:一个标记x轴的位置,另外一个标记y轴的位置。因为一个顶点有两个分
我们曾说过要暂时保持事物简单,那什么是能表达空气曲棍球桌子结构的最基本的图形呢?我们可以使用长方形。既然一个长方形有4个拐角,我们就需要4个顶点。长方形是一个二维物体,因此每个顶点都需要一个位置,这
2 3 定义空气曲棍球桌子的结构在桌子被绘制到屏幕之前,我们需要告诉OpenGL要画什么。开发过程中的第一步是以OpenGL能理解的形式定义一个桌子结构。在OpenGL里,所有东西的结构都是从一个顶点开始。2 3 1 介绍
我们可以重用第1章的项目作为起点。1 在Eclipse里,选择FirstOpenGLProject,要确保项目是打开的,然后按Ctrl+C快捷键;再按Ctrl+V快捷键复制这个项目。2 出现提示框时,输入AirHockey1作为项目名,你可以自己选
空气曲棍球是一个简单、流行的游戏,经常可以在保龄球馆和酒吧里见到它。尽管简单,但非常容易让人上瘾。在Android的应用市场——Google Play里,一些顶级游戏都是基于该游戏或者其他令人愉快的游戏的变种。随着
本章介绍我们的第一个项目:一个简单的空气曲棍球游戏。在我们开发这个项目的过程中,会学习到一些主要的OpenGL组件。作为起始,我们会学习如何使用独立的点集合构建物体,这些点称为顶点;之后,我们会学习怎样
在本章,我们学习了如何创建一个新的OpenGL项目和清空屏幕。我们安装及配置了开发环境、创建了一个新项目、初始化了OpenGL、响应了Android Activity的生命周期,最后清空了屏幕!我们现在有一个基础了,后面的所
这是我们第一次使用静态导入(static import)指令。我们会在代码中大量地使用它,因为这个指令帮助我们极大地减少了冗长的代码,比如调用GLE20 glClear (GLE20 GL_COLOR_BUFFER_BIT)缩减成glClear(GL_COL_OR_
现在要定义一个渲染器,以便我们开始清空屏幕。让我们快速浏览一下渲染器接口定义的方法:onSurfaceCreated(GL10 glUnused, EGLConfig config)当Surface被创建的时候,GLSurfaceView会调用这个方法;这发生在
我们还需要处理Android Activity生命周期的事件,否则,如果用户切换到另外一个应用,应用就会崩溃;加入如下方法让这个Activity类变得完整:这些方法非常重要,有了它们 ,这个surface视图才能正确暂停并继续
下一步就是配置渲染表面(rendering surface),添加如下几行代码:如果设备支持OpenGL ES 2 0,我们就通过调用setEGLContextClientVersion(2)配置这个surface视图;然后调用setRenderer()传进自定义Renderer
因为我们只为2 0版本写代码,我们要做的下一件事就是检查系统是否实际支持OpenGL ES 2 0。让我们添加如下几行代码到onCreate()函数中:首先,我们需要Android ActivityManager的一个引用,用它获取设备配置信
打开前面自动生成的Activity类FirstOpenGLProjectActivity。按下Ctrl+Shift+T快捷键,Open Type对话框就会弹出来,然后输入FirstOpenGLProjectActivity,当那个类显示出来时,就选择它。Eclipse键盘快捷键在Mac
下一步就是使用一个特殊的类GLSurfaceView初始化OpenGL。GLSurfaceView会处理OpenGL初始化过程中比较基本的操作,如配置显示设备(display)以及在后台线程中渲染;渲染是在显示设备中一个称为surface的特定区域
我们已经安装并配置了工具,现在来创建第一个OpenGL程序。这个程序非常简单:它要做的只是初始化OpenGL并不停地清空屏幕;要得到一个可以实际做点什么的OpenGL程序,这是我们需要的最少的内容。Joe 问:为什么要
可以使用模拟器,但是最好有一台真实的设备,因为模拟器不能准确反映真实的性能和结果,而且,即使你的计算机硬件性能很好,模拟器也会显得很慢。Nexus 7是个很好但不贵的选择,可以从Google Play在线购买。
可以使用AVD管理器启动一个模拟器实例,或者,也可以让IDE在需要时自动启动;如果系统里没有其他模拟器运行,Eclipse中的Android开发工具插件会启动那个模拟器。让一个模拟器实例持续运行是个不错的主意,这样你
既然工具安装完成了,就可以使用Android虚拟设备(AVD)管理器创建新的虚拟设备。1 进入安装Android SDK的文件夹。如果是Windows系统,运行SDK Manager exe打开Android SDK管理器;如果是其他操作系统, 运行
下面是开发Android OpenGL所需要的基本工具列表:一台运行Windows、OS X或者Linux的计算机Java开发包(JDK)Android软件开发包(SDK)集成开发环境(IDE)一个手机、平板电脑或者支持OpenGL ES 2 0的模拟器你