Java & Apple Silicon - Minecraft auf dem M1Max

AppleNutzer17

Mitglied
Thread Starter
Registriert
05.12.2016
Beiträge
628
Guten Abend MacUsers,

habe heute mal mit meinem neuen MacBook Pro (M1 max; 64 GB Ram; 4 TB, 32 Grafikkerne) bisschen ausprobiert, was so an Spielen geht. Steam läuft eigentlich alles recht gut, da kann ich nicht klagen. Für's gelegentliche Spielen mehr als in Ordnung.

Aber Minecraft läuft echt nicht schön. Welt in der nicht viel lost ist: knapp 60 FPS, wenn ich mich nicht bewege und 30 (+/- 10 FPS), wenn ich mich bewege. Mit Drops auf < 10 FPS.
Laut Aktivitätsanzeige ist nichts auch nur ansatzweise ausgelastet.

Was kann denn dann da limitieren? Wie wird denn Java auf Apple Silicon ausgeführt? Läuft das durch rosetta 2? Kann das nur auf den Effizienzkern (Minecraft hat ja kaum multithreading) zugreifen, weil das Kern #1 oder kann das auch von macOS auf einen Leistungskern geschickt werden?

Danke Euch für Euren Input. :)

PS: Minecraft im über Fabric habe ich lithium und sodium installiert. Das macht's aber nicht wirklich flüssiger.
 

sailingHobbit

Aktives Mitglied
Registriert
18.03.2006
Beiträge
6.163
Kann dir nicht genau sagen woran es liegt, aber bestätigen, dass Minecraft auf Apple Silicon erheblich schlechter läuft wie auf Intel. Auf einem Intel MacBook Pro von 2020 mit Iris Plus Grafik läuft es bedeutend besser wie auf dem M1 Mac Mini.
Ich vermute stark, dass es an der Nutzung von OpenGL liegt. Das ist von Apple schon länger für tot erklärt worden und sie optimieren ihre eigenen GPU natürlich voll auf Metal als API. Ich tippe daher auf den AS Macs wird das nie sinnvoll laufen, wenn Apple den OpenGL Support irgendwann mal ganz einstellen sollte sogar gar nicht mehr.
 

AppleNutzer17

Mitglied
Thread Starter
Registriert
05.12.2016
Beiträge
628
Das ist dann leider auch nichts, was man (als Nutzer) irgendwie mit Aufwand beheben kann. Schade.
 

cb4

Mitglied
Registriert
20.03.2009
Beiträge
649
Guten Abend MacUsers,

habe heute mal mit meinem neuen MacBook Pro (M1 max; 64 GB Ram; 4 TB, 32 Grafikkerne) bisschen ausprobiert, was so an Spielen geht. Steam läuft eigentlich alles recht gut, da kann ich nicht klagen. Für's gelegentliche Spielen mehr als in Ordnung.

Aber Minecraft läuft echt nicht schön. Welt in der nicht viel lost ist: knapp 60 FPS, wenn ich mich nicht bewege und 30 (+/- 10 FPS), wenn ich mich bewege. Mit Drops auf < 10 FPS.
Laut Aktivitätsanzeige ist nichts auch nur ansatzweise ausgelastet.

Was kann denn dann da limitieren? Wie wird denn Java auf Apple Silicon ausgeführt? Läuft das durch rosetta 2? Kann das nur auf den Effizienzkern (Minecraft hat ja kaum multithreading) zugreifen, weil das Kern #1 oder kann das auch von macOS auf einen Leistungskern geschickt werden?

Danke Euch für Euren Input. :)

PS: Minecraft im über Fabric habe ich lithium und sodium installiert. Das macht's aber nicht wirklich flüssiger.
Das passt so gar nicht dazu, was andere zum Thema Minecraft auf M1 berichten:

Hier https://www.macgamerhq.com/apple-m1/minecraft-m1-mac/ noch auf den "normalen" M1 - mindestens 60 fps mit Max-Settings.
Oder https://youtu.be/jUavsF0xTxM für ein Runde Minecraft in HD, max Settings, 16 chunks. im Durchschnitt 40-45 fps. oder 30-35 fps in 4K.
Oder im Vergleich MBpro und MBair M1 https://youtu.be/z7SHpF3HEm8 mit 60 fps.
 

AppleNutzer17

Mitglied
Thread Starter
Registriert
05.12.2016
Beiträge
628
Ich bin mit 2560x1440 unterwegs, dort kommt macgamerhq auf die max. 60 FPS. Was aber, wie eingangs erwähnt, nicht konstant ist. Wiederum wenn ich mir das Video angucke, dann wundere ich mich, wie dieser Nutzer 16 chunks schafft, ich bin gerade mit 8 chunks unterwegs, also 1/4 der Größe.
 

AppleNutzer17

Mitglied
Thread Starter
Registriert
05.12.2016
Beiträge
628
Interessanter weise hat die Auflösung, also die Größe des Fensters, keinen Einfluss auf die Bildrate. Habe das mal deutlich verkleinert, das ändert aber nichts.
 

oneOeight

Aktives Mitglied
Registriert
23.11.2004
Beiträge
60.746
Du könntest natürlich ein anderes Java probieren als das mit Minecraft kommt.
Azul hat z.B. M1 Builds.
 

AppleNutzer17

Mitglied
Thread Starter
Registriert
05.12.2016
Beiträge
628

Anhänge

  • Minecraft-M1-using-Rosetta-2-610x382.jpg
    Minecraft-M1-using-Rosetta-2-610x382.jpg
    57 KB · Aufrufe: 46

AppleNutzer17

Mitglied
Thread Starter
Registriert
05.12.2016
Beiträge
628
Nun heißt es bei der Minecraft Version 1.18 pre 2, dass diese Java 17 unterstütz. Laut Reddit unterstützt Java 17 native Apple Silicon.

Wollte also mal die pre 2 öffnen und ausprobieren, davor noch kurz geguckt, ob ich Java 17 habe. In den macOS Einstellungen heißt es unter Jave, dass ich "Java 8-Update 311" habe. Das klingt mir jetzt nicht unbedingt nach "Java 17", oder werfe ich da was durcheinander?

Das Java Control Panel sagt aber, dass auf meinem System die empfohlene Java-Version installiert ist.

Ich verstehe das nicht. Wo liegt da mein Denkfehler?
 

AppleNutzer17

Mitglied
Thread Starter
Registriert
05.12.2016
Beiträge
628
.. ja: Und wenn ich die pre 2 laufen lasse, dann ruckelt es vielleicht etwas weniger, aber ist immer noch weit davon entfernt, was Apple Silikon können sollte. Und laut Aktivitätenanzeige ist es nach wie vor ne Intel-Anwendung.
 

AppleNutzer17

Mitglied
Thread Starter
Registriert
05.12.2016
Beiträge
628
Dann bestätigt er wohl, dass ich Java 17 habe:

Code:
openjdk version "17.0.1" 2021-10-19 LTS
OpenJDK Runtime Environment Zulu17.30+15-CA (build 17.0.1+12-LTS)
OpenJDK 64-Bit Server VM Zulu17.30+15-CA (build 17.0.1+12-LTS, mixed mode, sharing)
 

gishmo

Aktives Mitglied
Registriert
16.03.2004
Beiträge
1.273
stimmt ... Das sieht gut aus. Ich nehme an, Du hast die M1-Version installiert. Ich weiss aber nicht, ob Minecraft die defaultmässig installierte VM nimmt oder da ne eigene Einstellung hat, die man anpassen muss.
 

sailingHobbit

Aktives Mitglied
Registriert
18.03.2006
Beiträge
6.163
stimmt ... Das sieht gut aus. Ich nehme an, Du hast die M1-Version installiert. Ich weiss aber nicht, ob Minecraft die defaultmässig installierte VM nimmt oder da ne eigene Einstellung hat, die man anpassen muss.
Per Default nimmt es ein bundled JRE, das man aber überschreiben kann. Klappt aber bei weitem nicht mit jeder Java Version.
 
Oben Unten