MacbookAir(M1最小構成)で快適にMinecraftを遊ぶ方法 

## はじめに
これはM1搭載のMacbookAirの最小構成でMinecraftを遊ぶ方法を紹介する記事です。

以下の記事を参考にしています。

https://qiita.com/gonsee/items/d7e148de31ac69c133f7

**ストレージは256GBから512GBに変更しています。処理能力に大きな変化はないと思っているのでタイトルに最小構成と書いています。
誤解を招くようなタイトルですがご了承ください。**
([MacBook Air スペースグレイ](https://store.apple.com/jp/xc/product/MGN63J/A)のSSDだけ変更)

なお、使用する軽量化modの関係上、この記事では1.17.1を遊びます。

#### 前提
- そもそもMacbook Airはゲームをするようなマシンじゃないよ(><;)
- MacbookAirのディスプレイ高画質すぎる(2560x1600)から外部ディスプレイ(1920x1080)でゲームを遊ぶよ
- 最小構成って書いてあるけどストレージ256GB->512GBに変更してるよ
- 正規ランチャーを使えば、低fps(30fpsぐらい)だけど遊べるよ
- forgeを使えば、有名なmodも使えるよ
- でもこの記事は快適さを目指すのでfabricを使うよ
- 軽量化modなど(iris, sodium, lithium, phosphor)を入れてるよ。
- fabricはforgeと共存できないから、有名なmodは使えないことが多いよ
- 使用するソフトウェアの関係で一部遊べないバージョンのMinecraftがあるよ
- でも十分な検証をしていないから、実際には遊べるかもしれないよ
- 1.17.1を遊ぶよ

#### 記事と同じことをすれば
- 欲張らなければMacbookAirで60fpsで遊べるよ
- 40fpsぐらいしか出ないけど影mod(shader)使えるよ(1.16.5 ~ 1.18.1限定)


## 1. MultiMCをインストールする

[MultiMC](https://multimc.org)という代替ランチャーを使用します。複数のバージョン管理やmodの管理がしやすいよう開発されたものです。

<details><summary>なぜMultiMCを使用するの?</summary>
MultiMCでは、Minecraftの設定を細かくいじることができ、内部で使用するJavaも変更できます。
正規のランチャーではx86_64向けのJavaが動作します。
Macbook Airはarm64というアーキテクチャが使用されており、Rossetta2を介してx86_64向けのJavaを動かしています。
つまり、日本人が通訳者を介してアメリカ人と会話しているような状態です。
これでは素早く会話はできません。
なので、英語を喋れるようになろう！ということでMinecraft内部でarm64向けのJavaを使用したいのです。その為、MultiMCを使用します。
</details>

サイトの下部に *Download & Install*と書かれた部分がありますのでそこからダウンロード、インストールをお願いします。
![スクリーンショット 2022-02-04 22.02.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/1fc31aaf-7bfb-5105-6970-b2f1994099f8.png)

## 2. MultiMCでarm64 Javaを使用する為のスクリプトをダウンロード

遊びたいMinecraftのバージョンによって使用するスクリプトが異なります。
$versionはあなたが遊びたいバージョンを指しています。

1.13.x <= $version <= 1.18.xを遊びたい方はこちら
https://github.com/sdirkwinkel/m1-multimc-hack

? <= $version <= 1.12.xを遊びたい方はこちら
https://github.com/ankleBowl/m1-multimc-hack-1.8


## 3. 遊びたいMinecraftのバージョンにあったJavaのダウンロード

2で
1.13x <= $version <= 1.18.x を選んだ方は
Java11が必要?です。
~~m1-multimc-hackのリポジトリ内Readmeに書いてあるので適切なものをダウンロードしてください~~

2で
~~? <= $version <= 1.12.xを選んだ方も、まぁreadmeを読んでください~~

あんまり調べてないのでREADMEを読んでくださいとしか言えないのですが、Minecraftのバージョンが高いとJava17? JDK17?が要求されます(?)。
逆に低いとJDK8?が必要とされます(?)。これを間違えると動かなくなるので各スクリプトのREADMEをよく読んでください。(投げやり)

## 4. MultiMCでインスタンス(構成)を作成！！
(雑なので参考記事を見ていただくことをお勧めします)

MultiMCを開くと
こんな画面が出ます。(初期状態だと真ん中のブロックみたいなのがないです。)
マインクラフトログイン画面に飛ばされたりしますので、確認の上、ログインしてください。
赤塗りのはログイン後のマインクラフトIDが表示されてます。

![スクリーンショット 2022-02-04 22.20.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/3b4261f5-192d-968a-0da1-eb1cf7c5f97e.png)
で、、、左上の構成実例(インスタンス)の追加を押します。
このような画面になりますので、お好きなバージョンを選択していただきます。OKを押したら先っきの画面に戻って、ブロックみたいなのが追加されてると思うので、、
![スクリーンショット 2022-02-04 22.25.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/5a99701c-314b-13ba-99ac-bb9703bc41ee.png)
右クリックでメニューを出します。
~~起動を押すとそのまま起動するかクラッシュします。知らんけど~~

インスタンスの編集を押すと、いよいよ細かい設定画面に行けます。

![スクリーンショット 2022-02-04 22.26.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/72430e16-d8d2-b5a4-201b-86213787ed0b.png)

設定押します
![スクリーンショット 2022-02-04 22.31.29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/ec92e868-1d6c-b2c7-1a01-eb892f2b50e4.png)

- [ ] Javaのインストール  
にチェックを入れて先ほどインストールしたJavaのPathを記入してください。
(自動検出でもOK)

![スクリーンショット 2022-02-04 22.32.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/f57cc171-ba0b-4e93-7820-681a8159b264.png)


終わったらテストボタンを押して、

![スクリーンショット 2022-02-04 22.34.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/78d63ed1-8147-f5e0-8d8f-6b98d693d607.png)

`Javaのテストに成功しました！
プラットフォーム: aarch64
Javaバージョン: 17.0.2
Javaベンダー: Oracle Corporation`

みたいなのが出ればOKです。
次、カスタムコマンドに飛んでいただいて、

- [ ] カスタムコマンド  
にチェック入れてください
![スクリーンショット 2022-02-04 22.37.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/462c6593-616d-2ce5-828f-1e0666f01125.png)

Wrapperコマンド欄に先ほどダウンロードしたスクリプトの中のmcwrap.pyのpath入れてください

で、この時点で、起動が可能になったはずです。

~~(起動しなかったらスクリプトのREADME読んで)~~

また、この時点で、結構快適に遊べるはずです。

1.16.5 ~ 1.18.1以外の方は以上です。

1.16.5 ~ 1.18.1の方は、もっと上を目指せます。

## 5. Fabricインストール

インスタンスの構成の一番上のバージョンって欄を見てください
fabricをインストールってとこがあるので、押してください。
星マークがついてるものは推奨されるバージョンです。

![スクリーンショット 2022-02-04 22.42.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/3279c7ff-0aaf-1ac7-b7c9-b13f6e6381ae.png)

こんな感じになると思います。
![スクリーンショット 2022-02-04 22.44.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/7a35422b-dcb7-2b0f-e706-d06af1215148.png)

この状態で起動すると、下にmodded表記が出ると思います。
前提modであるfabricのインストールに成功しています。
~~似たものにforgeがありますが、あちらは、広範囲を変更するらしいです。
こっちは、小さく？なので更新が早いらしいです。知らんけど。
最近人気が高まってきてるらしい。知らんけど。~~

![スクリーンショット 2022-02-04 22.45.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/667800e6-1517-46db-7cdd-ca96f4b5ef74.png)

## 6. Iris(軽量な影mod?)とSodium(描写アルゴリズム変更してfps改善させるやつ)のインストール


https://irisshaders.net

ダウンロードします。起動します。
こんな画面でます。
ゲームバージョンだけ選択していただいて、好きな場所にインストールしてください。
minecraftってディレクトリが指定されてますけど、正直分かり易ければDesktopでもどこでもいいです。

install as fabric modはよくわからないのでチェックしなくていいと思います。試してないけど

![スクリーンショット 2022-02-04 22.52.25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/9f31f55c-ef1b-c5ca-6a4d-c083e36f108d.png)

インストールボタンを押した後、指定したディレクトリに以下の２つが出力されます。

![スクリーンショット 2022-02-04 22.59.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/2ad0a70f-0bfb-e4df-667a-f8a12fe4b5d7.png)


MultiMCに戻りまして左側の追加を押して、２つのjarを選択してください。

![スクリーンショット 2022-02-04 23.00.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/a2652172-1dc0-416f-8337-4695f205d7fd.png)


こうなります。
![スクリーンショット 2022-02-04 23.01.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/81ffa1a1-752d-f056-c86e-876c4b26c8d7.png)

同様に

https://www.curseforge.com/minecraft/mc-mods/phosphor

https://www.curseforge.com/minecraft/mc-mods/lithium

を導入するとめっちゃ軽くなります。

### 7. shaderを入れる


1.7.10 ~ 1.18.1まで対応してるshaderです。

profileをliteにすると40~50fpsぐらいで動作します。

https://shadersmods.com/sora-shaders/

ダウンロード後、こちらにドラッグドロップしてください。

![スクリーンショット 2022-02-04 23.38.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/73a788a6-6f36-f51b-d61b-e1c3e2daf609.png)


![2022-02-05_00.16.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263329/215dd874-48bc-8e40-c43a-d7c0fa7619ac.png)


以上。最後雑でした。
時間ができたら修正すると思います。


追記

sodiumのforge移植版(非公式)を発見した。
forge + kore + 有名なやつ
で動かせるかもしれない

黄昏の森は60fps張り付く程度で動いた(少ししか検証してない)

https://www.curseforge.com/minecraft/mc-mods/sodium-reforged