java游戏开发有免费的java开发工具吗,有人对这方面比较了解吗?

当前访客身份:游客 [
当前位置:
网游, 非单机版。
客户端和服务器都是纯Java版的.
画面流畅程度完胜盛大的原版, 跑一步地图卷动48次,是电影级的。细节不多说了
发这个帖子的主要目的是说明:
&&&&&&&&用Java可以做任何游戏, Java速度慢什么的都是扯淡...我这程序已经和游资网上N个C++达人的同类产品比较过了, 性能完胜。 (所以就算C++快,也需要写程序的人优化的好才行)
视频只是演示了几分钟道士操作。虽然只有我一个用户在线,但是对于服务器而言, 还控制了12000+个怪物的智能行为, 姑且算是很多人在线了。(当然, 怪物和用户还是不相同的)。
Ps: 视频不够流畅,是我的录像软件FPS太低造成的, 游戏本身比这个要强的多.
下面是截图:
共有113个评论
<span class="a_vote_num" id="a_vote_num_
<span class="a_vote_num" id="a_vote_num_
楼主nb啊 &全都是自己写的?
<span class="a_vote_num" id="a_vote_num_
<span class="a_vote_num" id="a_vote_num_
对游戏开发不太了解。
但是楼主啊,你这是10年前的UI,现在游戏都是3D呀,完全不是一个层次的呀
--- 共有 3 条评论 ---
原谅我,我一直是玩暗黑的,传奇就是下完了玩一回儿就删除的游戏。
(3年前)&nbsp&
现在的大型游戏,都是高清的CG片段占空间啊,精简后其实没多少
(3年前)&nbsp&
别被技术所迷惑,做出来的产品好玩才是硬道理,你注定是被深陷到技术里。
现在所谓的大型游戏,好不容易下载几个G的客户端,玩不到半个小时 ,就吐了一地,赶紧删除。。
传奇这个游戏百玩不厌。
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
膜拜一下, 求开源
这得下多大的功夫,多大的毅力!!!
<span class="a_vote_num" id="a_vote_num_
牛逼啊,膜拜之
<span class="a_vote_num" id="a_vote_num_
<span class="a_vote_num" id="a_vote_num_
回忆啊回忆
<span class="a_vote_num" id="a_vote_num_
啥时候来一个《仙剑奇侠传》的java版本,期待中。撸主加油
<span class="a_vote_num" id="a_vote_num_
木有源代码,只是为了炫耀吗?
更多开发者职位上
有什么技术问题吗?
天天向上...的其它问题
类似的话题当前访客身份:游客 [
当前位置:
网游, 非单机版。
客户端和服务器都是纯Java版的.
画面流畅程度完胜盛大的原版, 跑一步地图卷动48次,是电影级的。细节不多说了
发这个帖子的主要目的是说明:
&&&&&&&&用Java可以做任何游戏, Java速度慢什么的都是扯淡...我这程序已经和游资网上N个C++达人的同类产品比较过了, 性能完胜。 (所以就算C++快,也需要写程序的人优化的好才行)
视频只是演示了几分钟道士操作。虽然只有我一个用户在线,但是对于服务器而言, 还控制了12000+个怪物的智能行为, 姑且算是很多人在线了。(当然, 怪物和用户还是不相同的)。
Ps: 视频不够流畅,是我的录像软件FPS太低造成的, 游戏本身比这个要强的多.
下面是截图:
共有113个评论
<span class="a_vote_num" id="a_vote_num_
首先,要说lz真的很牛。
另外,关于java适合不适合开发大型游戏的问题,我觉得最大的障碍是用java开发的客户端总是要先启动jvm,这个会影响游戏的启动速度,体验不好。
至于没有使用java开发的游戏这一现象,我到觉得还有一个很重要的原因,就是游戏行业是一个非常保守的行业,会尽量使用原来已经稳定的代码,而老的代码,基本都是c++的吧,除非有非常强烈的理由,否则是不会轻易换的。
<span class="a_vote_num" id="a_vote_num_
如果Minecraft还不具说服力,那就再看看一个Web-based Java Applet游戏平台RuneScape,同样是一个极其成功的案例:
《RuneScape》是由英国Jagex采用Java开发的基于网页的大型多人在线角色扮演游戏,在世界上很受欢迎,尤其是英国及美国。
<span class="a_vote_num" id="a_vote_num_
引用来自“eechen”的答案引用来自“擅长被美女推倒”的答案引用来自“eechen”的答案引用来自“擅长被美女推倒”的答案
引用来自“eechen”的答案
引用来自“擅长被美女推倒”的答案
做东西要以赚钱为目的,用java做大型游戏很难卖出好价钱,因为这根本不会有老板投资做商业化运营,就算做出来 也就自己无聊玩玩,这纯粹浪费时间,php还能做桌面呢,但是做出来东西要有人要么,能赚钱么,做什么就用什么工具,做游戏就用C++,做web你可以用java/php,非要用java做大型游戏,只是无聊自己玩而已,
相信游戏控都知道有那么一个Java Platform的3D游戏&我的世界&Minecraft,GameSpy给予五星满分评价,绝对的热门游戏!
Minecraft不赚钱,别秀逗了,横跨PC/Mac/Linux/Android/iOS/Xbox平台,不赚钱,你去开发?
http://zh.wikipedia.org/wiki/Minecraft
Minecraft使用了引擎Lightweight Java Game Library(LWJGL),
LWJGL包含了对OpenGL的封装,引擎自身使用Java和C开发,采用宽松的BSD授权.
http://en.wikipedia.org/wiki/Lightweight_Java_Game_Library
你怎么拿PHP做桌面跟Java做游戏比,我觉得拿Python做桌面跟Java做游戏可能还比较恰当. 事实上用Java做游戏服务器端逻辑多的是,做游戏客户端的确实比C++少,但不代表不能做.
最后,支持楼主!
java做大型游戏不赚钱,不是说说的,这是事实,国内大型游戏公司,自己去做调查,你投资过游戏运营不,你敢拿一款大型JAVA游戏投资看看,亏不死你,这些东西不能看网上吹的,很简单你直接去找你老板问他敢不敢投资就行了,我们投资成功的大型游戏还真没见过java做的,至于java做页游或手机游戏,这能赚到点钱是真的,你拿着2个java例子,去多找个C++的例子比下,最多算半成品而已,
我只举了1个例子,使用引擎LWJGL的游戏Minecraft,不是2个,而且这个游戏相比C++游戏也绝非你想象中的半成品,没玩过就不要乱说了,另外有一个使用Irrlicht引擎和C++写的开源游戏Minetest,很像Minecraft,你看有谁玩?
说实话敢发这样的帖子的也就是java程序员,既没开发过大型游戏,也没运营过大型游戏就敢发这样的帖子,俺还真佩服,所谓无知者无畏,也不怕业内的兄弟笑话,赚不赚钱,俺已经说过了,不要看网上吹的,就去找你老板问他敢不敢运营,再多的话,上头有个兄弟,估计是业内的,俺就直接复制了,不打字了,
楼主,你的水平很好,只是你走错了路子。如果你的视野更开阔一点,不要眼里只有Java,你肯定能走的更远。
先说适用范围,用Java写不是不可以,只是只能用来写上层逻辑。你这个2D的,只有纹理贴图,在商业级的产品里,真的只是一些上层逻辑,用任何语言都可以做,用Java来做,只是一个蹩脚的选择而已。客户端如果需要做出一点效果来,比如 Particle ,或者 Shadow,用纯Java是无法胜任的。如果硬要用Java来做,也只能是用C来写关键部分,然后bind一个Java的JNI来写。例子就是android上的游戏,Java只是一个wrapper,关键的东西还是C/C++。
再说灵活性,做一般的服务器需求,有丰富的库和框架,Java还可以胜任。但是如果要商业级,产品级的游戏,Java写起来又显得太罗嗦,到时候JAVA的开发周期会比C++短吗,这个是一个仁者见仁的问题。如果你有大量的东西需要策划去做,你还觉得Java是一个可行的方案么?脚本策划会写JAVA代码吗,不会。但是脚本策划会写Lua代码。
最后再说性能,就拿web服务器来说,nginx + Lua 和 Apache。 谁性能高,不多说了吧,虽然普通的web服务 Apache足以。参考TEngine和OpenResty。
最后,在实际项目里。可能拿JAVA一门语言和 C + Lua 两门语言一起比,不太公平。但是,C + Lua两门语言的学习成本有JAVA高吗?主程写底层C,新人写Lua。为了达到灵活的需求,Java那些厚重的抽象层,和简单的脚本比起来。不比了,比多了都是泪。
上面提到的MC, MC无疑非常成功,Java功不可没。但是持续关注MC,你会发现,新版本的MC xbox360 (XNA C# + C++ ) 。 MCPE (Android C++, IOS OOC),你有再看到Java的身影么? 为什么后续版本没有继续选择Java? IOS 不支持Java就算了, Android呢?Java可是Android开发的首选语言 ?为什么MC不选择Java呢?
PS:我也够无聊的了,这是第一次参加语言论战。
想起两个个笑话。老梗了。
一个女神和一个程序员在一起,女神说:“你要是让一群程序员吵得不可开交的话,今晚我就和你走。”程序员说了一句python是世界上最好的语言,接下来就吵起来了,等到之后大家吵得不可开交的时候女神告诉程序员,今晚上我是你的了。程序员说道:“你回去吧!,我必须说服他们Python是世界上最好的语言”。
一群男程序员酒后乱逛,正要集体侵犯一个女子。女子见势不妙,问:那你们说最好的 文本编辑器是哪个?程序员们就地讨论了三天三夜不欢而散,女子趁机顺利脱身
虽然Minecraft跨平台,但是GameSpy是以PC游戏给了Minecraft五颗星,正是在PC上火了,才会考虑迁移到移动平台.为了性能,Android上用C++完全合理.Minecraft支持Python Script,同样可以扩展.
还有这不是语言之争的问题,这是Java能不能用来开发游戏的问题,如果有人说Java不能开发赚钱的游戏,不能写游戏服务器端逻辑,我想就算是一个不玩Java的人也不会同意. 好吧,你也很无聊,来看评论。 - -#。
Java当然写的产品当然能赚钱,只不过是看这个钱赚的舒不舒服了。对一个程序员而言,能轻松的赚到钱(维护成本低,扩展型好,当然这个东西是和设计有关和语言无关的)才能算舒服吧。
我的观点是,Java没有成熟的服务端解决方案(框架),也就意味着你需要做更多的基础工作,当然大牛用什么都无所谓。反观其他语言,比如C++有出名的ACE。连JS都有一个Pomelo(基于Node.js)。 Java呢,鄙人孤陋寡闻,没听说过。
还有一位同学提到,游戏开发是相对保守的。其实游戏行业不是保守,是因为做的东西都很稳定了,没有必要去频繁更新。用一些旧的但是稳定的技术,不能算保守。反而很多游戏开发人员是勇于尝试探索的,比如 Erlang在游戏服务端领域貌似受到重视了?
PS: 上大学的时候,用了1周,写过android应用,那时android最新版本才1.5(http://download.csdn.net/detail/ysleepers/2537506),接触过Java,开发效率真的没话说。不过从那之后就很反感Java,没什么特别的原因,就是 函数名字太长了。读着累。
--- 共有 5 条评论 ---
你们在逗我吗?java函数名长?你没看OC的函数名?
(3周前)&nbsp&
我太特么佩服我自己了 我把你们的对话看完了!
(3年前)&nbsp&
java不适合做服务端? 那java做客户端更难了.看过java语法,可以举例说下应用场景吗?
(3年前)&nbsp&
回楼上, 那是因为你非要遵守这个规矩,其实你用汉字都没问题,
只要你愿意
(3年前)&nbsp&
最后一句不能更同意了,Java的设计者难道就没想过适当缩短一下方法名长度么,动辄两三个单词,太痛苦了
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
Java不适合开发大型游戏个人认为最大的弊端一个是Runtime library,比较臃肿,且天朝windows用户估计装机量比.net framewrok要少,二是jit的特性,跨平台对于游戏开发来说没有一点好处,反而背负了跨平台的缺陷(ByteCode).最后一点是GC,大型游戏对于资源和内存的控制都是细致入微,C++都要特意写自己的内存分配器和自己的资源管理策略.我不知道Java的GC做得如何,但是GC发生时间一般无法预知,在渲染时发生GC从而发生卡顿现象我想玩家都不愿意接受.小品级别的游戏除外.另外传奇是用Delphi写的,官方/私服也大都是Delphi,很少有人改成C++,一是工作量,二是Delphi写游戏要比Java更适合,效率也很高.所以先入为主也很重要.
还有很重要的一点是Java相对C++来说好反编译的多,否则估计楼主就直接放jar了而不是视频展示了,做出的游戏不能很好的保护源码对于Java来说也很头疼.
<span class="a_vote_num" id="a_vote_num_
& @&我做了2年的客户端,刚开始学一些server的基本的东西。有一个简单的做游戏服务器的想法,看起来很傻,你们帮参考下可行不,先谢过。 & 我想,既然像nginx+Lua这样的web server可以处理超高的并发量。为什么游戏的服务端不能直接使用这些作为底层框架呢。? 比如nginx+Lua的方案,通过nginx提供的share memory 存玩家的状态,然后玩家的行为直接用Lua脚本来写。
--- 共有 2 条评论 ---
像 我是Mt 那样的手游,通过良好的设计,好像没有要求长连接。另外二进制数据结构完全可以直接使用google protocol buffer这样封装一下成rpc。如果不是wow那样重量级的端游,手游可行吗?
(3年前)&nbsp&
支持大并发量是游戏服务器的一个基本要求,当然还要合理的设计和布局演变成集群架构,保持TCP长连接,处理私有协议二进制数据包等等.Web Server除了并发量外没有和游戏服务器太多的交集,除了外围的服务,核心架构基本都是要靠自己实现的.可以看看BigWorld的实现方案,据说是世界一流的MMORPG服务端实现方案.
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
楼上有没有怀疑过3000帧是有问题的,即便你测是看到的就是3000帧
,假如一个 这么大的平面, 需要的色彩大约是4M (RGBA) , 不考虑其他因素,
4M&3000= 12G,(内存到显存的速度能达到12G每秒????) 还不说有很多地方重复贴图,也就是说C++能够在1秒内在内存生成
12G数据, 并且传递给显存, 还要将它画出来。&
难道真没问题吗? 还有你的方法能看到内存到显存的数据交换?这3000帧难道不可能是因为你重复贴图,对方发现你你干的同一件事情,根本没真的工作?
还有 电影只有25帧就很流畅了,人眼超过“120”帧, 帧越高效果越烂。
你们都说你们写的C++有多快,我这台机器, 市面上的C++,3D游戏基本跑不起来, 巨卡。
真感觉不到快。
--- 共有 9 条评论 ---
如果帧数抛却刻意锁屏,因为服务端计算,网络延迟,本机集显等等因素造成这点FPS,那只能说客观因素或者资源没有调配好.但渲染256色画面,一个背景+几个人物在现在的一般机器用软渲染都能达到100FPS.LZ的的确偏低了.既然LZ是要证明Java写游戏不比C++差,那么原谅我在FPS上啰嗦了.
(3年前)&nbsp&
: 这里只假设单机,没有考虑服务器等情况,也假设显存512M,1000人同屏只是渲染测试(很多是重叠)并没有太大实际用途.另外帧数所的3000FPS的确是计算有误,因为我的引擎默认是开启vSync,所以计算帧数是以平均渲染一帧的时间除以时间得到,再低帧数状态下越准确,再渲染能力多余的状态下就误差很大.实际不锁屏测试基本上有1000FPS.
(3年前)&nbsp&
打了很多错别字。
1000人互殴网游假设中:
假如每人每秒发起1次攻击, 需要服务器 "每秒"100万通信, 不是每天.
(3年前)&nbsp&
当然, 第2点是假设网游, 而你是假设单机, 我在这里可以期待你的 Exe。
对于我之前的假设, 你可以去查下, CPU到内存每秒最多交互多少数据, 内存到内存, 内存到显存。
还有, 我并没有对你的1000帧否定,这是有可能的, 只是需要看看EXE。
(3年前)&nbsp&
1:这游戏一个屏幕内只能容纳不到400人, 那么1000人如何互殴
2:如果网游, 1屏幕内如果有1000人互殴,每个人的动作,掉血等等就需要其他人看到, 假设每秒钟通行1次, 那么1000人每个都将数据发送给服务器, 服务器会广播给其他的1000人(999人),
那么需要服务器 每天 完成 100次消息发送。
换句话讲,传说中的TPS 1000万!!!这是单台服务器。
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
引用来自“Tangsleepers”的答案引用来自“eechen”的答案引用来自“擅长被美女推倒”的答案引用来自“eechen”的答案引用来自“擅长被美女推倒”的答案
引用来自“eechen”的答案
引用来自“擅长被美女推倒”的答案
做东西要以赚钱为目的,用java做大型游戏很难卖出好价钱,因为这根本不会有老板投资做商业化运营,就算做出来 也就自己无聊玩玩,这纯粹浪费时间,php还能做桌面呢,但是做出来东西要有人要么,能赚钱么,做什么就用什么工具,做游戏就用C++,做web你可以用java/php,非要用java做大型游戏,只是无聊自己玩而已,
相信游戏控都知道有那么一个Java Platform的3D游戏&我的世界&Minecraft,GameSpy给予五星满分评价,绝对的热门游戏!
Minecraft不赚钱,别秀逗了,横跨PC/Mac/Linux/Android/iOS/Xbox平台,不赚钱,你去开发?
http://zh.wikipedia.org/wiki/Minecraft
Minecraft使用了引擎Lightweight Java Game Library(LWJGL),
LWJGL包含了对OpenGL的封装,引擎自身使用Java和C开发,采用宽松的BSD授权.
http://en.wikipedia.org/wiki/Lightweight_Java_Game_Library
你怎么拿PHP做桌面跟Java做游戏比,我觉得拿Python做桌面跟Java做游戏可能还比较恰当. 事实上用Java做游戏服务器端逻辑多的是,做游戏客户端的确实比C++少,但不代表不能做.
最后,支持楼主!
java做大型游戏不赚钱,不是说说的,这是事实,国内大型游戏公司,自己去做调查,你投资过游戏运营不,你敢拿一款大型JAVA游戏投资看看,亏不死你,这些东西不能看网上吹的,很简单你直接去找你老板问他敢不敢投资就行了,我们投资成功的大型游戏还真没见过java做的,至于java做页游或手机游戏,这能赚到点钱是真的,你拿着2个java例子,去多找个C++的例子比下,最多算半成品而已,
我只举了1个例子,使用引擎LWJGL的游戏Minecraft,不是2个,而且这个游戏相比C++游戏也绝非你想象中的半成品,没玩过就不要乱说了,另外有一个使用Irrlicht引擎和C++写的开源游戏Minetest,很像Minecraft,你看有谁玩?
说实话敢发这样的帖子的也就是java程序员,既没开发过大型游戏,也没运营过大型游戏就敢发这样的帖子,俺还真佩服,所谓无知者无畏,也不怕业内的兄弟笑话,赚不赚钱,俺已经说过了,不要看网上吹的,就去找你老板问他敢不敢运营,再多的话,上头有个兄弟,估计是业内的,俺就直接复制了,不打字了,
楼主,你的水平很好,只是你走错了路子。如果你的视野更开阔一点,不要眼里只有Java,你肯定能走的更远。
先说适用范围,用Java写不是不可以,只是只能用来写上层逻辑。你这个2D的,只有纹理贴图,在商业级的产品里,真的只是一些上层逻辑,用任何语言都可以做,用Java来做,只是一个蹩脚的选择而已。客户端如果需要做出一点效果来,比如 Particle ,或者 Shadow,用纯Java是无法胜任的。如果硬要用Java来做,也只能是用C来写关键部分,然后bind一个Java的JNI来写。例子就是android上的游戏,Java只是一个wrapper,关键的东西还是C/C++。
再说灵活性,做一般的服务器需求,有丰富的库和框架,Java还可以胜任。但是如果要商业级,产品级的游戏,Java写起来又显得太罗嗦,到时候JAVA的开发周期会比C++短吗,这个是一个仁者见仁的问题。如果你有大量的东西需要策划去做,你还觉得Java是一个可行的方案么?脚本策划会写JAVA代码吗,不会。但是脚本策划会写Lua代码。
最后再说性能,就拿web服务器来说,nginx + Lua 和 Apache。 谁性能高,不多说了吧,虽然普通的web服务 Apache足以。参考TEngine和OpenResty。
最后,在实际项目里。可能拿JAVA一门语言和 C + Lua 两门语言一起比,不太公平。但是,C + Lua两门语言的学习成本有JAVA高吗?主程写底层C,新人写Lua。为了达到灵活的需求,Java那些厚重的抽象层,和简单的脚本比起来。不比了,比多了都是泪。
上面提到的MC, MC无疑非常成功,Java功不可没。但是持续关注MC,你会发现,新版本的MC xbox360 (XNA C# + C++ ) 。 MCPE (Android C++, IOS OOC),你有再看到Java的身影么? 为什么后续版本没有继续选择Java? IOS 不支持Java就算了, Android呢?Java可是Android开发的首选语言 ?为什么MC不选择Java呢?
PS:我也够无聊的了,这是第一次参加语言论战。
想起两个个笑话。老梗了。
一个女神和一个程序员在一起,女神说:“你要是让一群程序员吵得不可开交的话,今晚我就和你走。”程序员说了一句python是世界上最好的语言,接下来就吵起来了,等到之后大家吵得不可开交的时候女神告诉程序员,今晚上我是你的了。程序员说道:“你回去吧!,我必须说服他们Python是世界上最好的语言”。
一群男程序员酒后乱逛,正要集体侵犯一个女子。女子见势不妙,问:那你们说最好的 文本编辑器是哪个?程序员们就地讨论了三天三夜不欢而散,女子趁机顺利脱身
虽然Minecraft跨平台,但是GameSpy是以PC游戏给了Minecraft五颗星,正是在PC上火了,才会考虑迁移到移动平台.为了性能,Android上用C++完全合理.Minecraft支持Python Script,同样可以扩展.
还有这不是语言之争的问题,这是Java能不能用来开发游戏的问题,如果有人说Java不能开发赚钱的游戏,不能写游戏服务器端逻辑,我想就算是一个不玩Java的人也不会同意. 好吧,你也很无聊,来看评论。 - -#。
Java当然写的产品当然能赚钱,只不过是看这个钱赚的舒不舒服了。对一个程序员而言,能轻松的赚到钱(维护成本低,扩展型好,当然这个东西是和设计有关和语言无关的)才能算舒服吧。
我的观点是,Java没有成熟的服务端解决方案(框架),也就意味着你需要做更多的基础工作,当然大牛用什么都无所谓。反观其他语言,比如C++有出名的ACE。连JS都有一个Pomelo(基于Node.js)。 Java呢,鄙人孤陋寡闻,没听说过。
还有一位同学提到,游戏开发是相对保守的。其实游戏行业不是保守,是因为做的东西都很稳定了,没有必要去频繁更新。用一些旧的但是稳定的技术,不能算保守。反而很多游戏开发人员是勇于尝试探索的,比如 Erlang在游戏服务端领域貌似受到重视了?
PS: 上大学的时候,用了1周,写过android应用,那时android最新版本才1.5(http://download.csdn.net/detail/ysleepers/2537506),接触过Java,开发效率真的没话说。不过从那之后就很反感Java,没什么特别的原因,就是 函数名字太长了。读着累。 用java写游戏服务器的我跳出来了,你提到的框架比如ACE只是一个网络框架,网络部分在游戏服务器中是很小的一个部分,同样的java网络框架,mina,netty都可以胜任,但是真正的网络框架还不如自己写,来来去去也就几百行,还能自己控制,剩下的数据存储效率等,都是游戏逻辑了,这个很语言也没关系,别说javaNIO的效率不高什么的,网络并发和吞吐语言上的那点差别真不大,关键是之所以用java是因为同样成本的程序员,java程序员写出来的比其他的要稳重一些,记住是同样成本。
<span class="a_vote_num" id="a_vote_num_
引用来自“明月照大江”的答案引用来自“Tangsleepers”的答案引用来自“eechen”的答案引用来自“擅长被美女推倒”的答案引用来自“eechen”的答案引用来自“擅长被美女推倒”的答案
引用来自“eechen”的答案
引用来自“擅长被美女推倒”的答案
做东西要以赚钱为目的,用java做大型游戏很难卖出好价钱,因为这根本不会有老板投资做商业化运营,就算做出来 也就自己无聊玩玩,这纯粹浪费时间,php还能做桌面呢,但是做出来东西要有人要么,能赚钱么,做什么就用什么工具,做游戏就用C++,做web你可以用java/php,非要用java做大型游戏,只是无聊自己玩而已,
相信游戏控都知道有那么一个Java Platform的3D游戏&我的世界&Minecraft,GameSpy给予五星满分评价,绝对的热门游戏!
Minecraft不赚钱,别秀逗了,横跨PC/Mac/Linux/Android/iOS/Xbox平台,不赚钱,你去开发?
http://zh.wikipedia.org/wiki/Minecraft
Minecraft使用了引擎Lightweight Java Game Library(LWJGL),
LWJGL包含了对OpenGL的封装,引擎自身使用Java和C开发,采用宽松的BSD授权.
http://en.wikipedia.org/wiki/Lightweight_Java_Game_Library
你怎么拿PHP做桌面跟Java做游戏比,我觉得拿Python做桌面跟Java做游戏可能还比较恰当. 事实上用Java做游戏服务器端逻辑多的是,做游戏客户端的确实比C++少,但不代表不能做.
最后,支持楼主!
java做大型游戏不赚钱,不是说说的,这是事实,国内大型游戏公司,自己去做调查,你投资过游戏运营不,你敢拿一款大型JAVA游戏投资看看,亏不死你,这些东西不能看网上吹的,很简单你直接去找你老板问他敢不敢投资就行了,我们投资成功的大型游戏还真没见过java做的,至于java做页游或手机游戏,这能赚到点钱是真的,你拿着2个java例子,去多找个C++的例子比下,最多算半成品而已,
我只举了1个例子,使用引擎LWJGL的游戏Minecraft,不是2个,而且这个游戏相比C++游戏也绝非你想象中的半成品,没玩过就不要乱说了,另外有一个使用Irrlicht引擎和C++写的开源游戏Minetest,很像Minecraft,你看有谁玩?
说实话敢发这样的帖子的也就是java程序员,既没开发过大型游戏,也没运营过大型游戏就敢发这样的帖子,俺还真佩服,所谓无知者无畏,也不怕业内的兄弟笑话,赚不赚钱,俺已经说过了,不要看网上吹的,就去找你老板问他敢不敢运营,再多的话,上头有个兄弟,估计是业内的,俺就直接复制了,不打字了,
楼主,你的水平很好,只是你走错了路子。如果你的视野更开阔一点,不要眼里只有Java,你肯定能走的更远。
先说适用范围,用Java写不是不可以,只是只能用来写上层逻辑。你这个2D的,只有纹理贴图,在商业级的产品里,真的只是一些上层逻辑,用任何语言都可以做,用Java来做,只是一个蹩脚的选择而已。客户端如果需要做出一点效果来,比如 Particle ,或者 Shadow,用纯Java是无法胜任的。如果硬要用Java来做,也只能是用C来写关键部分,然后bind一个Java的JNI来写。例子就是android上的游戏,Java只是一个wrapper,关键的东西还是C/C++。
再说灵活性,做一般的服务器需求,有丰富的库和框架,Java还可以胜任。但是如果要商业级,产品级的游戏,Java写起来又显得太罗嗦,到时候JAVA的开发周期会比C++短吗,这个是一个仁者见仁的问题。如果你有大量的东西需要策划去做,你还觉得Java是一个可行的方案么?脚本策划会写JAVA代码吗,不会。但是脚本策划会写Lua代码。
最后再说性能,就拿web服务器来说,nginx + Lua 和 Apache。 谁性能高,不多说了吧,虽然普通的web服务 Apache足以。参考TEngine和OpenResty。
最后,在实际项目里。可能拿JAVA一门语言和 C + Lua 两门语言一起比,不太公平。但是,C + Lua两门语言的学习成本有JAVA高吗?主程写底层C,新人写Lua。为了达到灵活的需求,Java那些厚重的抽象层,和简单的脚本比起来。不比了,比多了都是泪。
上面提到的MC, MC无疑非常成功,Java功不可没。但是持续关注MC,你会发现,新版本的MC xbox360 (XNA C# + C++ ) 。 MCPE (Android C++, IOS OOC),你有再看到Java的身影么? 为什么后续版本没有继续选择Java? IOS 不支持Java就算了, Android呢?Java可是Android开发的首选语言 ?为什么MC不选择Java呢?
PS:我也够无聊的了,这是第一次参加语言论战。
想起两个个笑话。老梗了。
一个女神和一个程序员在一起,女神说:“你要是让一群程序员吵得不可开交的话,今晚我就和你走。”程序员说了一句python是世界上最好的语言,接下来就吵起来了,等到之后大家吵得不可开交的时候女神告诉程序员,今晚上我是你的了。程序员说道:“你回去吧!,我必须说服他们Python是世界上最好的语言”。
一群男程序员酒后乱逛,正要集体侵犯一个女子。女子见势不妙,问:那你们说最好的 文本编辑器是哪个?程序员们就地讨论了三天三夜不欢而散,女子趁机顺利脱身
虽然Minecraft跨平台,但是GameSpy是以PC游戏给了Minecraft五颗星,正是在PC上火了,才会考虑迁移到移动平台.为了性能,Android上用C++完全合理.Minecraft支持Python Script,同样可以扩展.
还有这不是语言之争的问题,这是Java能不能用来开发游戏的问题,如果有人说Java不能开发赚钱的游戏,不能写游戏服务器端逻辑,我想就算是一个不玩Java的人也不会同意. 好吧,你也很无聊,来看评论。 - -#。
Java当然写的产品当然能赚钱,只不过是看这个钱赚的舒不舒服了。对一个程序员而言,能轻松的赚到钱(维护成本低,扩展型好,当然这个东西是和设计有关和语言无关的)才能算舒服吧。
我的观点是,Java没有成熟的服务端解决方案(框架),也就意味着你需要做更多的基础工作,当然大牛用什么都无所谓。反观其他语言,比如C++有出名的ACE。连JS都有一个Pomelo(基于Node.js)。 Java呢,鄙人孤陋寡闻,没听说过。
还有一位同学提到,游戏开发是相对保守的。其实游戏行业不是保守,是因为做的东西都很稳定了,没有必要去频繁更新。用一些旧的但是稳定的技术,不能算保守。反而很多游戏开发人员是勇于尝试探索的,比如 Erlang在游戏服务端领域貌似受到重视了?
PS: 上大学的时候,用了1周,写过android应用,那时android最新版本才1.5(http://download.csdn.net/detail/ysleepers/2537506),接触过Java,开发效率真的没话说。不过从那之后就很反感Java,没什么特别的原因,就是 函数名字太长了。读着累。 用java写游戏服务器的我跳出来了,你提到的框架比如ACE只是一个网络框架,网络部分在游戏服务器中是很小的一个部分,同样的java网络框架,mina,netty都可以胜任,但是真正的网络框架还不如自己写,来来去去也就几百行,还能自己控制,剩下的数据存储效率等,都是游戏逻辑了,这个很语言也没关系,别说javaNIO的效率不高什么的,网络并发和吞吐语言上的那点差别真不大,关键是之所以用java是因为同样成本的程序员,java程序员写出来的比其他的要稳重一些,记住是同样成本。 http://blog.zoomquiet.org/pyblosxom/2012/03/
记得 去哪儿网,原先有业务使用了几十台 MySQL
前端使用 java 的jodb 进行连接
而因为代码写的比较糟糕,因为业务部门嘛,写的时候不会注意连接池的效率,
所以,每台主机的负载都非常 非常 高
而,我们后来改为nginx 作前端,結果一台nginx 就将以前几十台java 主机的业务抗了下来
通过封装成 http 接口,业务代码随便长连接/短连接,随便它搞,都撑得住了!
于是,被他们java 程序员描述成不可能的任务,被一台 nginx 主机就解决了
说效率没问题的,真的没问题吗?
--- 共有 2 条评论 ---
: +1 这的确是IO的问题 上面的只说了事实但是没说到事实的全部 你所说的效率并不是JAVA和C++的区别
(3年前)&nbsp&
数据库的IO读写,这个和语言真的是无关的,sql的执行时间才是关键,jdbc的作用也是使用socket和mysql数据库进行通信而已,无非是通信协议是数据库的网络协议,还有ngnix只是一个HTTP服务器,java的服务器比如Tomcat是javaEE应用服务器,是逻辑运算与页面生成的作用。我不太明白你这里的举例。
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
引用来自“天天向上1573”的答案 楼上有没有怀疑过3000帧是有问题的,即便你测是看到的就是3000帧
,假如一个 这么大的平面, 需要的色彩大约是4M (RGBA) , 不考虑其他因素,
4M&3000= 12G,(内存到显存的速度能达到12G每秒????) 还不说有很多地方重复贴图,也就是说C++能够在1秒内在内存生成
12G数据, 并且传递给显存, 还要将它画出来。&
难道真没问题吗? 还有你的方法能看到内存到显存的数据交换?这3000帧难道不可能是因为你重复贴图,对方发现你你干的同一件事情,根本没真的工作?
还有 电影只有25帧就很流畅了,人眼超过“120”帧, 帧越高效果越烂。
你们都说你们写的C++有多快,我这台机器, 市面上的C++,3D游戏基本跑不起来, 巨卡。
真感觉不到快。 对,弄个手游传奇
<span class="a_vote_num" id="a_vote_num_
厉害,很像我以前玩的要塞十字军
更多开发者职位上
有什么技术问题吗?
天天向上...的其它问题
类似的话题

我要回帖

更多关于 java免费开发工具 的文章

 

随机推荐