作者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)
推 willy69wu31:先前我在Ubuntu Live模式下 一邊等gparted跑 08/20 17:40
→ willy69wu31:一邊試試minecraft在ubuntu 12.04的效果 08/20 17:40
→ willy69wu31:沒想到不少情況下的速度比Windows版一樣的設定還快 08/20 17:40
→ willy69wu31:都是用intel內顯玩 08/20 17:41
沒用過intel的內顯在Linux上跑過,不過這篇針對的是獨顯,我想應該是獨顯支援比較慘
的樣子。
※ 編輯: miau9202 來自: 111.242.107.169 (08/20 18:12)