25w16a

Aus Minecraft Wiki
Zur Navigation springen Zur Suche springen
25w16a
Edition

Java Edition

Art

Entwicklungsversion

Erscheinungsdatum

15. April 2025

Mehr Infos

Mojang-Blog

Im Launcher

Ja

Entwicklungsversion
für

1.21.6

Download

Client (.json)
Server

Versions-ID

4423

Navigation

Zur Sammelseite
Zur Versionsübersicht

Versionen
Java Edition
Bedrock Edition
Konsolenedition

25w16a ist eine Entwicklungsversion zur Vollversion 1.21.6 der Java Edition. Mit 25w16a kommen folgende Neuerungen, Änderungen und Fehlerkorrekturen ins Spiel:

Änderungen[Quelltext bearbeiten]

Gegenstände[Quelltext bearbeiten]

Leinen

  • Leinen sind jetzt doppelt so dick, passend zur „Bedrock Edition“.
  • Leinen können jetzt verwendet werden, um zwei Kreaturen aneinanderzubinden.
    • Schleichinteraktion mit einer Kreatur, während mehrere Kreaturen an der Leine gehalten werden, bindet diese an die interagierende Kreatur.
    • Es ist nicht möglich, etwas an sich selbst anzubinden.
  • Wenn das erneute Anbinden einer Kreatur aufgrund der Entfernung zu einem sofortigen Reißen der Leine führen würde, wird das erneute Anbinden nicht durchgeführt.
  • Leinen können von einer Kreatur abgeschnitten werden, wenn man mit Scheren interagiert.
    • Dies gilt sowohl für die eigene Leinenverbindung als auch für alle daran angeschlossenen Kreaturen.
    • Werfer können jetzt Leinen von Kreaturen vor ihnen abschneiden, wenn sie mit Scheren ausgerüstet sind.
  • Die Leinenmechanik wurde verbessert. Die Leinenphysik wurde überarbeitet, um eine stabilere Leinenverbindung zu ermöglichen, insbesondere wenn sich angeleinte Objekte nicht am Boden befinden.
    • An der Leine gezogene Objekte orientieren sich nun zum Anleiner.
    • Der Einsatz einer Feuerwerksrakete beim Fliegen mit angeleinten Objekten unterbricht nun die Leinenverbindungen.
  • Beim Anleinen eines bereits angeleinten Kreaturen reißt die aktuelle Leine und der Spieler bindet das Objekt erneut an den Spieler.
    • Es ist nicht möglich, angeleinte Objekte von anderen Spielern zu stehlen.
  • Die Interaktionen mit einem Leinenknoten und Zaunblöcken haben sich geändert:
    • Befinden sich bei der Interaktion mit einem Leinenknoten oder Zaun vom Spieler angebundene Objekte in Reichweite des Knotens, werden diese erneut an den Leinenknoten oder Zaun gebunden.
    • Falls das Anbinden von Kreaturen aufgrund der Entfernung fehlschlägt oder nichts zum Anbinden vorhanden ist, überträgt der Spieler nun alle am Zaun angeleinten Objekte auf sich selbst.
    • Wenn nichts mehr am Leinenknoten hängt, verschwindet dieser.
    • Schleichinteraktion kann nur dazu führen, dass die Kreaturen des Spielers am Zaun befestigt werden.
    • Die Interaktion mit Scheren oder das Schlagen des Leinenknotens führt dazu, dass alle bestehenden Verbindungen unterbrochen werden.
  • Boote und große Kreaturen, die angeleint werden können, aber nicht in das Boot passen (Pferde, Esel, Maultiere, Dromedaren und Schnüffler), können jetzt in einer speziellen 4-Leinen-Konfiguration an den glücklichen Ghast angeleint werden.
    • Der glückliche Ghast präsentiert außerdem eine benutzerdefinierte Ebene, wenn er etwas über eine Vierfachverbindung angeleint.
    • Angeleinte Objekte in Vierfachverbindungen werden jetzt ohne Spiel gerendert.
  • Die Distanz zum Einrasten der Leine wurde von 10 auf 12 Blöcke geändert.
    • Der Abstand zwischen den Mittelpunkten der Begrenzungsrahmen von Kreaturen und nicht deren Füßen wird zur Bestimmung des Abstands zwischen zwei angeleinten Kreaturen verwendet.
    • Die Leine des glücklichen Ghast ist jetzt länger – mit einer freien Bewegungsdistanz von 10 Blöcken und einem Einrasten der Leine bei 16 Blöcken.

Allgemein[Quelltext bearbeiten]

Blockmodelle

  • Der Wert von elements[].rotation.angle in Blockmodellen ist nicht mehr auf Multiplikatoren von 22,5 Grad beschränkt und kann nun einen beliebigen Winkel zwischen -45 und +45 annehmen.

Gegenstandskomponenten

  • painting/variant
    • Inline-Varianten werden nicht mehr akzeptiert.

Datenpaket

  • Die Version des Paketformats ist jetzt 73.

Ressourcenpaket

  • Die Version des Paketformats lautet jetzt 57.
  • Alle Core-Shader-Uniformen sind jetzt Uniformblöcke.
  • Die Wolkentextur (clouds.png) kann nicht mehr eingefärbt werden.
  • Blockmodellrotationen sind nicht mehr auf ein Vielfaches von 22,5 beschränkt.

Shaderdaten

  • Alle integrierten Uniformen sind jetzt Uniformblöcke anstelle von undurchsichtigen, losen Uniformen.
  • Benutzerdefinierte Uniformen für Post-Processing-Shader sind jetzt Uniformblöcke.
  • Uniformdefinitionen in JSON-Dateien erfolgen jetzt blockweise.
  • Post-Processing-Effektdefinitionen
    • Die Einträge in der Zielkarte wurden erweitert, um neue Eigenschaften zu unterstützen.
      • Neues optionales Boolean-Feld: persistent
        • Standard: false
        • Wenn „true“, bleibt dieses Renderziel über mehrere Frames hinweg persistent.
        • Der Inhalt des Ziels wird gelöscht, wenn die Bildschirmgröße geändert wird.
      • Neues optionales Feld: clear_color
        • Standard: [0, 0, 0, 0]
        • Format: ganzzahliger ARGB-Wert oder Float-Array in der Reihenfolge [R, G, B, A]
        • Wenn dieses Ziel erstellt oder gelöscht wird, wird es mit dieser Farbe gefüllt.
    • Die Uniformwerte sind jetzt eine Liste pro Block statt einer globalen Liste.
      • z. B. uniforms: { "UniformBlockName": [ { "type": "vec2", "value": [...] } ] }
        • Die Reihenfolge der Uniformen in einem Block muss der Reihenfolge im Shader entsprechen.
    • name wird als Teil einer Uniformdefinition nicht mehr verwendet.
    • value ersetzt als Teil einer einheitlichen Definition das alte values, und der Typ hängt vom Feld type ab.
      • Dieses Feld ist obligatorisch.
      • "type": "int" benötigt "value": 123 (einen Int-Wert).
      • "type": "float" benötigt "value": 123,4 (einen Float-Wert).
      • "type": "vec2" benötigt "value": [1,2, 3,4] (zwei Float-Werte).
      • "type": "vec3" benötigt "value": [1,2, 3,4, 5,6] (drei Float-Werte).
      • "type": "ivec3" benötigt "value": [1, 2, 3] (drei Int-Werte).
      • "type": "vec4" benötigt "value": [1.2, 3.4, 5.6, 7.8] (vier Floats).
      • "type": "matrix4x4" benötigt "value": [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0] (vier Zeilen mit je vier Spalten aus Floats).
  • Nachbearbeitung von Effekt-Shadern
    • Anstatt jedes Uniform als eigenen opaken Typ zu verwenden, werden sie nun in Uniform-Blöcken gruppiert.
      • Sie werden gemäß der Pass-Definition in der JSON-Datei festgelegt und können sowohl von Vertex- als auch von Fragment-Shadern gemeinsam genutzt werden.
    • Die Größenliste (alle vec2 *Size Uniformen) wird nun durch einen einzigen SamplerInfo Uniform-Block ersetzt.
      • Enthält in der Reihenfolge die Größe der Ausgabetextur, gefolgt von der Größe jeder Eingabetextur.
      • Die Reihenfolge der Texturen in der Definitionsdatei bestimmt die Reihenfolge der Sampler in dieser Uniform.
      • Für die meisten Postchains sind dies wie zuvor einfach OutSize und InSize.
      • Alle Größen sind vec2
  • post/bits.fsh
    • Erwartet eine BitsConfig von float Resolution und float MosaicSize.
  • post/blit.fsh
    • Erwartet eine BlitConfig von vec4 ColorModulate.
  • post/blur.vsh und post/box_blur.fsh
    • Erwartet eine BlurConfig von vec2 BlurDir und float Radius.
  • post/color_convolve.fsh
    • Erwartet eine ColorConfig von vec3 RedMatrix, vec3 GreenMatrix und vec3 BlueMatrix.
  • post/invert.fsh
    • Erwartet eine InvertConfig von float InverseAmount.
  • post/rotscale.vsh
    • Erwartet eine RotScaleConfig von vec2 InScale, vec2 InOffset und float InRotation.
  • post/spiderclip.fsh
    • Erwartet eine SpiderConfig von vec4 Scissor und vec4 Vignette.
  • Globals Uniform Block
    • Verfügbar über #moj_import <minecraft:globals.glsl>
    • Die meisten Shader können diesen Uniform Block empfangen, auch wenn sie ihn normalerweise nicht verwenden.
    • Enthält ScreenSize, GlintAlpha, GameTime und MenuBlurRadius.
      • MenuBlurRadius ist der Unschärferadius des Hintergrunds bei geöffnetem Menü.
  • Fog Uniformblock
    • Verfügbar über #moj_import <minecraft:fog.glsl>
    • Die meisten Shader können diesen Uniformblock empfangen, auch wenn sie ihn normalerweise nicht verwenden.
    • Enthält FogColor, FogShape, FogStart, FogEnd, FogSkyEnd und FogCloudsEnd.
      • FogSkyEnd ist neu und gibt an, wo der Nebel beim Zeichnen des Himmels enden soll.
      • FogCloudsEnd ist neu und gibt an, wo der Nebel beim Zeichnen der Wolken enden soll.
      • FogEnd ist wie bisher die „normale“ Nebelgrenze.
    • FOG_IS_SKY ist jetzt für die Shader position.vsh/position.fsh verfügbar, wenn sie den Himmel rendern.
  • Projection Uniform Block
    • Verfügbar über #moj_import <minecraft:projection.glsl>
    • Die meisten Shader können diesen Uniform Block empfangen, auch wenn sie ihn normalerweise nicht verwenden.
    • Enthält ProjMat unverändert.
  • DynamicTransforms Uniform Block
    • Verfügbar über #moj_import <minecraft:dynamictransforms.glsl>
    • Ist nicht mehr für Shader verfügbar, die ihn normalerweise nicht verwenden.
    • Enthält ModelViewMat, ColorModulator, ModelOffset, TextureMat, LineWidth.
  • Lighting Uniform Block
    • Verfügbar über #moj_import <minecraft:light.glsl>
    • Die meisten Shader können diesen Uniform Block empfangen, auch wenn sie ihn normalerweise nicht verwenden.
      • Die Werte sind jedoch möglicherweise nicht sinnvoll, wenn der Shader sie normalerweise nicht erwartet.
    • Enthält Light0_Direction und Light1_Direction.
  • CloudInfo Uniform Block
    • Nur verfügbar für die Wolken-Shader (rendertype_clouds.vsh/rendertype_clouds.fsh).
      • Enthält CloudColor, CloudOffset und CellSize (neu).
        • CellSize enthält die Größe einer einzelnen Wolkenzelle.
  • LightmapInfo Einheitlicher Block
    • Nur für den Lightmap-Shader (lightmap.fsh) verfügbar.
    • Enthält AmbientLightFactor, SkyFactor, BlockFactor, UseBrightLightmap, NightVisionFactor, DarknessScale, DarkenWorldFactor, BrightnessFactor, SkyLightColor ohne Verhaltensänderung.

Fehlerkorrekturen

Einzelnachweise[Quelltext bearbeiten]