[Minecraft Mod] Vintagium(sodium-1.12)導入解説 Optifineを超えた軽量化 マイクラ 1.12.2
この記事は随時更新予定です。
最終更新: 2024/11/04
概要
Vintagiumは、Minecraft 1.16以降のFabricで動作する軽量化mod「Sodium」のCleanroomMCによる1.12.2非公式フォークです。開発中ですが、すでに十分使用可能であると判断したため解説記事を書きました。
動画解説
YouTubeに解説動画(2024/02/21)を投稿しています。情報は本記事よりも古い可能性がありますが、動画で確認したい方はぜひご覧ください。
Vintagiumを使う理由
1. バグや競合が少ない
Vintagiumはオープンソースなので、バグや競合が少なくなります。一方、Optifineは有名ですが、バグや競合が多いことでも知られています。
2. 活発な開発が期待できる
CleanroomMCは、放棄されたバージョン(1.12.2)のForge Minecraftを再生することを目的としているため、OptifineよりもVintagiumの方が活発な開発が期待できます。
3. 高い軽量化効果
Vintagiumは、Optifine以上に軽量化効果が高いと言われています。
インストール方法
Vintagiumは、ForgeではなくCleanroomLoaderで動作するように設計されています。Forgeで使う方法もありますが、CleanroomLoaderの方が最適化されているため、今回はCleanroomLoaderに導入します。
Forgeで使う方法
Minecraft 1.12.2のForgeの構成にVintagiumの導入の方法でVintagiumを導入してください。
また、前提modとして以下のmodを導入する必要があります。いずれもCleanroomMCのmodでCleanroomLoaderに内蔵されています。
- ConfigAnytime: Modrinth/Curseforge
- MixinBooter: Modrinth/Curseforge
プリズムランチャーのインストール
CleanroomLoaderはまだ開発中であるため、CurseforgeやModrinthのランチャーでは使用できません。インストーラーもありますがMultiMC系ランチャーを使用する方法をおすすめします。今回はその中の一つであるPrismLauncherを使用します。
公式サイトのダウンロードページからインストーラーをダウンロードします。ダウンロードしたexeファイルを実行し、インストールウィザードに従えば特に難しいことなくインストールできます。
CleanroomLoaderのインストール
CleanroomLoaderのGithubからダウンロードしますが、まだReleasesがないためActionsタブからビルドをダウンロードします。まだ開発中のため、不安定なビルドもあります。動作検証したビルドは後述しますが基本的には最新のexperimental/foundationワークフローのビルドを選択してください。
ダウンロード方法
ダウンロードしたいビルドのワークフローをクリックします。
その後下にスクロールしたところにあるArtifactsのCleanroom_MMCをクリックでできます。
ダウンロードしたファイルをzipのままPrismLauncherのホーム画面にドラッグアンドドロップするとインポート画面が開きます。
OKをクリックすればインストールが完了します。
しかし、CleanroomLoaderを使用するためにはもう少し作業が必要です。
インポートしたCleanroom_MMCを右クリックし、編集を選択します。
次に設定タブを開いて「Javaの指定」、「Javaの互換性チェックをスキップする」にチェックを入れ、自動検出もしくは参照からJava21、Java22もしくはJava23を選択してください。
Java21/22/23がない場合
以下の方法のいずれかでJava21/22/23をインストールしてください。
-
wingetをつかう
やり方さえ分かればこちらのほうが楽です。
windowsキーを押してスタートメニューを開きcmd
と入力し以下のようなコマンドプロンプトを開いてください。
そこに以下のように入力してエンターで実行してください。
Java21の場合:winget install EclipseAdoptium.Temurin.21.JRE
Java22の場合:
winget install EclipseAdoptium.Temurin.22.JRE
Java23の場合:
winget install EclipseAdoptium.Temurin.23.JRE
あとは待っていれば自動的にJava21がインストールされます。途中でユーザーアカウント制御の画面が表示されたら変更を加えることを許可してください。
-
インストーラーをつかう
Oracleのダウンロードページ(Java22の場合はこちら/Java23の場合はこちら)からインストーラーをダウンロードしてきてインストールしてください。
本来1.12.2のMinecraft及びForgeはJava8で動作しますがCleanroomLoaderは開発時点で最新バージョンのJava22と最新の安定版のJava21で動作します。インストールは少し面倒ですがJava8よりも最適化されています。
これでCleanroomLoaderのインストールは完了です。
次はいよいよVintagiumを導入します。
Vintagiumの導入
Vintageiumも現在開発中であるため、CurseforgeやModrinthにはありません。そのためこちらもVintagiumのGithubからダウンロードしてください。ダウンロード方法はCleanroomLoaderと同じです。
ダウンロードしたzipファイルを展開すると2つのjarファイルがあるので、「-dev」がついていない方を先程作成した起動構成の「Mod」タブにドラッグアンドドロップしてください。
これでVintagiumのインストールも完了です!
「起動」をクリックしてMinecraftを起動し、無事読み込まれていることを確認してください。
Fugueの導入
CleanroomLoaderではほとんどのmodが動作しますが、一部のmodではエラーが発生することがあります。それらのmodにパッチをあて、正常に動作させるmodがFugueです。このmodもCleanroomMCが開発しています。
以前はGitHubからダウンロードする必要がありましたがCurseforgeからダウンロードできるようになりました。
FugueのCurseforgeページ
Fugueには対応するCleanroomLoaderのバージョンがあります。動作確認済みの組み合わせは以下に示しますが基本的にはどちらも最新のものを選択すればよいです。
動作確認済みの組み合わせ
CleanroomLoader | Fugue |
---|---|
0.2.3-alpha+build.6.run.697 | 0.16.3 |
15.24.0.3035 | 0.14.0-beta |
15.24.0.3035 | 0.13.0-beta |
Scalarの導入
ForgeはJava以外にScalaというプログラミング言語もサポートしています。しかし、CleanroomLoaderではより新しいバージョンのScalaに対応するためにこの機能をScalarという単独のmodに分離しています。
Curseforgeでダウンロードできるのでscalar-1.12.2-2.11.1を導入してください。今後、CleanroomMC製Modに使われる予定ですが現在はScalar3を前提とするModはありません。
併用推奨mod
ここではVintagiumとの併用をおすすめするmodを紹介します。
mod名 | 説明 | ダウンロード |
---|---|---|
Alfheim | 照明エンジンを最適化するmodです。Phosphorのフォークのフォークです。 | |
Alternate Current Unofficial | レッドストーンダストの処理を最適化するmodです。 | |
Better Biome Blend | 「Biome Blend」設定を拡張し、パフォーマンスへの影響を下げるmodです | |
Chunk Pregenerator | チャンク生成を最適化し、ワールド生成を高速化します。チャンクの事前生成や再生成も可能で、コマンドのサジェスト機能も追加されます。 | |
Dynamic Lights | 光源アイテムを手に持っているときに周囲を照らすmodです。Optifineの機能を代替します。 | |
Entity Culling | 視界外のエンティティの描画を停止することで描画を軽量化します。Vintagiumにも同様の機能が搭載されていますがより高速らしいです。 | |
Fixeroo | 複数の経験値オーブを一つにまとめるmodです。Clumpsとは違い、エンティティを追加しません。 | |
Homoium | 他のmodが手を加えていない最適化を行うmodです。 | |
Ksyxis | ロード時のチャンクロードを無効にしてロード時間を短縮するmodです。 | |
LoliASM | VanillaFixとTexFixの機能を含む軽量化modです。クラッシュ時にゲームが終了することを防ぐ効果もあります。CleanroomMCの中心人物であるRongmario氏によるmodです。 | |
Multithreaded Noise | ノイズジェネレーターをマルチスレッド化するmodです。ワールド生成の高速化が期待できます。このmodはPrismLauncherから直接ダウンロードできないのでCurseForgeから手動でダウンロードしてmodsフォルダーに追加してください。 | |
Particle Culling | 視界外のパーティクルの描画を停止することで描画を軽量化します。 | |
Sledgehammer | Minecraftや様々なForge Modにパッチを当てるmodです。各機能をconfigから有効にする必要があります。 | |
StellarCore | 広範囲のバグ修正、パフォーマンスの改善を行うmodです。 | |
Tick Dynamic Continuation | 高負荷時に一部のタイルエンティティ/エンティティのティック処理をスキップすることでTPSの低下を防ぐmodです。 | |
Universal Tweaks | さまざまな軽量化、微調整、バグ修正modをまとめたmodです。 | |
VintageFix | FormFixのフォークでFerriteCoreの一部機能も含みメモリ使用量を最適化します。 | |
Zume | Optifineのようなズーム機能を提供するmodです。 |
これ以外にもおすすめの最適化/ユーティリティmodはありますが記事の趣旨から離れてしまうため割愛します。いずれ機会があればどこかにまとめたいです。
Mod互換性
以下のmodはCleanroomLoaderに含まれています。
- ConfigAnytime
- MixinBooter
- Raw Input
ConfigAnytimeとMixinBooterは読み込まれないため問題ありませんが、Raw Inputが追加で導入されているとワールドでマウス入力が効かなくなるため注意してください。
現在確認できているもので以下のmodに非互換性があります。
CleanroomLoaderとの非互換:
- Tweakeroo
- Litematica
Vintagiumとの非互換:
- Hardcore Darkness
- Vintage GregTech
- Nothirium
- IC2Cextra
- OptiFine
CleanroomLoaderがOptifineとVintagiumを同時に読み込んでいることを認識するとOptifineを無効にするため、Optifineを削除する必要はありません。
Modの互換/非互換情報は以下にまとめています。是非参考にしてください。こちらも随時更新します。
Javaの引数
Javaの引数を以下のように設定するとさらにパフォーマンスを上げられるとの情報提供を受けました。必須ではないですがやり方が分かる人は設定しておきましょう。
-XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:ShenandoahGCMode=iu -XX:ShenandoahGuaranteedGCInterval=1000000 -XX:AllocatePrefetchStyle=1 -XX:+DisableExplicitGC -XX:+UseNUMA -XX:+UseLargePages -XX:+PerfDisableSharedMem -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:MaxNodeLimit=240000 -XX:NodeLimitFudgeFactor=8000 -XX:-DontCompileHugeMethods
筆者はJava引数についてよくわかっていないので有識者のかた、よりよい引数をご存知でしたらコメントにてお知らせください。
シェーダーについて
Oculus(irisのforgeフォーク)のポートも計画されていますがまだ使用できません。
現状シェーダー(影mod)を1.12.2で使用するためには残念ながらOptifineを使用しなければなりません。
ログの文字化けについて
古いバージョンのPrismLauncherを使用していると以下の画像のようにログが文字化けすることがあります。このような症状が発生した場合にはPrismLauncherを最新バージョンに変更することをおすすめします。
過去バージョンでの解決方法
古いバージョンのPrismLauncherを使用している場合は以下の手順で文字化けを解消できます。表示が文字化けしているだけなのでこのままでも問題ありません。
- 該当の起動構成のコンソールウィンドウ(Mod入れたり設定変えたりするところ)でバージョンタブを開く。
- 「Cleanroom」を選択する。
- 右側の「編集」をクリックで
net.minecraftforge.json
を開く。 -
+jvmArgs
の-Dfile.encoding=UTF-8
を-Dfile.encoding=MS932
に書き換える。
この問題は、Java18以降ではUTF-8がデフォルトで使用されているのに対し、古いバージョンのPrismLauncherではそれと異なる文字エンコーディングが使用されていたことが原因です。なお、PrismLauncher 9.0以降ではこの問題は修正されていることを確認済みです。
ローダーの更新
現在、PrsimLauncherのModローダー管理は(リリース前のため)CleanroomLoaderに対応していないので通常の方法ではCleanroomLoaderは更新できません。もっと良い方法があるかもしれませんが筆者は以下の方法で更新しています。
- 新バージョンのCleanroomLoader起動構成をインポートする。
- 更新したい旧構成を右クリックし、「フォルダー」を選択してエクスプローラーで開く。
- 「.minecraft」フォルダーをコピー。
- 新バージョンの構成を同様の手順でエクスプローラーで開く。
- 「.minecraft」を旧構成からコピーしたもので置き換える。
更新のたびにするのは面倒ですがPrsimLauncherの対応を待つしかないですね...
CleanroomMC、Vintaigum関連リンク集
長いため折りたたみ
CleanroomMC公式サイト:
CleanroomMCのDiscordサーバー:
開発よりなのでプレイヤーより技術面や最新の開発状況に興味がある人向けです。日本語/中国語のチャンネルもありますが基本的には英語です。
CleanroomMCのGitHub:
MC百科のCleanroomMCページ:
MC百科は中国語のなんかすごいMod wikiです。
CurseforgeのCleanroomMCページ:
ModrinthのCleanroomMCページ:
CleanroomMCのXアカウント:
投稿は行われていません。
他のYoutuberさんによるCleanroomLoader/PrismLauncherの紹介動画:
Optifineの代替modを紹介する記事:
自分の動画がリンクされてるのうれしい。
まとめ
Vintagiumは、1.12.2環境で動作する最新の軽量化modです。CleanroomMCによって開発が続けられており、Optifineよりもバグが少なく、より高い軽量化効果が期待できます。
インストール作業はやや複雑ですが、本記事の手順に従えば問題なく導入できるはずです。併用を推奨するいくつかのmodも紹介しましたので、状況に応じて組み合わせることでさらなる軽量化が可能です。
Minecraftの軽量化を検討している方は、ぜひVintagiumを試してみてください。開発の続く有望なmodであり、Optifineに代わる選択肢になり得ます。今後の更なる改善と発展に期待したいところです。
記事の内容に間違いがあった場合や質問がある場合は気軽にコメントしてください。
この記事のコメントやYoutube動画へのコメントも確認していますがXかDiscordでメンションしていただくのが一番はやく気づけると思います。返信が遅い場合もありますので気長にお待ち下さい。
謝辞
CleanroomMCメンバーの皆様、紹介したModの作者の皆様、及びkeikeiさん、erialさん、00000.𝕏MLさん、まーめさん、tier940さんをはじめとしたこの記事の執筆に協力してくださった方々に深く感謝申し上げます。
参考文献
Vintagiumが使えたことを報告するRedditの投稿:
MC百科のVintagium解説ページ: 日本語でVintagiumの導入方法を解説したポスト:
Discussion