Optifabricについてのメモなど

Fabricへの移行について

**************************

MinecraftJava版でModを導入する為にForgeを使用していましたが、少し前にFabricに移行しました。理由はいくつかあります。

 

・Forgeはマイクラのバージョンアップへの対応が遅い

・Fabric専用の優れたModが増えた

・上記に関連して、Optifineの機能を代替し、より優れたModが出揃った

 

大きな理由はこんなとこでしょうか。

 

RenewedシリーズとFabricの互換性について

***********************************************

しかし、ここで個人的に大きな問題があります。自作のリソースパックである「Renewed Animal」と「Renewed Allies」は、共にOptifineのカスタムエンティティ機能とランダムエンティティ機能を前提にしている、という事です。

 

OptifineはForgeを使う人ならほぼ100%の人が使用するであろう、軽量化やシェーダー管理のためのModですが基本的にFabricとは互換性が無く、そのまま入れるとゲームが起動しません。

 

前述のとおり、Optifineのほとんどすべての機能はFabric用の別のModで置き換えることが出来ます。Optifineの問題点や、代替MODを列記してあるサイトがとても便利なのでリンクを貼っておきます。 

lambdaurora.dev

 

で、問題はカスタムエンティティ機能とランダムエンティティ機能です。

ランダムエンティティ機能に関しては、恐らく下記のMODで全く問題なく再現されます。

Entity Texture Features

 

カスタムエンティティ機能に関しても代替MODは存在するのですが、まだ全てのモブに対応していません。恐らく小さな、普段のゲームプレイで遭遇しにくいものは実装の優先順位が低そうです。

Custom Entity Models

*Optifine用に作られたリソパに対してはModのOption設定を変更する必要があります

Renewed Animalでモデルを変更した動物のうち、2022/5/11時点で未対応なのは

 

タラ(cod) イルカ(dolphin) ロバ(donkey) ヒカリイカ(glow_squid) ヤギ(goat) ラマ(llama) ラバ(mule) パンダ(panda) オウム(parrot) シロクマ(polar_bear) フグ(Puffer_fish関連モデル3つ) イカ(squid) 行商人のラマ(trader_llama) カメ(turtle)

 

の様です。まぁ、確かに優先順位は低いかもね…。個人的にイカとパンダとオウム(そもそもインコとオウムを混同してるからね)は許せないけどね!

 

Renewed Alliesの方はそもそもそもそも3種類のモブしか変更していませんが、アイアンゴーレムしか対応していません。

つまり、スノウゴーレム(snow_golem)とストライダー(strider)は外見が壊れます。ストライダー早く対応してほしいなぁ。

 

Fabricへの対応策2点

**********************************

これに対して選択肢は二つあります。

 

1.Renewed AnimalとRenewed Alliesのファイルを解凍して、Custom Entity ModelsModが未対応のモブモデルのデータを抜く

 

具体的には、解凍したファイルの

assets>minecraft>optifine>cem

にあるjemファイルの名前を変更するか、削除するというやり方になります。恐らくこれが一番問題が少ないでしょう。

追記

問題めっちゃあった!jemファイルが正確に反映されてなくて、モデルの表示がおかしくなったりテクスチャがずれたりしてますね…確認したのはウシの胴体が浮いてるのと、ヒツジの顔がひとマスずれてること。惜しいな―・・・

追記終わり

 

2.Optifabricを導入して、FabricとOptifineを併用する

Renewed AnimalとRenewed AlliesのすべてのモデルをFabric上で対応させるにはこうするしかないのですが、これは正直お勧めしません。僕は開発者としてデバックもあるのでこちらの方法にしてますが…

追記

現状、表示上はこちらの方が問題が少なかった。うーん、作業が大変だぞ。

追記終わり

 

Optifabricはかなり無理してOptifineを使えるようにしているらしく、Fabric用の複数のModと競合します。Optifabricとは問題なくてもOptifineとは競合する、という場合もあるらしく、Modの導入がややこしくなります。また、Optifine自体の開発が遅く、それに対応するOptifabricは更新がさらにそこから遅れる、という事でもあります。

ユーザーとしてはせっかく更新が早いFabricにしたのに、本末転倒です。

 

Optifabricを使用したMOD構成

***************************************************

とはいえ、自分も含めて何らかの利用でこちらの方法を取る方もいるでしょう。Optifabricはバージョンの選択がシビアで、Fabric、Optifabric、Optifineの三つのバージョンがきちんとかみ合っていないと起動しなくなります。

自分用のメモとして、MOD構成をメモしておきます。

 

Fabric (Forgeと違い、インストーラーを実行する際にバージョンを選ぶ)

Fabric API (なんか知らないけどFabricと一緒に入れるMOD 動作確認0.50.0)

Optifabric (FabricでOptifineを使用する為のMod 動作確認1.13.0)

Optifine (リソパの前提MOD 動作確認 1.18.2_HD_U_H6)

 

以上のバージョンの組み合わせなら、問題なく動作します。後は一緒に入れてるMODをメモしとく。こちらはお好みで。

各MODページの「Relations」を確認すると前提MODが分かるので必ず確認を。

・動作快適化MOD

AI Improvements (モブのAIの強化と処理の軽量化 動作確認0.4.0)

Better FPS Render Distance (地形描画処理の軽減 動作確認1.7)

Dynamic FPS (他のウィンドウを使ってる時のマイクラを軽くする 動作確認2.1.0)

Enhanced Block Entities (チェストとか?ブロックエンティティの処理改善 確認0.6)

Entity Culling (視界外のエンティティの処理軽減? 動作確認1.5.1)

Ferrite Core (良く分からんがメモリ使用量削減 動作確認4.2.0)

LazyDFU (古いバージョンのワールドで?分かってないかも 動作確認0.1.2)

Phosphor (光の処理を最適化 動作確認0.8.1)

Cull Particles (視界外のパーティクルを描写しない 動作確認2.0)

Smooth Boot (低スぺPCの起動を助ける?わからんけど 動作確認1.7.0)

 

・ビジュアル・サウンド強化MOD

Skin Layers 3D (プレイヤーのレイヤーテクスチャを立体的に 動作確認1.4.2)

bobby (遠くまで描画する シングル意味ないなこれ 動作確認3.1.1)

Lamb Dynamic Lights (設置していない光源も光る 動作確認1.18.4)

Effective (水しぶきMOD これはすごい 動作確認1.2.1)

FirstPerson Model (体が描写される 立ち位置が分かりやすい 動作確認2.1.0)

Not Enough Animations (プレイヤーのアニメーションを補完する 動作確認1.6.0)

sheep Consistency (毛を刈った後のヒツジに色が付く 動作確認1.0.4)

*Renewed Animalと併用するとテクスチャがちらつきます、次回アプデで修正できる

Sound Physics Remastered (音響強化 洞窟とかすごい 動作確認1.0.4)

 

・プレイ快適化MOD

Better Advancements (実績ツリーが見やすくなる 動作確認0.1.2.125)

BetterF3 (F3の表示が色分けされて見やすくなる 動作確認1.2.4)

Better Third Person (3人称視点でのカメラの挙動を使いやすく 動作確認1.7.2)

Camera Utils (カメラ位置を変更 3人称視点でPCを横にずらすのに 動作確認1.0.0)

Comforts (手軽になられる寝袋MOD 快適すぎる 動作確認1.1.2)

Copper Armor&Tools (銅ツールなど、銅の使い道を増やす 快適 動作確認2.0)

Falling Tree (斧で木の根元を切ると一度で伐採 快適すぎるんだ 動作確認3.4.2)

harvest with ease (作物を右クリック1回で収穫しつつ種付け 動作確認1.0.0)

IngameIME (日本語入力にちゃんと対応するようになる 神 動作確認1.6.5)

Inspecio (バケツやスポーンエッグの中身が表示される 神 動作確認1.3.1)

InvMove (インベントリを開いていても歩ける 動作確認0.6.2)

Leaf Decay (葉ブロックがすぐ消える 動作確認1.4.0)

odysseyHUD (コンパスと時計所持時に座標と時間を表示させる 動作確認3.4)

Simple HUD Utilities (画面に情報を増やす 耐久値だけ使ってる 動作確認2.4.0)

Trinkets (コンパスと時計の装備枠を追加する為に 動作確認3.3.0)

 

・何かのMODの前提MOD(上のMOD入れて動かない場合は以下のどれかが必要)

Architectury (動作確認4.2.50)

Cloth API (多分複数のMODに必須 動作確認3.2.64)

Cloth -Config- (多分MODの設定変更する時に必要 動作確認6.2.57)

Fabric Language Kotlin (日本語入力しやすくするやつに必要 動作確認1.7.4)

Mod Menu (ゲーム内でMODを一覧表示できるようにする 多分必須 動作確認3.1.1)

Placebo (何かに必要 忘れた 動作確認6.2.0)

 

今のところ以上になりまーす