作者miau9202 (Mr.M)
看板Minecraft
标题[教学] Minecraft效能调校 Linux篇
时间Mon Aug 20 17:34:16 2012
世界战场重生中...看MCEdit还要半小时,那就先来打个文章杀时间好了
改写、翻译原文:[HOWTO] Optimize Minecraft for Linux
http://www.minecraftforum.net/topic/158692-howto-optimize-minecraft-for-linux/
进入本文前先简介一下好了,这篇是为了改善Minecraft在Linux底下效率不彰的问题所写
但是除去Linux的部分,尤其是针对Java调校的部分,根本通用,在Windows上用更优越_A_
所以,本篇保持原翻译内容,Windows的部分会在独立出一篇。
【介绍】
首先,我要说Minectaft并非为Linux或Mac打造的,而是专为Windows设计的游戏。
刚好对於我们这些在Unix开发软体的使用者就可能出现问题了,因为Minecraft之後的
跨平台移植产生了不少效能低落的问题。
因此我做了很多研究来增强我的游戏体验,而且我相信这些研究对你们也有帮助
【前置作业】
你需要准备好一些东西来保障Minecraft可以跑得顺畅
1) Sun Java - 最新的 JRE
这非常重要,大多数的Linux发行版都只配发OpenJDK的JRE。虽然一般使用没问题,但这
似乎真的会让 Minecraft 变慢。而Sun本家的JRE还是比较快一些。
Linux:
http://www.java.com/en/download/help/linux_install.xml
2) 最新的显示卡驱动程式
必须注意的是,Linux使用驱动程式的方式很像Windows。主要的不同是他们的安装方式。
Linux 相当优秀的会自动侦测并启用任何你插上去的装置。
然而,有些主流的品牌已经放弃Linux支援,比如ATI。他们中止支援各种卡的Linux驱动。
你仍然可以下载最新的Catalyst Control Center与通用驱动,但官方停止支援的卡会有很
多问题。这里提供一些资讯供你参考:
nVIDIA驱动:
http://www.nvidia.com/object/unix.html
开源 ATI/Nvidia 驱动:
https://launchpad.net/~xorg-edgers/+archive/ppa
感谢epikal资讯!
引用epikal的发言:
值得一提的是,先检查目前版本拥有的驱动,比如Ubuntu/Mint底下ATI/nVIDIA 驱动
系统->管理->新增额外驱动
若你拥有非停产的ATI/AMD显卡,你可以先试试官方的驱动,再来考虑要不要改用较新
版的开源驱动。
依照版友misuisum所言,在Linux下你可能会遇到按键自动按住的问题,你可以参考
以下连结来解决这个问题:
http://www.minecraftforum.net/topic/134703-linux-stuck-keys-solution/
最新的档案可以在这边找到:
http://sourceforge.net/projects/java-game-lib/files/Official%20Releases/
3) Optifine (原文是Optimine,不过这MOD已经更新进Optifine里)
这是最赞而且最能明显提升速度的东西。我在多人游戏的城镇中,从小於1FPS提升到12FPS
(这是非常惊人的提升,已经够我玩了)
到了村庄外又更往上提升了(大约20FPS-30FPS)
http://www.minecraftforum.net/topic/249637-166-optifog-and-optimine-fps-boost/
4) 一个简单的材质包
我知道有些人不喜欢简单化、尺寸较小的材质包,但这东西确实能降低了显示卡的负担。
我现在用的材质包是SimpleCraft,选用其他的小材质包也可以。
检查材质是否每个方块都用三种以内的颜色。当然,纯色是最佳的选择。
http://www.minecraftforum.net/viewtopic.php?f=25&t=104854
5) 使用程式化脚本来新增启动参数
Java允许你使用参数来修改环境变数。以下是我用来启动Minecraft的脚本:
java
-Dsun.java3d.opengl=true -Xmx1024M -Xms512M -cp minecraft.jaret.minecraft.
LauncherFrame
第一个参数,
-Dsun.java3d.opengl=true 是允许Minecraft使用OpenGL来绘图。不过我觉得
这个预设就是开启的,但还是保险点打开比较好。
接下来的两个参数是增加Minecraft能使用的记忆体大小。其实这代码可以可以在Minecraft
的下载页找到XP
而你该做的就是把这条代码存成 minecraft.sh (或者任何你喜欢的名字) 右键内容,权限
标示为可执行(Ubuntu),或在终端打上:
sudo chmod 755 minecraft.sh
这行可适用於其他发行版
更多参数 感谢 ericdjobs!
引用 ericdjobs 的发言:
总而言之,这里有几个可以最佳化Minecraft JAR的方法,是透过调校Java VM的方式,
你也可以用在Minecraft伺服器上,会有很明显的效能提升...
这是调教过,我目前正在用的启动参数:
java
-Xmx1024M -Xms1024M -XX:+UseFastAccessorMethods -XX:+AggressiveOpts
-XX:+DisableExplicitGC -XX:+UseAdaptiveGCBoundary -XX:MaxGCPauseMillis=500
-XX:SurvivorRatio=16 -XX:+UseParallelGC -XX:UseSSE=3
-XX:ParallelGCThreads=(处理器有几核心就填多少,我有双核心就填2) -jar /<路径>/
minecraft.jar
这些参数使用了积极最佳化、平行资源回收,及其他调校选项。这个参数用在Linux或
是Windows中,都有相当出色的效能提升。你可以自行调整可用的记忆体使用量。
(我设成总记忆体的1/3,除非你电脑不只跑Minecraft)
6) 修改优先权
Minecraft 在高优先权的执行上会更优。要调整优先权最简单的方式就是使用内建的"系统
管理员"来列出电脑内的程序。找到"java"然後给他最高权限(右键选单可能办得到,我只用
过Ubuntu...)
你也可以使用终端机来提高权限:
sudo pidof java
sudo renice -
A -p
B
重点:把
B取代为
第一个指令得到的数字。把
A取代为
-11到-20之间的数字,-20就是最高权
限。(事实上你可以使用-1到-20,但设为0到20会降低优先权)我推荐-20,系统会分
配最多运算能力给Minecraft。
7)设定你的处理器为最佳效能
你可以找Linux下修改CPU速度的工具。Ubuntu上,有一款预先安装在工具列的小工具叫
"CPU Frequency Scaling Monitor",它可以让你选择处理器的一般速度或特定速度
不同发行版都选用其他相似的工具,但我没研究。
8)更新函式库 - 感谢misuisum!
引用 misuisum 的发言:
还有另一种优化的撇步:
因为我用Linux(ubuntu 10.10 x64)时碰到音效跟FPS低落的问题。然而,我把Ubuntu随附
的过时函式库替代掉,才解决这些问题。替代用的函式库可以在~/.minecraft/bin/natives
找到。我只安装相对应的套件,并设定符号连结到 /usr/lib/"函式库名称"(别忘了备份!)
後话
我希望这个文章有帮到你一些忙。自从Minecraft开始有些改变之後,我现在已经很开心的
在玩了,而且我很想跟你们分享我那些超棒的探险旅程。
祝你们挖矿快乐!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.242.107.169
※ 编辑: miau9202 来自: 111.242.107.169 (08/20 17:38)
1F:推 willy69wu31:先前我在Ubuntu Live模式下 一边等gparted跑 08/20 17:40
2F:→ willy69wu31:一边试试minecraft在ubuntu 12.04的效果 08/20 17:40
3F:→ willy69wu31:没想到不少情况下的速度比Windows版一样的设定还快 08/20 17:40
4F:→ willy69wu31:都是用intel内显玩 08/20 17:41
没用过intel的内显在Linux上跑过,不过这篇针对的是独显,我想应该是独显支援比较惨
的样子。
※ 编辑: miau9202 来自: 111.242.107.169 (08/20 18:12)