`
Nighthaven
  • 浏览: 105841 次
  • 性别: Icon_minigender_1
  • 来自: GreatArcan
文章分类
社区版块
存档分类
最新评论
阅读更多
本文写于2008年2月,因为这样的介绍性文章一旦时间长了就毫无价值了,所以请转贴的时候记得注明时间,省得几年后还有人在这上面浪费时间。


这篇文章是基本上是基于我的论文开题报告,所以难免要打点官腔。因为我对手机游戏并不了解,所以本文关于java手机游戏的讨论会很少,而即使对于手机游戏以外的内容,我个人所能接触到的资源也是很有限的,讨论起来不免会有所偏颇,大家批判着看吧。
这些年由于Java技术的不断发展,Java程序的运行速度有了显著提升,同时硬件技术也在不断进步,从而使得java处理比较复杂的3d图形成为可能。Lwjgl,Jogl,Java3D等技术的出现,使Java语言可以方便的利用现在的显卡日益强大的硬件加速能力。实际上目前已经有许多基于java的2d和3d游戏,其中不乏大型多人在线游戏。
Wurm online一个多人在线网络游戏(06年的时候进入了收费运行阶段,不过你还是可以申请一个免费帐号进去看看):
http://www.wurmonline.com/
2007年javaone上jmokeyengine演示视频:
http://www.youtube.com/watch?v=ho_b18HRmGA&eurl=http%3A%2F%2Fwww%2Ejmonkeyengine%2Ecom%2F
一个比较老的视频2005GDC上java游戏演示视频:
http://www.youtube.com/watch?v=Pc3LxBIVaBs&feature=related

上面这些只是Java游戏的一小部分。然而,即使还有其它很多基于Java的游戏,相对于整个游戏产业来说,Java游戏社区仍然非常小,以至于其力量在手机游戏之外的领域几乎可以被忽略不计。但是实际上Java作为一种游戏编程语言和平台,这些年还是取得了长足的发展,在后applet时代走着复兴之路。
当然,Java可以做游戏,并不意味着Java就适合做游戏,那么:
基于java对于一个游戏来说到底意味着什么?
1,Java是一门经过充分发展,已经十分成熟的语言。
Java语言称霸企业级应用这么多年,事实证明了它非常适合于开发大型软件。当Java的运行效率不再是问题的时候,Jjava语言严谨、高抽象、可读性强的优势就体现出来了。这对于规模越来越庞大的游戏软件来说,有着不小的诱惑。
2,Java作为平台,极大的方便了游戏脚本的使用
对于游戏开发来说,由于涉及到比较复杂的情况(有时候甚至是美学问题),开发过程很多时候是一个不断修改的过程,可以方便的修改游戏内容是十分关键的。对于很多游戏引擎来说,都有自己编写的脚本解释器,用来解释一些自定义的游戏脚本语言(一般为命令式脚本,比如moveplayer(int x,int y),playersmile()之类的东西),另一些则提供了例如lua和rubby等的脚本语言来访问游戏引擎。由于其虚拟机特性,java本身就可以用来编写游戏脚本,目前也有例如beanshell、groovy等脚本语言可以方便的无缝的和java语言进行交互,这些都极大的方便了java游戏编程。
3,跨平台?
跨平台,每当比较java与其他语言的时候,总是要谈到跨平台。但是在java游戏领域,write once ,run everywhere,听起来更像是一个冷笑话。这个笑话有多冷呢?(手机游戏我不熟悉,但是确实有人用“痛苦”来形容开发运行在不同手机上的javame游戏)对于其他大多数java游戏来说,或者通过applet或者通过java web start来部署,这两种方式无一例外的都要用到浏览器。对于java web start来说,问题相对较小,程序员必须处理的问题主要是如何让非专业用户成功安装指定的jre版本的问题,虽然很麻烦,但是是可以解决的。对于applet来说,问题就变得复杂的多,很多问题只会在特定的操作系统配上特定的浏览器时才会出现,即使是同一品牌的浏览器,不同的浏览器版本也会出现不同的问题,同时这里还涉及到客户机默认是使用opengl pipeline还是directdraw pipeline的问题。而我们现在甚至还没有开始讨论当3d游戏需要使用底层图形api时的情况,无论是applet还是web start一旦在程序中使用了任何一种opengl的java绑定,客户机各不相同的显卡以及同一款显卡的不同驱动都会带来不同的问题,而这些问题是随着操作系统和浏览器的不同而不同的,操作系统数×浏览器数(web start不需要考虑浏览器)×显卡数×每款显卡平均的驱动版本数=噩梦。最后你不得不妥协于这样一个现实-----即使电脑在硬件上满足程序的要求,你也无法让你的程序运行在这些电脑中的每一台上,除非你的用户都是专业人士。
当然,其实现状并没有听起来那么糟糕,对于不使用java的大多数游戏来说,根本就只能运行在一个平台上,许多游戏对directx或者opengl的版本有要求,更不要提那些运行在家用游戏机上的游戏了,跨平台是整个游戏业的大问题,java只是像其他人一样没有把这个问题彻底解决掉而已,但仍然比其它技术做得要好。不过,值得一提的是,在那些不直接使用硬件加速的网页小游戏上,java确实在稳定性和方便安装上输给了flash;在家用机方面,java是0,而微软的xna(c#)可以跨xbox360和vista。
4,网络
Java一向强于解决网络方面的问题,在这方面,java主要有两个优势,第一是基于applet和java web start的游戏非常容易更新,不会像其他游戏那样需要用户手动下载全新版本;第二是java在网络交互的api相对比较友好,而对于大型网络游戏来说,分布式系统非常重要,这正是jcp的巨头们喜欢的东西,可能由于这是一个卖硬件的好机会,sun下了不少功夫开发了project dark star来做网络游戏服务端,由于这个工程还没有到1.0,所以现在也很难说具体好用不好用。
5,速度
这个没什么可讨论的,基于java的游戏肯定会比写得很好的c++程序慢,当然写一个好的c++程序所花费的庞大的薪水也是java不能比的。
总体说完,就具体说说:
当前在java游戏方面主要有哪些可以使用的技术
1,Java3D
作为sun公司较早推出的一项3d技术,是一种高度封装的api,构建在opengl和direct3d之上,可以说是最有名的java的3d技术。由于种种原因(api设计,面向的用户不明确),java3d一直没有办法流行,不久前java3d的团队宣布暂停对java3d新功能的开发,转而为JavaFX开发3d 渲染引擎。同时sun的另一个项目 project wonderland宣布将其渲染引擎由Java3d转为JMonkeyEngine。令人唏嘘的是sun的java3d再次进入尘封状态,大量基于java3d的程序和教程都面临一个非常尴尬的境地;令人高兴的是在这一领域终于有比sun做得更好的团队出现了。引用别人对此事的评价:Java3D is dead! Long live Java "3D"!
2, Lwjgl(http://new.lwjgl.org/index.php)
全名为light weight java game library。作为一个非官方的对java游戏的全面解决方案,lwjgl将游戏图形(opengl)、音效(openal)、控制输入集合为一,以成为java界的directx(不是direct3d)而努力。其在图形方面采用了opengl的java绑定,其函数与c语言版的完全相同,所以对于习惯opengl编程的程序员来说比较友好。目前有大量的java游戏和游戏引擎是基于lwjgl的,它可以说是java游戏社区最广为被使用的函数库之一。
3,Jogl(https://jogl.dev.java.net/)
Jogl是java对opengl的一个绑定,或者说是opengl接口的java实现,它是由sun支持的。其语法与opengl完全相同,api也紧跟随着opengl的版本进行更新,而Nehe的opengl范例程序大多数都有jogl版本。去年jogl正式通过jcp审核成为jsr231,是lwjgl的主要竞争者。值得一提的是,jogl项目的领导者Ken Russell曾经声明并不希望jogl成为jre的一部分,因为他认为这样会使jogl的更新周期与jre相同,从而变得过于缓慢。Ken Russell目前全力工作在新的java plug-in的开发上,而opengl的api也没有进行更改,所以现在的jogl版本将持续较长的一段时间。
4,Joal(https://joal.dev.java.net/)
java对openal的一个绑定,是java音效的一个解决方案。
5,Jinput(https://jinput.dev.java.net/)
java对非标准输入设备(游戏手柄,操纵杆)的解决方案。
6,JMonkeyEngine(http://www.jmonkeyengine.com/)
JMonkeyEngine是一个开源java游戏引擎,对底层高度封装,经过4年的开发,在去年的10月终于发布了1.0版本。在2007的javaone会议上发布了相当震撼的演示视频,从而广受关注,据说会场的许多屏幕特效也是由它完成的。在底层,JMonkeyEngine采用了lwjgl,而jogl可能会在2.0版本中得到支持。去年著名的网络游戏公司ncsoft(天堂系列,激战,英雄城市,Tabula Rasa等游戏的开发商)将JMonkeyEngine的三位主要开发人员招入麾下,也许不久的将来我们就可以看到这一引擎的商业版本。值得一提的是,在任职ncsoft之后,引擎的主要开发者声称现在有了更多的时间进行游戏引擎开源版本的开发,而目前JMonkeyEngine的开发速度也确实大幅提升,2.0本版可能在08年稍晚一些时候就会发布。此外,由sun开发的project wonderland不久前宣布将把其渲染引擎由Java3d转为JMonkeyEngine,使得JMonkeyEngine进一步受到广泛关注。
7,Project Darkstar(http://www.projectdarkstar.com/)
目前project darkstar为0.95版,是sun专门针对网络游戏的方面的应用所开发的。这个项目主要致力于解决大型游戏服务器的分布式应用问题,个人感觉类似于网络游戏应用中的j2ee。对于普通游戏的网络传输,project darkstar也给出了自己的解决方案。但是不少人认为darkstar并不致力于简化普通游戏的网络应用,因为这个项目主要是对大型网络游戏服务器的分布式应用进行解决,从而促进sun自己生产的服务器的销售。当然我并没有真正使用或研究过它,只是道听途说,很有可能有错误。
8,Project Wonderland(https://lg3d-wonderland.dev.java.net/index.html)
Sun开发的一个3d虚拟世界构建工具,sun使用这个工程制造了一个虚拟工作环境MPK20,物理上处于不同大陆的人们在这个虚拟世界中可以在一间屋子里协同工作,这个项目的演示视频非常不错,建议去它的主页看一下。
值得一提的Java游戏
国内有一个叫《海天英雄传》的2d网络游戏号称是用java实现的,地址:http://herogame.njoys.com/,这款游戏几年前最鼎盛的时期也没什么名气,目前这个游戏基本已经处于生命周期的最后阶段了,可能不久后就会停运。
Wurm online一个多人在线网络游戏,大多数商业版本的java游戏实际上都是将java代码预先编译成字节码,因而不需要客户安装java虚拟机,这个游戏是少有的几个确实要求客户安装java虚拟机,而同时又运营的相当不错的游戏。地址:http://www.wurmonline.com/
未来
目前来看java游戏并没有出现显著的上升趋势,除手机游戏外,java游戏基本处于蛰伏状态。未来java游戏可能迎来几个契机:
1,Java SE 6 Update N (之前被叫做 "Consumer JRE")的发行。
在这个新的版本中,sun号称其将让java升级更方便,部署更简单(方便的探测客户端的java版本,并安装程序需要的版本),用户将能够只安装jre中他们需要的部分,对于暂时用不到的部分可以等到用的时候再安装,同时加速java虚拟机的启动速度(实际上就是在电脑刚开机的时候就启动java虚拟机,而不是在第一次运行java程序的时候),增加对swing的硬件加速支持。而新的java plug-in将大幅增强applet的稳定性,可靠性,将允许applet更改自己可以使用的内存大小,选择使用哪个特定版本的jre执行。
实际上一旦applet变得稳定,java面对flash将体现出巨大的性能优势,因此Java SE 6 Update N的发布将是java游戏界未来一段时间内最大的契机。
2,JavaFX的发布
JavaFX的目标是让JavaFX像flash一样易于开发,如果这个项目真的能成功的话,对于java游戏的影响将非常巨大(不过由于缺乏flash所拥有的方便的开发工具,我对JavaFX成功的可能性深表怀疑)
3,Sony或是任天堂决定在家用游戏机上支持Java
这个的希望非常渺茫的,但是考虑到微软的XNA做到了跨windows和xbox360平台,也许sony在ps3屡遭败仗的情况下会考虑一下支持Java。实际上现在的家用游戏机就是电脑,很多发烧友已经可以在ps3和wii上运行java程序了,只是目前java无法使用这些机器的硬件加速功能。
4,手机进一步发展
目前看来移动设备的功能已经越来越强大,手机的性能也许在不久的将来可以达到电脑的水准,手机游戏也将占据游戏市场越来越大的份额,那么由于手机的操作系统种类繁多,跨平台的Java自然也会越来越受青睐。
分享到:
评论
47 楼 ray_linn 2008-02-29  
Nighthaven 写道
liangguanhui 写道
引用
说一个最明显的,至少java可以通过opengl函数调用显卡的硬件加速作出相当绚丽的3d效果,falsh不行

据我所知,java要调用opengl,由于jdk标准没有这方面的功能,所以需要JNI的支持,然而,在网络环境下,估计这个是不可行的。


晕,自然是可行的。https://jogl-demos.dev.java.net/applettest.html,这个例子就是。不过会弹出一个框要提示用户可能有危险,是否要信任软件发行单位,这的确是容易吓跑一部分用户。



jogl也是jni的,人家写的游戏可能2.0CPU 就能跑了,用上jogl可能就需要2.5CPU了。。。
46 楼 Nighthaven 2008-02-29  
liangguanhui 写道
引用
说一个最明显的,至少java可以通过opengl函数调用显卡的硬件加速作出相当绚丽的3d效果,falsh不行

据我所知,java要调用opengl,由于jdk标准没有这方面的功能,所以需要JNI的支持,然而,在网络环境下,估计这个是不可行的。


晕,自然是可行的。https://jogl-demos.dev.java.net/applettest.html,这个例子就是。不过会弹出一个框要提示用户可能有危险,是否要信任软件发行单位,这的确是容易吓跑一部分用户。
45 楼 liangguanhui 2008-02-28  
引用
说一个最明显的,至少java可以通过opengl函数调用显卡的硬件加速作出相当绚丽的3d效果,falsh不行

据我所知,java要调用opengl,由于jdk标准没有这方面的功能,所以需要JNI的支持,然而,在网络环境下,估计这个是不可行的。
44 楼 wutao8818 2008-02-28  
感谢楼主的介绍,对游戏行业有了些了解。
43 楼 Nighthaven 2008-02-28  
ray_linn 写道
第一次听说Java的性能超过C的...我只知道,在java最优化的条件的也就达到C 80%的性能。。。


虽然在一些条件下java的性能确实可以超过c,但是我从来没有表达过java的性能比c强,我说的是java和flash相比。
42 楼 Nighthaven 2008-02-28  
C3PO 写道
Nighthaven 写道
实际上java在性能上的优势还是很大的,这也给java加分不少,


哪里的出来的结论?能给个出处么?或者有没有benchmark?

Nighthaven 写道

总的来说,如果sun和微软合并的话,我看好java称霸网页小游戏。但以目前的情况来看,我只能说java有一定机会。

ps:其实我看好java做大型游戏的,不过大多数人都在用0.1秒思考一下之后,就下了否定的结论。


1. “如果sun和微软合并的话”,前提极度荒诞
2. “称霸网页小游戏”,网页小游戏不赚钱,没人在乎称不称霸
3. 没人在乎你“看好”“不看好”,这类话还是少说。在这里提出观点请拿出真凭实据,谢谢



我主贴以及之前的回复用了n多字来证明我为什么看好。sun和微软合并只是句玩笑而已,你需要点幽默感。网页小游戏怎么会不赚钱呢~~~这是从何说起?

性能方面,我在多个地方看到过,具体出处已经不记得了,但是确有其事。说一个最明显的,至少java可以通过opengl函数调用显卡的硬件加速作出相当绚丽的3d效果,falsh不行(当然,虽然flash不行,我到是见过不少其它ie控件可以的,所以这点上java也没什么特别了不起的),java通过applet和web start可以使网页运行的小程序和java桌面程序(虽然java桌面程序也不见得快到哪去)达到同样的性能。


比如这个效果,https://jogl-demos.dev.java.net/applettest.html,如果使用falsh的话就会慢很多,因为flash只能使用软件加速来实现3d效果。
41 楼 ray_linn 2008-02-28  
第一次听说Java的性能超过C的...我只知道,在java最优化的条件的也就达到C 80%的性能。。。
40 楼 Nighthaven 2008-02-28  
网页小游戏
开发人员编程能力:java>flash
开发人员美术能力:flash>java
开发工具易用度:flash>>>>java
上手难度:java>>flash
程序性能:java>flash
虚拟机大小:java(16m)>flash(2m)
下载\安装难度:java>flash
稳定性:java(applet)<flash   java(webstart)≈flash
普及程度:flash>>>>>>>>>>>>>>>>>>>>>>>>java
总的来说sun寄希望于javafx来改变java比flash难上手的问题,但是adobe都做开发工具这么多年了,希望不大,不过考虑到netbeans也是在不被看好的情况下异军突起,我承认sun还是有一定的机会成功地。java 6 update N(consumer jre)的出现可以在一定程度上解决下载安装困难和applet不稳定的问题,当然web start现在就已经很稳定了。实际上java在性能上的优势还是很大的,这也给java加分不少,不过对性能要求比较高的游戏,似乎也就不能算网页小游戏了?

总的来说,如果sun和微软合并的话,我看好java称霸网页小游戏。但以目前的情况来看,我只能说java有一定机会。

ps:其实我看好java做大型游戏的,不过大多数人都在用0.1秒思考一下之后,就下了否定的结论。
39 楼 ray_linn 2008-02-28  
neora 写道
ray_linn 写道
neora 写道


严重同意。Java程序员的总体数量和总体素质实力要高于flash开发群体,在开发端是有优势的。



这更象是java程序员的意淫吧?


我没说平均实力,是总体实力。毕竟Java程序员的数量太大了。


有游戏开发经验的又有多少? 80%的java程序员估计连如何检测碰撞都不知道吧?
38 楼 neora 2008-02-28  
ray_linn 写道
neora 写道


严重同意。Java程序员的总体数量和总体素质实力要高于flash开发群体,在开发端是有优势的。



这更象是java程序员的意淫吧?


我没说平均实力,是总体实力。毕竟Java程序员的数量太大了。
37 楼 ray_linn 2008-02-28  
liangguanhui 写道
以前的游戏引擎用c或者c++编写,这样就导致购买这个引擎的游戏用c或者c++编写,日积月累,游戏开发自然就成了这两个的天下。甚至有些游戏引擎是用c编写,使引擎不必局限在c++。可能会有人说用c不就没有了OOP?如果你用过gtk+,这个问题就不难理解。


这是原因吗?? 是因为C的硬件访问能力和高效的执行效率才使C成为引擎的首选语言吧?oo有那么重要么?
36 楼 ray_linn 2008-02-28  
neora 写道


严重同意。Java程序员的总体数量和总体素质实力要高于flash开发群体,在开发端是有优势的。



这更象是java程序员的意淫吧?
35 楼 ray_linn 2008-02-28  
liangguanhui 写道

掌上游戏:没什么好说的,基本上是J2ME的天下。

掌上游戏什么时候是J2ME的天下了???Nokia的游戏大部分还是C++写的吧?以Nokia的份额(外加MS的windows mobile) 推算一下,J2ME啥时候称王称霸了?

在欧盟,北美,日本和中国之外的亚洲,Symbian才是王道,80%的market share,symbian的王道开发工具C++才是王道中的王道。
34 楼 neora 2008-02-28  
fight_bird 写道
Java做网页内嵌游戏还是不错的,比Flash强,可惜Sun那个精简版的jre插件就是拿不出来,jre的浏览器插件只要能小于1M,Java做网页游戏就能轻松盖过Flash。

普通PC端游戏Java肯定没戏,但网游服务器端Java还是胜任的。


严重同意。Java程序员的总体数量和总体素质实力要高于flash开发群体,在开发端是有优势的。但jvm的问题直接困扰客户端执行环境。只要解决jvm的大小和安装问题,java applet崛起只在朝夕。但...,似乎Sun很难搞出这么个东西。
33 楼 liangguanhui 2008-02-22  
以前的游戏引擎用c或者c++编写,这样就导致购买这个引擎的游戏用c或者c++编写,日积月累,游戏开发自然就成了这两个的天下。甚至有些游戏引擎是用c编写,使引擎不必局限在c++。可能会有人说用c不就没有了OOP?如果你用过gtk+,这个问题就不难理解。
32 楼 liangguanhui 2008-02-22  
对于四类游戏:掌上游戏、网路小游戏、家用游戏、电脑游戏。

掌上游戏:没什么好说的,基本上是J2ME的天下。

网路小游戏:基本是Flash的天下。至于Java在网络小游戏相对于Flash有什么劣势,我个人认为有三点:(1)flash插件在IE下是ActiveX插件,可以自动下载,并且好像IE6已经预装Flash6的插件了,而jre则需要用户自己安装。(2)主观上的安全性问题。我并不是说Flash比Applet安全,而是主观上。基本上,很多很多的教材都说Applet可能会存在安全问题,建议关闭浏览器的Applet。(3)缺乏一个强大的GUI开发工具。由于Java的IDE偏重应用的开发,所以在这方面是被Flash远远地抛在后面。

家用游戏:这个上面也有人说过,家用游戏没有一次编译跨平台可能,也没有跨平台的需要,所以Java的跨平台在这里没有什么吸引力。

电脑游戏:我没有用过Linux或者Unix玩过游戏,都是工作需要使用。目前,绝大多数游戏基本上都是在Windows平台下,而且dx已经成为事实上的工业标准。其实我觉得很多人都有一种误解:Java可以跨平台,而C或者C++则不可以。其实这样观点并不完全正确。Java的跨平台是一次编译,多平台使用;而使用适当的库和预处理的C、C++,则可以一次编写,多平台编译、使用。例如GUI库就有gtk+,Qt,wxWidgets,而网络库则有ACE等,而标准库则有stl,还有boost等。我相信一些大的游戏公司完全有能力编写相关的跨平台的游戏库,之所以没有这样做,就像上面的家用游戏一样:没有那个必要、没有那个需求。

作游戏的关键不是跨平台,而是赚钱。有些时候,在多个平台发布可以多赚钱,但有些时候就未必可以。
31 楼 fins 2008-02-22  
好的java开发的游戏还有很多 楼主列举的数据不够全面啊 呵呵

另外 楼主说的那些契机我觉得都是不java游戏开发的契机
java界应该像微软学习 搞一个专门开发游戏的框架和工具出来 (微软的 XNA )
这个才是未来的希望之所在
30 楼 mathgl 2008-02-21  
mainstream opengl library is implemented by c. other languages simply wrap and invoke it.
29 楼 galaxystar 2008-02-21  
dx规范的推广非常成功,主要是由微软做主。
28 楼 ssuupv 2008-02-20  
试用wurm 游戏,感觉java开发大型游戏,在技术没什么问题啊.

相关推荐

    java游戏编程初步.doc

    - **Java游戏现状**:虽然目前主流游戏开发更多依赖于C或C++等语言,但在Java平台上同样可以开发出高质量的游戏作品。 #### 二、Java游戏编程环境搭建 - **Java JDK安装**:确保计算机上已安装Java JDK,这是进行...

    基于java的打砖块游戏毕业(设计)论文.doc

    一、选题目的与Java游戏现状 选择开发基于Java的打砖块游戏,主要是因为打砖块游戏具有简单易懂的规则,适合初学者进行游戏编程实践。同时,Java语言以其跨平台性、面向对象特性和丰富的库支持,成为开发游戏的理想...

    基于java的教育类游戏开发与设计-开题报告

    通过JAVA设计一个教育类网页游戏 此游戏的主要功能有: 1、主菜单页面要有进入游戏,退出游戏,游戏说明等主要功能。 2、玩家可以选择进入游戏,然后选择初级,中级,高级三种模式进行挑战, 每种模式对应不同的难...

    JAVA手机游戏设计文献综述

    #### 三、JAVA小游戏的发展现状及发展前景 ##### (一)发展现状 目前,虽然原生开发框架(如Unity、Unreal Engine)已成为主流,但Java仍然保持着一定的市场份额,特别是在一些新兴市场中。许多基于Java的移动...

    关于JAVA技术的现状及其发展方向的研究.pdf

    它的逻辑性强,应用广泛,兼容性高,能够为各种计算机软件提供编程支持,如游戏、办公软件以及网页制作。Java的移植性和复制性使其在设计网页时成为必要条件,同时Java也是许多程序员在开发软件时的首选编程语言。 ...

    Java游戏开发现状分析和走向

    Java游戏开发现状分析和走向 Java作为一门广泛应用于企业级应用的编程语言,近年来在游戏开发领域也逐渐崭露头角。随着Java技术的进步,尤其是运行效率的显著提升,使得Java能够处理复杂的3D图形,如Lwjgl、Jogl和...

    Java游戏开发 连连看

    简述Java游戏开发现状和选题背景; 2.了解Java在游戏开发方面的相关技术与环境; 3.设计实现游戏计分功能:每消去成对图片时加10分; 4.设计实现游戏重置功能:玩家遇到困难难以消除下一对图片时,可按下”重置...

    基于java的迷宫游戏设计毕业论文

    本文从游戏的背景研究和发展现状开始,详细描述了整个游戏的制作过程。对实现 功能以及操作过程进行了重点讨论,开发用到了 Java类库中的许多包以及其中的类, 例如 java.util包,java.lang包,java.awt包等等,稳重...

    java[游戏必备]

    JAVA目前在手机上应用最多的就是JAVA游戏。 Java也号称是能跨平台使用的语言,这主要是因为Java本身被编译之后,并不是直接产生可执行的码,而是产生一种中间码叫作 ByteCode,这种码必需在透过 Java 的直译器来解读...

    【计算机毕业设计】基于JAVA的连连看小游戏源代码

    通过本项目能帮助你掌握Java小程序的工作原理和使用方法、熟练掌握Java的事件处理机制、简述Java游戏开发现状和走向、了解AWT的基本体系结构,掌握窗口的基本原理、了解Swing的基本体系结构,掌握Swing组件的使用...

    基于Java的坦克大战游戏的设计与实现设计软件程序源码+word毕业论文文档.zip

    游戏通过分析JAVA游戏开发和代码设计,用Eclipse软件开发了坦克大战游戏,运用接口技术,使一个类能够实现多个接口,使用套接字Socket来完成client端和server端的连接。玩家通过连接访问进入游戏,通过操纵坦克来...

    【文献综述】基于JAVA的俄罗斯方块游戏设计与实现.pdf

    【文献综述】基于JAVA的俄罗斯方块游戏设计与实现 在计算机科学与技术领域,设计和实现基于JAVA的俄罗斯方块游戏是一个受欢迎的实践项目,因为它不仅深受玩家喜爱,而且具有教学价值。俄罗斯方块游戏以其简洁的游戏...

    Java游戏设计打飞机程序(源代码+WORD论文).zip

    Java游戏设计打飞机程序(源代码+WORD论文) 1.1 手机软件现状 在信息社会中,手机及其他无线设备越来越多的走进普通百姓的工作和生活,随着信息网络化的不断进展,手机及其他无线设备上网络势在必行。但是传统手机...

    Java游戏基础.pdf

    1.1.1 手机游戏现状 手机游戏的普及率极高,尤其是在公共交通工具上。根据2008年的数据,中国手机用户已超过6亿,市场潜力巨大。开发技术如K-JAVA和BREW游戏支持付费下载,其中K-JAVA由于中国移动的市场主导地位而...

    JAVA游戏毕业设计源码与论文

    1.1 手机软件现状 在信息社会中,手机及其他无线设备越来越多的走进普通百姓的工作和生活,随着信息网络化的不断进展,手机及其他无线设备上网络势在必行。但是传统手机存在以下弊端: 1. 传统手机出厂时均由硬件...

    Java游戏基础.docx

    1.1 手机游戏现状 手机游戏因其便携性和普及性,已经成为人们日常生活的一部分。根据2008年的数据,中国手机用户数量超过6亿,并持续增长。手机游戏开发门槛较低,开发者可以通过开源平台如J2ME获取技术资料。销售...

    JAVA贪吃蛇游戏设计文档.doc

    2.4 **研究现状** - 贪吃蛇游戏作为经典的休闲游戏,已有多种实现版本,但使用Java实现可以提供独特的学习和创新机会。 2.5 **研究目的** - 目的可能是为了提高开发者的游戏编程技能,理解Java语言在实时交互应用中...

    Java游戏设计打飞机程序(源代码+论文)

    Java游戏开发的现状 提到游戏开发,更多地会提到C和C++,这两个语言在游戏开发中有稳定和高效的表现。作为主流开发语言的Java是否也能在游戏开发方面展现良好的一面呢?从理论上讲,Java语言当然能被用来开发游戏...

    基于Java的飞机大战游戏的设计与实现设计软件源码+word毕业论文文档.zip

    基于Java的飞机大战游戏的设计与实现设计软件源码+word毕业论文文档。基于Java的飞机大战游戏主要需要我方飞机和敌方飞机,还有子弹,特殊nPC,开始背景,结束背景,以及背景音乐。我方飞机可以随意移动,敌方飞机无...

    毕业论文java俄罗斯方块游戏

    ### 毕业论文java俄罗斯方块游戏 #### 摘要 在当前电子信息高速发展背景下,电子游戏已融入日常生活中,成为广泛受欢迎的娱乐形式。然而,游戏设计融合了先进的技术,涉及复杂的设计、艺术、声音和软件开发,因此...

Global site tag (gtag.js) - Google Analytics