作者:广东在线游戏网日期:
返回目录:游戏策略
您好,
了解到您的问题zhidao,我觉得有必要和您科普一下。
我的世界(Minecraft)分为多个版本:JAVA版、基岩版、源主机版、教育版、携带版……
其中,JAVA版和基岩版是当前主流的Minecraft版本,也是人数最多的两个Minecraft版本。
Java版由JAVA语言编写,编解码需要JAVA,1.7.10版本以前运行需要JAVA7.0,自1.7.10版本以来都需要JAVA8.0运行,JAVA不可在移动设备运行。因此JAVA版也是PC专用版(JE版)。
基岩版是由C++编写,也称BE版,可在各大平版台上运行:台式计算机、手提电脑、andriod设备、iOS设备、Andriod智能电视、apple TV等等。并且,基岩版优化良好,没有JAVA版吃配置。不信的话,你试试在JAVA版和基岩版都输入这条指令(生存模式下):
/give @s minecraft:cake 100000
就一见分晓了。
好了,我有点扯远了,JAVA是一种编程软件,它可以支持Minecraft Java版的运行。简单来说,Java的作用就是权翻译,把游戏核心呈现出来。
希望这对您有帮助。
原因无从而知。个人认为Java版便于爱好者开发Forge、OptiFine之类zhidao的东西,同时跨Windows/Mac OS/Linux等支持Java的平台,可玩性比较强。
不过Mojang被微软收购之后,Minecraft从1.2版开始有跨平台的基岩版,是用C++写的。它同时支持Windows 10/手机/游戏主机等平台,只需一个Microsoft帐户便可无缝联机,极大扩展了计算专机游戏“跨平台”的观念。
在Windows 10下,基岩版相比Java版明显更加流畅。但扩展仅限于原生支持的Add-ons,可玩性暂不及Java版;同时基岩版尚未完全跟进Java版的开发进度,直到1.16下界更新,二者的版本属号才保持同步。
《我的世界》是用java语言编写的,需要java环境才能运知行。而且《我的世界》有很多懒人包的,就是整合到一起,免于玩家安装游戏出现问题,你如果有问题也可以去《我的世道界》中文论坛提问,,,在我的世界中文论坛可以下载到很多版本的《我的世界》,还有多种专mod即模组可以使用,非常有可玩性的。模组是玩家自制的游戏插件,如工业mod,建筑属mod,极限生存mod等,还有龙珠,魔兽等另类玩法的mod,增加游戏的趣味性。
1、mod 插件系统为提高兼容性会降低优化。
众所周知,性能优化和兼容程度成反比。而 mod 作为一类即插即用插件,必须要提高兼容性以适应这一操作。所以,绝大多数游戏的 mod 系统都会牺牲一部分性能,导致加载很多 mod 时会卡的不行,比如老滚和捡破烂。别问,问就游戏内置了就不卡了。
2、我的世界在游戏制作行业算是比较出了名的渲染优化差。
举个例子,比如用其他游戏引擎(如unity)做一个你无法进入、只能站在外面官网的摩天大厦,在游戏中这个摩天大厦的模型可能只有外壳,7a686964616fe59b9ee7ad94365而且如果是远距离的话可能就会优化成面片(反正你也看不出来是不是立体的)然后通过处理材质来提高真实度,而且还可以设置成近距离外壳、远距离自动优化成面片来全自动优化性能。
我的世界就不同了,假设这栋大楼高80米宽30米,放到我的世界里就是 30 * 30 * 80 = 72000个方块,然后每个方块6个面,就是 7200 * 6 = 432000 个 1 X 1 的面片加贴图同时渲染,去掉反向面至少也得有 266000个面片需要渲染。就算只有外壳,也是至少 29 * 4 * 78 + 30 * 30 * 2 = 10848 个方块共计 65088 个面去反后至少 32544 个面需要渲染。而无论你在远在近,这栋大楼均是由这些个方块组成,不会自动优化(众所周知我的世界唯一的自动优化只有视距和区块系统2333)。
3、我的世界游戏引擎存在一些硬核问题,以及开发者的优化问题。
我之前开发我的世界mod的时候就发现很多东西确实比较脑壳痛。像什么地形扫描,地形扫描,地形扫描,地形扫描。我的世界性能方面最头疼的地方就是地形扫描,线性15米就等于是扫描15格,面积15*15就等于扫描了255个方块,稍微大一点的区域简直就是恐怖。
比如我如果要做实时的矿产勘探,假设半径15格,模拟为玩家处于正中间、长宽高30的立方体区域。这个放在现实中也就是相当于高科技半径15米的矿产雷达,但是就这15米就需要扫描27000个方块,也就是说某一段代码至少要重复27000次才能保证一次完整的扫描。
然后问题来了,如果1秒扫描一次的话就需要循环27000次,为降低性能开销我当时就改为5秒一次,平均优化摊开变成了5秒150游戏帧分别扫描这27000个方块,每一个游戏帧扫描180个方块,这样极大降低了性能,但是让算法更复杂。
而有一个简单粗暴的优化方式,就是一口气扫描完27000个方块,然后等待5秒钟,再进行下一次扫描。这样做的话性能开销比摊开优化要好一点,但是每一次扫描都会导致游戏卡顿一下,卡顿时间长度根据当时瞬间系统性能,我实测最惨的一次是连续5次卡顿半秒以上。
然后更大的问题是,很多 mod 开发者觉得自己的 mod 性能消耗很小,就都这样简单粗暴写(别问,问就我的世界开发投入的精力与收入严重不对等导致优化和后期维护变成了纯粹费力不讨好)。单独加载都没啥大问题,但是万一赶巧了运算扫描卡在同一瞬间……这个概率还真的不低。