当前位置:编程学习 > JAVA >>

JavaME 3D游戏开发全攻略

JavaME 3D游戏开发框架(一)
    随着各种手持设备的性能提升和对3D技术的支持,越来越多的3D游戏出现在了各种手持设备上,3D游戏不仅能渲染出非常漂亮的图形,最重要的是能够给玩家带来更真实的体验,那么本文将分析如何通过JavaME环境来构建一个3D游戏开发框架。
JavaME所支持的3D开发包主要有:jsr184和jsr239,其中jsr184是Mobile 3D Graphics API 简称M3G,M3G的直接访问模式是建立在OpenGL的基础上的,作为它的一个子集和精简部分,保留了很多有效的功能。JSR 239则定义了一个几乎与OpenGL ES的C 接口相同的 Java API,使现有OpenGL内容的移植更为容易,OpenGL ES是专为内嵌和移动设备设计的一个2D/3D轻量图形库,它是基于OpenGL API设计的。OpenGL ES 1.0版基于OpenGL 1.3,而OpenGL ES 1.1则是基于OpenGL 1.5的。现在主要由Khronos Group来负责管理OpenGL ES的开发维护,它几乎已经成为移动设备3D技术的一个事实标准。因此本文将采用该规范,使用JSR 239开发包来构建3D游戏。在使用Opengl ES开发游戏之前,我们首先需要分析几个名词、概念及其功能。
EGL是OpenGL ES和底层Native平台视窗系统之间的接口。是为 OpenGL ES 提供平台独立性而设计。OpenGL ES 为附加功能和可能的平台特性开发提供了扩展机制,但仍然需要一个可以让 OpenGL ES 和本地视窗系统交互且平台无关的层。 OpenGL ES 本质上是一个图形渲染管线的状态机,而 EGL 则是用于监控这些状态以及维护 Frame buffer 和其他渲染 Surface 的外部层。图1-1是一个典型的 EGL 系统布局图。
[img=http://innovator.samsungmobile.com/cn/image.do?serviceId=bbs&attachmentId=17221][/img]

图1-1 典型的 EGL 系统布局图
OpenGL ES 本质上是一个图形渲染管线的状态机,而 EGL 则是用于监控这些状态以及维护帧缓冲和其他渲染面的外部层。EGL视窗设计是基于人们熟悉的用于 Microsoft Windows ( WGL )和 UNIX ( GLX )上的 OpenGL 的 Native 接口,与后者比较接近。 OpenGL ES 图形管线的状态被存储于 EGL 管理的一个上下文中。帧缓冲和其他绘制渲染面通过 EGL API 创建、管理和销毁。 EGL 同时也控制和提供了对设备显示和可能的设备渲染配置的访问。

推荐阅读:
JavaME 3D游戏开发框架(一)
JavaME 3D游戏开发框架(二)
JavaME 3D游戏开发——基本图形渲染
JavaME 3D游戏开发——3D图形渲染
JavaME 3D游戏开发——光效 
JavaME 3D游戏开发——材质
JavaME 3D游戏开发——纹理
JavaME 3D游戏开发——纹理映射
JavaME 3D游戏开发——模型 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 过来学习,请指教哦。 --------------------编程问答-------------------- --------------------编程问答-------------------- EGL视窗设计是基于人们熟悉的用于 Microsoft Windows ( WGL )和 UNIX ( GLX )上的 OpenGL 的 Native 接口,与后者比较接近。 OpenGL ES 图形管线的状态被存储于 EGL 管理的一个上下文中。帧缓冲和其他绘制渲染面通过 EGL API 创建、管理和销毁。 EGL 同时也控制和提供了对设备显示和可能的设备渲染配置的访问 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 话说这学期刚学了 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- jiangyou --------------------编程问答-------------------- --------------------编程问答--------------------  #14楼 得分:0回复于:2010-12-23 16:15:04学习。。 
  --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- good....... --------------------编程问答-------------------- --------------------编程问答-------------------- 怎么打不开啊…… --------------------编程问答-------------------- .................................. --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 学习。感谢楼主! --------------------编程问答-------------------- --------------------编程问答-------------------- 技术性文章认真观摩 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 观摩团 --------------------编程问答-------------------- 好好学习一下!将来准备手机开发 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 不错,挺好的 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 过来学习
--------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- JAVA…… --------------------编程问答-------------------- 似乎应该加上UPDATE中的变量操作,也蛮有用的 --------------------编程问答-------------------- 不错, --------------------编程问答-------------------- 232 --------------------编程问答-------------------- 13313 --------------------编程问答-------------------- 汗.... JAVA开发3D  还是ME.... 
楼主够强啊 --------------------编程问答-------------------- 羡慕楼主
太有才了 --------------------编程问答-------------------- 谢谢LZ贡献的好东西啊,不错哦,好东西就要顶,顶,顶啊! --------------------编程问答--------------------       太有才了 --------------------编程问答-------------------- --------------------编程问答-------------------- 谢谢分享 --------------------编程问答-------------------- 这么犀利的技术,我果断来关注下,给LZ顶一个!!! --------------------编程问答-------------------- 正在看
谢谢楼主写了这么多内容
辛苦了! --------------------编程问答-------------------- 不错,值得一看 --------------------编程问答-------------------- 学习了,非常感谢LZ --------------------编程问答-------------------- 感谢lz分享 --------------------编程问答-------------------- 感谢lz分享
补充:Java ,  J2ME
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,