DistantHorizons Standaloneの使い方(1.7.10、KaizPatchX、実験的)

DistantHorizons Standalone(DH)について

・遠くなるほどチャンクの描画を簡略化するLevel of Detail(LoD)で軽量な長距離描画を実現する、DistantHorizonsの1.7.10版。

・本来Angelicaに統合される予定だったが、結局独立したので「Standalone」になっている。

・使用しているDistantHorizonsは最新のオリジナル版(3.0.0-beta)。互換レイヤー等で動いているらしい。

・しかし、Shader互換性はAngelicaのShader対応の関係で低く、最新のComplementary(EuphoriaPatches)とBSL、Photonぐらいしかまともに使えない。github.com

経緯

DistantHorizons Standaloneは前からあったが、Shader非対応だった。最近Shaderに対応したが、今度はKaizPatchが最新のAngelicaに非対応という問題が発生。双方の開発者が連絡を取り、一応クラッシュするのは治ったが、今は描画バグの解決中。

注意

・DistantHorizons+ShaderはPCに結構な負荷がかかる。この記事では高スぺPC向けに解説していく。

・まだ更新中で不安定なため、今回の構成を常用するのは非推奨。普段の構成のコピーを作って試すのが良い。

・ワールドの保存が遅くなる。

ー必要なものー

今回は公式ランチャー(Windows11)向けに説明する。

ーmodの変更ー

一部のmodは、Angelicaに対応したGTNH版に変更しないと、クラッシュ等が発生する可能性がある。既にGTNH版にしている場合は、最新版を使っているか確認する。

GitHub - GTNewHorizons/GT-New-Horizons-Modpack: A big progressive questing modpack for Minecraft 1.7.10 balanced around the mod GregTech. · GitHub

ProjectRedの前提modをGTNH版に置き換える - 渡海工場事務所

MC-Optimization-Guide/mods-n-stuff/1.7.10-compat-mods.md at main · Polytetrafluoroethylene-PTFE/MC-Optimization-Guide · GitHub

ー構成ー

・天候が変わるのを止めたいならEt Futurum Requiemを導入する。

https://madoha-4862.hatenablog.jp/entry/2024/12/12/181500#%E3%83%BCEt-Futurum-Requiem%E3%83%BC

ーShader(推奨)ー

ーConfig変更

RTM.cfgで、"ModelPack load speed"=2(デフォルト)

⇒3にするとパック(スクリプト)読み込みでクラッシュする。

hodgepodge.cfgで、addSimulationDistance_WIP=true

⇒鯖側の負荷を下げるKaizPatch1.10.0-beta2以降では不要

ー競合するmodー

・OptiFine、Fastcraft、BetterFPSはAngelicaが起動時に無効化する。

・SmoothFont:Angelicaに同じ機能がある。

・Liteloader:LiteloaderLoaderを入れてみる。それでも無理なら諦める。

⇒VoxelMapの代替:JourneyMap

Xaero's Mapもクラッシュが修正されて使えるようになった。

Xaero's Minimap - Minecraft Mod

Xaero's World Map - Minecraft Mod

起動する

・起動構成では今まで通りJava8を指定する。

・起動すると設定ウィンドウが出て来る。

・「Add」でインストールしたJava25の「javaw.exe」を指定する。

・C:\Program Files\Eclipse Adoptium\(Java25のフォルダ)\bin\javaw.exe

・「Garbage collector」を、DHが推奨する「GenerationalZGC」にする。メモリに余裕が無い場合はデフォルトのG1GCにする。

・「Custom options」に-XX:+UseCompactObjectHeadersを追加すると、メモリ消費の削減ができるらしい。

・「Max memory」でメモリを割り当てる。ZGCを使うので、多めに割り当てた方が良い。

・「Run」で起動する。

・起動するとログのコンソールが出て来る。クラッシュログのことを考えると、ゲーム終了まで閉じない方が良いかも。

・今回の方法だと、ログ周りが複雑になる。

ー起動時の不具合ー

・Lwjgl3ifyの不具合の一つとして、

java.lang.NullPointerException: Cannot invoke "java.lang.Comparable.compareTo(Object)" because "c1" is null
がある。要するに確率的なクラッシュなので、無視して再チャレンジ。

Lwjgl3ify 3.0.21で修正済み。

・パックのスクリプトの問題でクラッシュすることがある。

⇒対策:GitHub - 325-Sunnygo/LWJGL3ify-rtm · GitHub

Angelicaとその周りのmodの解説

madoha-4862.hatenablog.jp

マルチプレイ

・鯖側がJava8のままでも、Lwjgl3ifyを入れたクライアントで入ることができる。逆に、Lwjgl3ifyを入れた鯖にJava8で入ることもできる。

・DHを鯖に入れると、既存チャンクからLoDチャンク生成を行い、DHがあるクライアントに送信する。ただし、結構な負荷がかかるので、広大なワールドだと長時間鯖が重くなる。

・HodgePodgeとGTNHLibは、鯖に入れた場合はクライアントでも必須になる。全員がAngelicaを使うなら問題ないが、OptiFine使用者がいるならこの2つを抜く。

Angelica(Embeddium)の設定

・SodiumとIrisを使ったことがあるなら大体分かると思う。日本語化リソースパックを作った。

・Alt+F3(Alt+F4と間違えないように)でクライアントと内部鯖の負荷の程度が見れる。鯖側の表示はシングルプレイのみ。

Angelica(Iris)とShaderについて

・「キー設定」で「Shaderpack Selection Screen」を割り当てると便利。

・設定変更したら、「Apply」を押して反映。

・Shaderの重さの目安:Complementary > SEUSRenewed ≧ BSL。
・しかしAngelicaでSEUSを使うと何故か重い。

・Complementaryを使う場合は、EuphoriaPatches有りの方だと、設定が翻訳されているのでおすすめ。

・「EuphoriaPatches設定」⇒「人気の設定」⇒「季節:冬」にすると、全体に程よく雪が積もって綺麗。

・「その他」⇒「雪景色:ON」だと、ブロックのみ完全に雪に覆われる。

・IrisにはOptiFineにあった描画解像度の変更機能が無いが、最近のShaderは元から解像度が高いのであまり必要ないと言える。

・Shader側でUltra設定にすれとさらに綺麗になっている気がする。ただし激重。

DHの設定

・視野の隣のボタンから。

「Enable Rendering」:LoDチャンク描画をON/OFF

「LOD Chunk Render Radius」:DHの描画距離(デフォルト:256、ビデオ設定の描画距離とは独立している)

「Quality Preset」:LoDチャンクの品質(Minimum~Extreme)

「CPU Load」:DHに使うCPUのスレッド数(Minimal Impact~I Paid For The Whole CPU)

「Enable Distant Generation」:LoDチャンク生成のON/OFF

「Enable Server Generation」:DHが入っている鯖からLoDチャンクを受け取るかのON/OFF(シングルでは関係無い)

「Show Generation Progress」:LoDチャンク生成の進捗をゲーム画面に表示(これをONにしなくてもF3画面には表示される)

「Enable Cloud Rendering」:DHの雲の描画のON/OFF

ー通常の描画距離との相性、RTMオブジェクトについてー

・RTMのオブジェクトの大半はエンティティか、タイルエンティティで、これがDHの簡略化と相性が悪い。

・つまり、ビデオ設定の描画距離=RTMのオブジェクトが正常に描画される距離。

・撮影の際、ビデオ設定の描画距離はなるべく長い方が良い。

・特に前面展望では、ビデオ設定の描画距離が長くないと見た目が残念になる。

・画像ではビデオ設定の描画距離が8、DHの描画距離が32。

描画バグ等の不具合について

・ShaderがOFFの時に車体が透ける。原因不明。台車はなぜか大丈夫。

・ShaderがONだとなぜか治る。Angelica側の修正で治った。
・車体の影が無いのはKaizPatchX側で修正済み。

・黒レールバグが復活。原因不明。ShaderがONだと多少ごまかせるかも。KaizPatch側で修正済み。

・Shaderによっては半透明がおかしい。Angelica側で修正済み。

・Angelica 2.1.33からSEUSRenewedが割とまともに動くようになった。

・ただし、照明のバグとタイルエンティティの描画が変なのはそのまま。

・1.12.2likeのマーカーがバグって使えない。Angelicaに必要な機能が入っていないので、サポートされない。