网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > JAVA > J2ME > 核心技术 > J2ME 3D技术简介  

J2ME 3D技术简介

2005-07-26  作者:BitsCN整理  来源:中国网管联盟  点评 投稿 收藏


  3D技术对我们来说已经非常熟悉了,最常用的3D API有OpenGL和Microsoft的Direct 3D,在桌面游戏中早已广泛应用。对于J2ME程序而言,Mobile 3D Graphics API(JSR184)的出现,使得为手机应用程序添加3D功能成为可能。
  
  JSR184标准(M3G:Mobile 3D Graphics)为Java移动应用程序定义了一个简洁的3D API接口,J2ME程序可以非常方便地使用M3G来实现3D应用比如游戏等等。M3G被设计为非常轻量级的,整个API的完整实现不超过150kb。
  
  M3G是J2ME的一个可选包,以OpenGL为基础的精简版,一共有30个类,运行在CLDC1.1/CLDC2.0上(必须支持浮点运算),可以在MIDP1.0和MIDP2.0中使用。目前,支持M3G的手机有Nokia 6230/3650/7650/6600、Siemens S65/CX65/S55/M55、Sony-Ericsson K700i/P800/P900、Moto 220/T720等。M3G只是一个Java接口,具体的底层3D引擎一般由C代码实现,比如许多手机厂商的3D引擎采用的便是SuperScape公司的Swerve引擎,这是一个专门为移动设备设计的高性能3D引擎。
  
  类似于Microsoft的D3D,M3G支持两种3D模式:立即模式(immediate mode)和保留模式(retained mode)。在立即模式下,开发者必须手动渲染每一帧,从而获得较快的速度,但代码较繁琐;在保留模式下,开发者只需设置好关键帧,剩下的动画由M3G完成,代码较简单,但速度较慢。M3G也允许混合使用这两种模式。

网管u家u.bitscn@com


  
  3D模型可以在程序中创建,但是非常繁琐。因此,M3G提供一个Loader类,允许直接从一个单一的.m3g文件中读入全部3D场景。m3g文件可以通过3D Studio Max之类的软件创建。
  
  如果熟悉OpenGL,那么M3G是非常容易理解的。在M3G中,Graphics3D是3D渲染的屏幕接口,World代表整个3D场景,包括Camera(用于设置观察者视角)、Light(灯光)、Background(背景)和树型结构的任意数量的3D物体。3D对象在计算机中用点(Point, Pixel)、线(Line, Polyline, Spline)、面(Mesh)来描述,具体存储和运算(如旋转、投影)都是矩阵运算和变换。
  
  SUN的WTK2.2已经内置了M3G的实现包,如果安装了WTK2.2,就可以在模拟器上运行3D MIDP程序。可以参考WTK2.2的示例demo3d。
  
  下面是一个最简单的M3G程序,来自Sony-Ericsson的示例代码,它创建一个旋转的金字塔,可以从 此处下载完整代码并在WTK2.2中运行。
  
  首先,我们要获得唯一的Graphics3D实例,用于渲染3D场景。Graphics3D是一个Singleton实现,可以在任何地方获得:
TAGs简介   技术   3D   M3G   模式   实现   代码   非常   程序    
 上一篇:用NetBeans平台开发J2ME游戏实例讲解1   下一篇:J2ME概念解析
相关文章列表
J2ME 3D技术简介 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
1.J2ME手机游戏:Canvas类基本绘图实例
2.J2ME手机游戏设计:Thread类
3.J2ME手机游戏:Canvas类基本绘图应用
4.J2ME编程--实现手机屏幕的切换
5.RMS遍历类RecordFilter和RecordComparato
6.J2ME手机游戏:运行实现Runnable接口的类
7.J2ME手机游戏:TimerTask与Timer类的应用
8.J2ME:手机归属地查询软件
9.J2ME中的GIF处理类
10.关于socket里chunk问题的解决
最新推荐文章:
1.分享关于j2mexmlReader的轻量级实现
2.J2ME的MVC2开源框架KBOX
3.J2ME的跨平台性了解
4.新手必读 详细介绍J2ME的基础知识
5.cookie技术在Java ME平台的应用与实现
6.J2ME中使用Canvas制作简单的游戏菜单
7.J2ME中读取Unicode和UTF-8编码文件
8.关于j2me game双缓冲实现探讨
9.Java ME平台中的URLEncoder实现类
10.J2ME学习笔记(5)—MIDlets中的图形编程
网管论坛交流:
·大家来开心一下吧---看了会很开心的东西-
·中国人不可不知道的知识
·@@小鹏◎◎小鹏同志与某位女明星亲密接触
·◎◎小鹏◎◎发现不明生物,居然正在交配
·[图文]^^^版主是什么?????
·泡论坛的女人是好女人
·做个“水性杨花”的女人
·献给mm俱乐部的所有mm
·深圳一集团企业电脑基础应用培训教程
·■■■■十一遊玩照■■■■■