跳到正文

ElytraRenderFix

作者:Quarxy

This mod fixes a bug in Minecraft's code that causes elytras to have a missingno texture when an item renders a trimmed armor piece AND an elytra via resource pack and minecraft:equippable component.

收藏

截图

介绍

中文介绍正在准备中,下面暂时显示原文。

ElytraRenderFix

With the minecraft:equippable component, it is possible to determine the layers that an item renders when it is equipped. This mod fixes a bug that occurs when rendering a chestplate layer and an elytra together. If the chestplate has a trim, the Elytra has a missingno texture because Minecraft’s rendering code tries to apply the trim to the Elytra layer. This mod fixes this bug by simply preventing the trims from being rendered on the Elytra layer (wings). This ensures that the chestplate, trim, and Elytra are rendered correctly.

Please note that mods requiring trims to render on top of the elytra (like Elytra Trim mods) might be incompatible with this one, since it skips part of the elytra rendering process.
If you experience issues, try removing this mod first — that might already fix it.

For example, the following JSON code is an equipment model (see Minecraft Wiki). This specifies that any item with the corrosponding asset_id in the item component minecraft:equippable (see Minecraft Wiki) should render normal netherite armor on the humanoid and humanoid_leggings layers (armor layers for helmet, chestplate, leggings, and boots) and, in addition, an elytra on the wings layer (using the player’s cape if available).

netherite_armor_with_elytra.json:

{
  "layers": {
    "humanoid": [
      {
        "texture": "minecraft:netherite"
      }
    ],
    "humanoid_leggings": [
      {
        "texture": "minecraft:netherite"
      }
    ],
	"wings": [
      {
        "texture": "minecraft:elytra",
        "use_player_texture": true
      }
    ]
  }
}

minecraft:equippable component of the item (here a netherite chestplate):

{
  "slot": "chest",
  "asset_id": "mynamespace:netherite_armor_with_elytra"
}

If this item now has an armor trim, Minecraft attempts to render the trim over the normal armor layer (humanoid / humanoid_leggings) as well as over the wings layer. However, since the wings layer cannot accept a trim, it receives a missingno texture in its entirety.

This mod does nothing more than prevent trims from being rendered on the wings layer. This way, armor with trim also works with such a resource pack. (See below for example)

| An image of the player wearing a chestplate like the one described while using the mod. | An image of the player wearing a chestplate like the one described while NOT using the mod. |
|————–|—————–|
| With the mod | Without the Mod |

(I had to create a new repository because I needed to set up a brand-new project for the major version update to 26.1, Click here for the old repo, the new one is linked via modrinth)

常见问题

ElytraRenderFix 支持哪些 Minecraft 版本?

ElytraRenderFix 支持 Minecraft Java 版 1.21.10–26.1,共 3 个版本,可用的加载器:Fabric。下载时注意选择和你游戏版本一致的文件。

ElytraRenderFix 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅客户端。

评论

登录后评论和评分