JAVA能写大型游戏吗?
JAVA能写大型游戏吗?
-----
网友解答:
-----
首先:当然可以了。
但是,制作完成后能够达到商业化要求就是另一回事了。也就是说,你用Java制作的大型游戏是没有一点市场竞争力的。
因为Java的体质决定了这款游戏必定“卡的要死”
-----
网友解答:
-----
首先要确定一下什么是大型游戏吧,是玩家多,还是同时在线人数多,还是指那种高精度模型高精度贴图的3A大作。
一些低fps的游戏,比如棋牌类,斗地主麻将,三国杀这种用java写是完全没有问题的,小卡顿并不影响你游戏,或者说你根本感觉不出来。
我们都知道java需要运行在虚拟机,如果你的游戏纯java层去写的,那么需要解释执行,虽然现在得益于即时编译技术,代码效率显著提升,但是做不到绝对的回收不耗时,而且虚拟机占用了你很多内存,还可能会导致你的应用内存映射到交换区。
虽然有些游戏吃显卡比较多,但是游戏逻辑部分还得看cpu。
那么有的人会说安卓也是虚拟机啊,这里确实有点不一样,安卓是没办法,只能跑在虚拟机啊,也不想这样的。我们都知道现在游戏都是基于游戏引擎开发的,安卓游戏引擎大部分基于jni开发的。当然像cocos2D这种也有纯java版本,但是应该现在用的人不多了,都是基于cpp版本做的。
这里需要对虚拟机和编译的知识要有一定的理解。
总结来说就是看你的游戏特性吧,java也是可以的
-----
网友解答:
-----
STOP-THE-WORLD一直就没有很好的解决,决定了JAVA做大型游戏,操作系统这些东西性能上相对C就没有竞争力
-----
网友解答:
-----
可以写大型游戏的服务端 客户端就不大行了 awt和swing的渲染效率太低了 不适合做客户端
-----
网友解答:
-----
minecraft就是JAVA写的。它的本体很小,但得益于JAVA,它的可扩展很强,mod很多,可以扩展成很大的游戏。但是往往会很卡。
-----
网友解答:
-----
js都能写游戏,java当然行,只不过游戏需要引擎,现在的游戏引擎大多都是跨平台,底层用c,业务层用脚本,java不适合做脚本,所以java不适合游戏开发
-----
网友解答:
-----
Java震楼。。。。
Java可以写大型游戏,他也有自己的桌面版api,只是方便不方便的问题。
举个例子:你现在要买车,你是去汽配城买零件自己回来组装还是去4S店买一辆回来呢?答案很明确,当然去4S店是最方便的啦。但有一些人是发烧友,就要追求极致的体验,有的追求性能,有的追求好看,有的就是为了验证这样改装是否可行。
那么这个时候就要看你的应用场景了,如果你是企业,想快速上线产品,当然要去4S店买一台,因为我要马上运货,时间很重要。那么对于游戏开发也是一样,我们肯定选成熟的类库,比如cocos2d,U3D这类的。如果你说我不着急,我就要搞出一个新品牌的汽车,那么好,你就从头开始开发游戏引擎,各种爆炸效果、人物、碰撞等等都要自己写。
回到题主的问题,能不能写要看你的需求,如果只从技术上判断,当然可以写,问题是成本多高?金主是否可以接受?
-----
网友解答:
-----
能,看你的设计水平,分布式架构,不局限于单一应用,电商网站都不卡,游戏能有多少人在线?
-----
网友解答:
-----
我的世界
-----
网友解答:
-----
不能!大型游戏不是你一个人写的!而是分好几播人一起写的!而且还是要有明确的分工比如你们几个人负责美工,另几个人负责编程,另几个人负责游戏开发!等等!所以说非常复杂!你像当年的红警系列游戏就是来完成的!
-----
网友解答:
-----
不太行,目前唯一主流游戏开发语言,c艹和c#,js还是太小打小闹了,在小程序甚至连opengles3.0都不支持做3d游戏会比较难受。
c艹和c#一个用于unreal一个用于unity都有成熟案例比如c#开发的3A大作逃离塔科夫,还有原神王者荣耀使命召唤手游永劫无间等等,c艹就不说了非常多比如吃鸡手游比如各种主机pc大作。
再来说说我的观点首先游戏很多地方是计算密集型的这里就需要精确控制内存,甚至很多时候为了对齐用byte还是int都要考虑,拥有这种能力的c艹,c#得意于struct的设计勉强算大半个,java几乎无法控制,而做UI又有lua这种小巧的脚步,所以几乎java没什么游戏行业的市场。
------------------
推荐阅读:
有人说电商对实体经济造成非常大的冲击,个体工商户该如何应对?