`
mapdigit
  • 浏览: 243391 次
文章分类
社区版块
存档分类
最新评论
文章列表
前面的例子显示的正方形都是白色,看其来不是很吸引人,本篇介绍如何给Mesh(网格)添加颜色。OpenGL ES使用颜色是我们熟知的RGBA模式(红,绿,蓝,透明度)。 颜色的定义通常使用Hex格式0xFF00FF 或十进制格式(255,0,255), 在OpenGL 中却是使用0…1之间的浮点数表示。 0为0,1相当于255(0xFF)。 最简单的上色方法叫做顶点着色(Vertxt coloring),可以使用单色,也可以定义颜色渐变或者使用材质(类同于二维图形中各种Brush类型)。 Flat coloring(单色) 是通知OpenGL使用单一的颜色来渲染,OpenGL将一直使用指定 ...
本篇介绍3D 坐标系下的坐标变换transformations。 Coordinate System坐标系 OpenGL使用了右手坐标系统,右手坐标系判断方法:在空间直角坐标系中,让右手拇指指向x轴的正方向,食指指向y轴的正方向,如果中指能指向z轴的正方向,则称这个坐标系为右手直角坐标系。 Translate平移变换 方法public abstract void glTranslatef (float x, float y, float z) 用于坐标平移变换。 在上个例子中我们把需要显示的正方形后移了4个单位,就是使用的坐标的平移变换,可以进行多次平移变换,其结果为多个平移矩 ...
Jave ME 平台 Java ME地图应用开发环境 Java ME引路蜂地图开发示例:第一个地图应用 Java ME引路蜂地图开发示例:设置地图类型 Java ME引路蜂地图开发示例:放大、缩小 Java ME引路蜂地图开发示例:地图平移 Java ME引路蜂地图开发示例:地址查询 Java ME引路蜂地图开发示例:路径查询 Java ME引路蜂地图开发示例:本地查询 Java ME引路蜂地图开发示例:IP地址查询
Android OpenGL ES 简明开发教程 Android OpenGL ES 简明开发教程一:概述 Android OpenGL ES 简明开发教程二:构造OpenGL ES View Android OpenGL ES 简明开发教程三:3D绘图基本概念 Android OpenGL ES 简明开发教程四:3D 坐标变换 Android OpenGL ES 简明开发教程五:添加颜色 Android OpenGL ES 简明开发教程六: 真正的3D图形 Android OpenGL ES 简明开发教程七:材质渲染 Android OpenGL ES 开发教程 Android Op ...
Android OpenGL ES 简明开发教程 Android OpenGL ES 简明开发教程一:概述 Android OpenGL ES 简明开发教程二:构造OpenGL ES View Android OpenGL ES 简明开发教程三:3D绘图基本概念 Android OpenGL ES 简明开发教程四:3D 坐标变换 Android OpenGL ES 简明开发教程五:添加颜色 Android OpenGL ES 简明开发教程六: 真正的3D图形 Android OpenGL ES 简明开发教程七:材质渲染 Android OpenGL ES 开发教程 Android Op ...
Android开发教程 Android简明开发教程 PDF版本(7M) Android简明开发教程一:概述 Android简明开发教程二:安装开发环境 Android简明开发教程三:第一个应用Hello World Android简明开发教程四:Android应用基本概念 Android简明开发教程五:Activities Android简明开发教程六:用户界面设计 Android简明开发教程七:Intents和Intent Filters Android简明开发教程八:引路蜂二维图形绘制实例功能定义
Android开发教程 Android简明开发教程 PDF版本(7M) Android简明开发教程一:概述 Android简明开发教程二:安装开发环境 Android简明开发教程三:第一个应用Hello World Android简明开发教程四:Android应用基本概念 Android简明开发教程五:Activities Android简明开发教程六:用户界面设计 Android简明开发教程七:Intents和Intent Filters Android简明开发教程八:引路蜂二维图形绘制实例功能定义
前面介绍了使用Android 编写OpenGL ES应用的程序框架,本篇介绍3D绘图的一些基本构成要素,最终将实现一个多边形的绘制。 一个3D图形通常是由一些小的基本元素(顶点,边,面,多边形)构成,每个基本元素都可以单独来操作。 Vertex (顶点) 顶点是3D建模时用到的最小构成元素,顶点定义为两条或是多条边交会的地方。在3D模型中一个顶点可以为多条边,面或是多边形所共享。一个顶点也可以代表一个点光源或是Camera的位置。下图中标识为黄色的点为一个顶点(Vertex)。 在Android系统中可以使用一个浮点数数组来定义一个顶点,浮点数数组通常放在一个Buffer(java. ...
在Andorid平台上构造一个OpenGL View非常简单,主要有两方面的工作: GLSurfaceView Android平台提供的OpenGL ES API主要定义在包android.opengl ,javax.microedition.khronos.egl ,javax.microedition.khronos.opengles ,java.nio 等几个包中,其中类GLSurfaceView 为这些包中的核心类: 起到连接OpenGL ES与Android 的View层次结构之间的桥梁作用。 使得Open GL ES库适应于Anndroid系统的Activity生命周期。 使 ...
ApiDemos 的Graphics示例中含有OpenGL ES 例子,OpenGL ES 主要用来开发3D图形应用的。OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL 三维图形 API 的子集,针对手机、PDA和游戏主机等嵌入式设备而设计。 下面是维基百科中对应OpenGL ES的简介: OpenGL ES 是从 OpenGL 裁剪定制而来的,去除了 glBegin/glEnd,四边形(GL_QUADS)、多边形(GL_POLYGONS)等复杂图元等许多非绝对必要的特性。经过多年发展,现在主要有两个版本,OpenGL ES 1.x 针对固定管 ...
GNavigator是 曾经发布在Nokia Ovi Store的Java ME应用,基本使用到了引路蜂地图API的所有功能,尽管这是一个基于LWUIT的应用,使用Java语言开发,其它平台也可以参考这个应用的代码。 总代码量大约为24000行,其中纯代码为12000行。 几个用户界面如下: 包括导航演示(可以连接GPS) 代码下载 ,用户手册 ,为Netbean 项目。
GNavigator是 曾经发布在Nokia Ovi Store的Java ME应用,基本使用到了引路蜂地图API的所有功能,尽管这是一个基于LWUIT的应用,使用Java语言开发,其它平台也可以参考这个应用的代码。 总代码量大约为24000行,其中纯代码为12000行。 几个用户界面如下: 包括导航演示(可以连接GPS) 代码下载 ,用户手册 ,为Netbean 项目。
前面已经说过Android SDK ,NDK, APK, 现在有来了个ADK, 这么多K:-). 那么什么是ADK,ADK是Android Open Accessory Development Kit 的缩写。使用ADK使得不支持USB Host功能的Android设备也可以和其它USB设备交互。比如使用Android手机来控制步进电机,条码扫描仪,机器人等。 Android 设备支持各种各样的USB设备,即可以以USB Host模式工作,也可以以USB Accessory 模式工作: 从Android 3.1 (API Level 12) 开始Andriod平台开始支持USB Acce ...
这是本系列最后一篇,最后就是将整个程序组成起来。坦克大战游戏中有六个用户界面: 音效设置 开始界面 选择关卡界面 游戏主界面 分数界面 游戏结束界面 按照Android程序一般设计方法,一般一个界面对应一个Activity。这样就需要设计6个Activity子类对实现各个界面。 在移植的过程,这里采用了一个简单的方法,采用一个Activity对就于 Java ME中的Midlet。 主Activity采用FrameLayout <?xml version=”1.0″ encoding=”utf-8″?> <FrameLayout xmlns:android ...
本篇介绍坦克大战游戏中的主角,坦克类。游戏中坦克种类有多种,但主要特性大同小异。下图为游戏中定义的坦克类层次图。 Tank为所有坦克类的基类,它定义了几个主要的方法 think() 思考,如有AI,算法在这里实现,对于简单坦克SimpleTank,可能随机选择一步,而对SmartTank来说,向靠近玩家坦克的方向前进一步。 drive() 根据Think决定前进一步 shoot() 根据当前条件决定发射一棵子弹。PlayerTank由玩家和可同时发射的子弹来控制,Enemy坦克一般随机控制是否要发射子弹。 基类每个游戏帧的操作如下 /** * Operation be ...
Global site tag (gtag.js) - Google Analytics