BBSMC Logo
模组
资源包
数据包
整合包
光影
插件
软件资源
论坛
登录
模组插件数据包光影资源包整合包资源
登录
设置
[EMF]实体模型特性 - Entity Model Features

[EMF]实体模型特性 - Entity Model Features

这是一款不为再使用高清修复(OptiFine)的玩家打造的模组,增加了对高清修复自定义实体模型的支持。

571
0
优化
实用工具
游戏机制

基本信息

我的世界Java版本

1.21.2–1.21.5
1.21
1.20–1.20.4
1.19.2–1.19.4
1.18.2

平台

\n \n \n Fabric
\n \n \n Forge
NeoForge
\n \n \n \n \n \n \n \n \n Quilt

运行环境

客户端

其他链接

反馈问题 查看源码
Modrinth地址

搬运团队

BBSMC 官方搬运(1)
BBSMC 官方搬运(1)团队

详情信息

许可证 LGPL-3.0-only
发布于 7 months ago
更新于 2 months ago
简介渲染图更新日志版本百科讨论

全部版本

1
2
3
4
7

[EMF] Entity Model Features 2.1.1

on 2024 Dec 01
下载

[2.1.1]

  • 现在需要 ETF 6.1.3 或更高版本
  • 添加了新的 EMFAnimationAPI 方法,以允许其他模组:
    • 暂停/恢复实体的整个自定义模型动画
    • 暂停/恢复实体动画中的单个自定义模型部分
    • 锁定/解锁实体,使其仅使用其原生模型
    • 将实体和块实体转换为 EMFEntity 接口的实用方法 这些将允许其他模组在需要时抑制特定实体的 EMF 动画和模型,例如用于表情
  • 修复了 EMF 将值应用于具有给定 ID 的最后一部分,而不是第一部分的问题*(OptiFine 对等性)*
  • 修复了 scale 模型部分的默认设置在具有新格式动画的生物(如守卫者和青蛙)上未正确应用的问题
  • 修复了在 1.21 中导出模型时的崩溃
  • 修复了 1.21 中的 not building 崩溃
  • 修复了 root 部分在模型导出中未出现的问题
  • 修复了一个错误,其中项目附件可能会延续到其他生物渲染中
  • 修复了末影龙 spine 部分在具有纹理覆盖时未渲染的问题
  • 当加载自定义块实体模型时,允许 EMF 禁用 EBE 设置的设置,现在在 EMF 配置警告屏幕中具有更详细和信息丰富的显示
  • 修复了使用旧的 modded 目录格式的模组模型导出日志,导出日志现在还给出了从资产文件夹开始的 jem 的完整路径
  • 模型导出现在放置在 .minecraft 目录中的 emf/export/assets/ 文件夹中,具有从资产文件夹开始的完全正确和命名空间的路径
  • 修复了原生旗帜模型的摆动在 EMF 动画之上添加的问题,因为原生旗帜在多个阶段中渲染
  • 将 pi 从 3.1415926 更改为 3.1415927,以匹配原生 pi 使用,并且似乎与 OptiFine 匹配,尽管文档如此
  • 更改了各种数学方法,例如 sin() & cos(),不再使用 java.lang.Math,而是使用 Minecraft 内部数学类
  • 上述 2 个更改修复了 fa 1.9.1 中的复仇者
  • 添加了对 inner_armor.jem 和 outer_armor.jem 的支持,作为实体特定装甲模型未找到时的回退,例如 zombie_inner_armor.jem 和 zombie_outer_armor.jem
  • 修复了一些缺失的生物对 is_aggressive 变量的支持
  • 将 height_above_ground 变量更改为检测具有可站立顶部表面的块,而不仅仅是实体块
  • 修复了一个导致某些块实体模型纹理覆盖在第一人称视图中出现在其虹膜着色器阴影传递位置的错误
  • 添加了一个优化选项,将在虹膜阴影传递期间跳过重新计算实体模型动画,默认启用,并且应该始终保持启用,仅在未来虹膜 api 更改或虹膜端口出现奇怪行为的情况下才是一个选项。
  • 修复了三叉戟模型部分在 OptiFine 映射中意外声明额外部分的问题,这可能导致原生三叉戟部分在许多自定义三叉戟模型中重新出现

[EMF] Entity Model Features 2.1.1

on 2024 Dec 01
下载

[2.1.1]

  • 现在需要 ETF 6.1.3 或更新版本
  • 添加了新的 EMFAnimationAPI 方法,以允许其他模组:
    • 暂停/恢复实体的整个自定义模型动画
    • 暂停/恢复实体动画中的单个自定义模型部分
    • 锁定/解锁实体以仅使用其原版模型
    • 将 Entity 和 BlockEntity 转换为 EMFEntity 接口的实用方法 这些将允许其他模组在需要时抑制特定实体的 EMF 动画和模型,例如用于表情
  • 修复了 EMF 将值应用于具有给定 ID 的最后一部分,而不是第一部分的问题*(OptiFine 兼容性)*
  • 修复了在 1.21 中 scale 模型部分的默认设置未正确应用于带有新格式动画的生物(如狱卒和青蛙)的问题
  • 修复了在 1.21 中导出模型时的崩溃问题
  • 修复了 1.21 中的 not building 崩溃问题
  • 修复了 root 部分在模型导出中不出现的问题
  • 修复了一个错误,其中物品附件可能会延续到其他生物渲染中
  • 修复了末影龙 spine 部分在有纹理覆盖时不渲染的问题
  • 当加载自定义块实体模型时,允许 EMF 禁用 EBE 设置的设置,现在在 EMF 配置警告屏幕中具有更详细和信息丰富的显示
  • 修复了使用旧的 modded 目录格式的模组模型导出日志,导出日志现在还给出了从 assets 文件夹开始的 jem 的完整路径
  • 模型导出现在放置在 .minecraft 目录中的 emf/export/assets/ 文件夹中,具有从 assets 文件夹开始的完全正确和命名空间的路径
  • 修复了原版旗帜模型的摆动在 EMF 动画之上添加的问题,因为原版旗帜在多个阶段中渲染
  • 将 pi 从 3.1415926 更改为 3.1415927,以匹配原版 pi 的使用,并且似乎与 OptiFine 匹配,尽管文档如此
  • 更改了各种数学方法,如 sin() & cos(),不再使用 java.lang.Math,而是使用 Minecraft 内部数学类
  • 上述 2 个更改修复了 fa 1.9.1 中的复仇者
  • 添加了对 inner_armor.jem 和 outer_armor.jem 的支持,作为实体特定装甲模型未找到时的回退,例如 zombie_inner_armor.jem 和 zombie_outer_armor.jem
  • 修复了一些缺失的生物对 is_aggressive 变量的支持
  • 将 height_above_ground 变量更改为检测具有可站立顶部表面的块,而不仅仅是实心块
  • 修复了一个导致某些块实体模型纹理覆盖在第一人称视图中出现在其虹膜着色器阴影通道位置的错误
  • 添加了一个优化选项,该选项将在虹膜阴影通道期间跳过重新计算实体模型动画,默认开启,并且应该始终保持开启,仅在未来虹膜 API 更改或虹膜端口出现奇怪行为的情况下才是一个选项。
  • 修复了三叉戟模型部分在 OptiFine 映射中意外声明额外部分的问题,这可能导致原版三叉戟部分在许多自定义三叉戟模型中重新出现

[EMF] Entity Model Features 2.1

on 2024 Dec 01
下载

无

[EMF] Entity Model Features 2.0.2

on 2024 Dec 01
下载

2.0.2

  • 修复了 2.0.1 中第一人称手设置未正确重置的问题
  • 添加了is_swinging_right_arm和is_swinging_left_arm布尔变量, 用于区分双足模型中的右臂和左臂摆动,如果没有手臂在摆动,则两者都应为 false,如果swing_progress > 0,则其中一个应为 true。
  • 添加了对可选player_cape.jem模型文件的支持,用于更好地为玩家披风进行动画处理 player_cape.jem仅包含一个cloak部分,其位置与常规player.jem中的完全相同, 如果存在此模型,它将以一种特殊方式渲染,不会将原版动画应用于披风。 允许更轻松的自定义动画 (注意,此 jem 文件不能通过 EMF 配置导出,但导出的player.jem模型将完美适用于它,从 v2.0.2 开始)

在渲染和自定义动画之前,EMF 应用于player_cape.jem的唯一变换是:

  • 围绕y轴将披风旋转 180 度。(与原版匹配)
  • 将披风向后平移 2 像素。(与原版匹配)
  • 如果玩家穿着胸甲,则将披风再向后平移 1 像素并向上平移。(与原版匹配)

不会对披风应用其他旋转或平移,允许完全自定义动画。 如果player_cape.jem不存在,常规player.jem中的cloak部分将渲染,但不会受益于 EMF 取消其原版动画

[EMF] Entity Model Features 2.0.2

on 2024 Dec 01
下载

2.0.2

  • 修复了 2.0.1 中第一人称手部设置未正确重置的问题
  • 添加了is_swinging_right_arm和is_swinging_left_arm布尔变量, 用于区分双足模型中的右臂和左臂摆动,如果没有手臂在摆动,则两者都应为 false,如果swing_progress > 0,则其中一个应为 true。
  • 添加了对可选的player_cape.jem模型文件的支持,用于更好地为玩家披风进行动画处理 player_cape.jem仅包含一个cloak部分,其位置与常规player.jem中的完全相同, 如果存在此模型,它将以一种特殊方式渲染,不会将香草动画应用于披风。 允许更轻松的自定义动画 (注意,此 jem 文件不能通过 EMF 配置导出,但导出的player.jem模型将完美适用于它,从 v2.0.2 开始)

在渲染和自定义动画之前,EMF 对player_cape.jem应用的唯一变换是:

  • 围绕y轴将披风旋转 180 度。(与香草匹配)
  • 将披风向后平移 2 个像素。(与香草匹配)
  • 如果玩家穿着胸甲,则将披风再向后平移 1 个像素并向上平移。(与香草匹配)

不会对披风应用其他旋转或平移,允许完全自定义动画。 常规player.jem内部的cloak部分将在player_cape.jem不存在时渲染,但不会受益于其香草动画被 EMF 取消

[EMF] Entity Model Features 2.0.1

on 2024 Dec 01
下载
  • 添加了is_first_person_hand变量,用于检测正在渲染的模型部分是否是第一人称玩家的手
  • 在模型设置 GUI 中添加了player settings类别
    • 添加了一个设置,强制自定义玩家模型仅适用于你自己的玩家,而不适用于多人游戏中的其他玩家
    • 添加了一个设置,强制阻止所有自定义手部动画在第一人称视图中播放
    • 两者默认均为禁用状态
  • 修复了is_sneaking变量无法正常工作的问题,现在应该与所有具有潜行姿势的模型对齐
  • 在动画文档中添加了缺失的变量
  • 修复了块实体和其他一些边缘情况,模型中的纹理覆盖完全不渲染的问题

[EMF] Entity Model Features 2.0.1

on 2024 Dec 01
下载
  • 添加了is_first_person_hand变量,用于检测正在渲染的模型部分是否是第一人称玩家的手
  • 在模型设置 GUI 中添加了player settings类别
    • 添加了一个设置,强制自定义玩家模型仅应用于你自己的玩家,而不是多人游戏中的其他玩家
    • 添加了一个设置,强制阻止所有自定义手部动画在第一人称视图中播放
    • 两者默认均为禁用状态
  • 修复了is_sneaking变量无法正常工作的问题,现在应该与所有具有潜行姿势的模型一致
  • 向动画文档中添加了缺失的变量
  • 修复了块实体和其他一些边缘情况,模型中的纹理覆盖不会完全渲染

[EMF] Entity Model Features 2.0

on 2024 Dec 01
下载
  • 纹理覆盖现在在未找到纹理时提供“缺失纹理”纹理,而不是不应用

  • 修复了某些玩家动画资源包下的第一人称手抖动问题

  • 添加了ifb() randomb() catch()动画函数

    • ifb()是if()的布尔返回版本
    • randomb()是random()的布尔返回版本
    • catch(x, c, id)是一个新的调试函数,它将始终返回x,除非发生错误,在这种情况下它将返回c。id是可选的,它将使函数将c返回的原因打印到带有此id的日志中,以标识打印输出
  • 添加了is_jumping is_swimming is_gliding is_right_handed动画变量

  • 添加了modelRule modelSuffix var varb global_var global_varb随机属性

  • 移除了实体变量的限制,使其仅可从声明模型访问*(OptiFine 对等)* (wolf_collar.jem 现在可以正确访问同一狼上由 wolf.jem 设置的变量)

  • 在 gui 的模型列表中添加了模型显示,以便在导出其.jem 文件之前查看模型

  • 添加了附件点

  • 添加了箭头和光谱箭头模型支持

  • 添加了OptiFine 1.20.4_HD_U_I8_pre3中列出的新模型部件

  • 添加了变量distance is_blocking is_crawling height_above_ground fluid_depth fluid_depth_down fluid_depth_up

  • 添加了全局变量,它们以“global_var.<name>”(浮点数)或“global_varb.<name>”(布尔值)的格式指定,它们由所有实体和方块实体共享,并允许进行更多技术方面的操作,如计数实体

  • 改进了规则索引,现在在未满足任何规则时正确应用 0

  • 修复了 v1.3 中返回的cannot inherit from final class forge 崩溃

  • 将变体属性移动到 ETF 中

  • 修复了崩溃.jem 加载失败 java.lang.NullPointerException: 由于“textureSize”为 null,无法读取数组长度

  • 在缺少的地方将模型文件名添加到崩溃消息中

  • 在 emf 模型导出中添加了sizeAdd

  • emf 模型导出现在对每个具有已知 OptiFine 部件名称的模型进行 2 次导出日志传递,一次传递带有 OptiFine 部件名称,一次传递不带有 OptiFine 部件名称。不带的那次可能会显示一些额外的部件,这些部件未被 OptiFine 使用,或者是由模组添加的

  • EMF 模型部件框现在可以额外声明sizeAddX sizeAddY sizeAddZ,与仅在 OptiFine 中使用的sizeAdd不同,用于每个轴的模型膨胀。sizeAdd仍将像以前一样工作,但如果存在其他尺寸,则将被覆盖。

  • 为breeze breeze_eyes breeze_wind wind_charge添加了 OptiFine 部件名称定义

  • 修复了在 1.3 中“!(arms.visible)”有效但“!arms.visible”无效的情况

  • 模组模型的目录格式已从assets/minecraft/optifine/cem/modded/<namespace>/<modelname>.jem更改为assets/<namespace>/optifine/cem/<modelname>.jem

    • 带有/modded/文件夹的旧目录目前仍受支持,但已被视为已弃用
    • 此更改使事情与模组命名空间更加一致
    • emf/cem/目录在这些命名空间中也是有效的,并且可以将<modelname>.jem文件放在同名的文件夹中,例如cem/<modelname>/<modelname>.jem
  • 为动画距离 LOD 设置添加了一个设置,现在考虑实体的大小以减少对较大实体的影响

  • 修复了直接反转方法时的崩溃,例如!between(....)

  • 当应用于模型部件或变量时,失败的动画表达式现在将解析为0(OptiFine 对等)

  • 支持 ETF 的新配置屏幕构建器

    • 添加了一个类别“Animation math details”,其中列出并解释了注册到动画数学系统的所有函数和变量
    • 添加了一个类别“All models”,允许针对每个.jem 文件应用某些设置,并选择性地禁用某些模型的加载
    • 将一些设置(主要是距离 LOD 的设置)移动到新的类别“performance settings”中
    • 在“per entity settings”类别中添加了设置,以允许仅对那些实体应用某些设置

[EMF] Entity Model Features 2.0

on 2024 Dec 01
下载
  • 纹理覆盖现在在未找到纹理时提供missing texture纹理,而不是不应用

  • 修复了某些玩家动画资源包的第一人称手抖动问题

  • 添加了ifb() randomb() catch()动画函数

    • ifb()是if()的布尔返回版本
    • randomb()是random()的布尔返回版本
    • catch(x, c, id)是一个新的调试函数,它将始终返回x,除非出现错误,在这种情况下它将返回c。id是可选的,它将使函数将c返回的原因打印到带有此id的日志中,以识别打印输出
  • 添加了is_jumping is_swimming is_gliding is_right_handed动画变量

  • 添加了modelRule modelSuffix var varb global_var global_varb随机属性

  • 移除了实体变量的限制,使其仅可从声明模型访问*(OptiFine 兼容性)**(wolf_collar.jem 现在可以正确访问同一狼上由 wolf.jem 设置的变量)*

  • 在 gui 中的模型列表中添加了模型显示,以便在导出其.jem 文件之前查看模型

  • 添加了附件点

  • 添加了箭头和 spectral_arrow 模型支持

  • 添加了在OptiFine 1.20.4_HD_U_I8_pre3中列出的新模型部件

  • 添加了变量distance is_blocking is_crawling height_above_ground fluid_depth fluid_depth_down fluid_depth_up

  • 添加了全局变量,它们以"global_var.<name>"(浮点数)或"global_varb.<name>"(布尔值)的格式指定,它们由所有实体和方块实体共享,并允许更多技术相关的事情,如计数实体

  • 改进了 rule_index,现在在未满足任何规则时正确应用 0

  • 修复了 v1.3 中返回的cannot inherit from final classforge 崩溃

  • 将变体属性移动到 ETF 中

  • 修复了崩溃.jem 加载失败 java.lang.NullPointerException: 由于"textureSize"为 null,无法读取数组长度

  • 在缺少模型文件名的情况下,在崩溃消息中添加了模型文件名

  • 在 emf 模型导出中添加了sizeAdd

  • emf 模型导出现在对每个具有已知 OptiFine 部件名称的模型进行 2 次导出日志传递,一次传递带有 OptiFine 部件名称,一次传递不带有 OptiFine 部件名称。不带的那次可能会揭示一些额外的部件,这些部件未被 OptiFine 使用,或者已被 mod 添加

  • EMF 模型部件盒现在可以额外声明sizeAddX sizeAddY sizeAddZ,而不是仅针对 OptiFine 使用sizeAdd进行每个轴的模型膨胀。sizeAdd仍然将像以前一样工作,尽管如果存在其他值,它将被覆盖。

  • 为breeze breeze_eyes breeze_wind wind_charge添加了 OptiFine 部件名称定义

  • 修复了在 1.3 中!(arms.visible)有效但!arms.visible无效的情况

  • 已修改 modded 模型的目录格式,从assets/minecraft/optifine/cem/modded/<namespace>/<modelname>.jem更改为assets/<namespace>/optifine/cem/<modelname>.jem

    • 带有/modded/文件夹的旧目录目前仍受支持,但已被视为已弃用
    • 此更改使事情与 modded 命名空间更加一致
    • emf/cem/目录在这些命名空间中也是有效的,并且能够将<modelname>.jem文件放在同名的文件夹中,例如cem/<modelname>/<modelname>.jem
  • 为动画距离 LOD 设置添加了一个设置,现在考虑实体的大小以较少影响较大的实体

  • 修复了直接反转方法时的崩溃,例如!between(....)

  • 应用于模型部件或变量的失败动画表达式现在将解析为0(OptiFine 兼容性)

  • 支持 ETF 的新配置屏幕生成器

    • 添加了一个类别Animation math details,其中列出并解释了注册到动画数学系统的所有函数和变量
    • 添加了一个类别All models,允许为每个.jem 文件应用某些设置,并选择性地禁用某些模型的加载
    • 将一些设置,主要是距离 LOD 的设置,移动到新的类别performance settings中
    • 在per entity settings类别中添加了设置,以允许仅将某些设置应用于那些实体

[EMF] Entity Model Features 1.3

on 2024 Dec 01
下载
  • 添加了EMFAnimationApi,它允许其他模组向 EMF 注册自己的自定义动画变量和函数。
    • 可以通过FloatSupplier为简单数字变量向EMFAnimationApi添加变量。
      • 通过BooleanSupplier为简单布尔变量添加变量。
      • 如果你的变量需要更复杂的逻辑,例如读取复杂的变量名或在不同上下文中给出不同的结果,可以通过自定义变量工厂添加变量。
    • 可以通过Function<Float, Float>为具有 1 个参数的简单函数向EMFAnimationApi添加函数。
      • 通过BiFunction<Float, Float, Float>为具有 2 个参数的简单函数添加函数。
      • 通过TriFunction<Float, Float, Float, Float>为具有 3 个参数的简单函数添加函数。
      • 通过Function<List<Float>, Float>为具有通过List<Float>提供的可变数量参数的函数添加函数。
      • 如果你的函数需要更复杂的逻辑,例如将参数字符串读取为除浮点数之外的值,可以通过自定义函数工厂添加函数。
  • 将未知模型打印选项更改为模型导出,并添加了将所有模型信息导出到.jem 文件或日志的选项,而不仅仅是未知/已修改的模型。
    • 模型现在以正确的枢轴、盒子和 UV 导出为Blockbench格式。
    • 模型现在导出到.minecraft/emf/export/。
  • 实现了is_on_head、is_in_hand和is_in_item_frame,它们之前没有任何作用。
  • 修复了一个"newstate" is null崩溃。
  • 添加了Animation LOD 距离设置,允许你设置 EMF 开始跳过动画帧以节省性能的距离。
  • 添加了在低 fps 时保留 LOD设置,当游戏运行在 60 fps 以下时,它将按比例减少上述 LOD 设置的影响,因为在较低的 fps 下跳过的帧可能会更明显。
  • 重新设计了配置屏幕,在适当的地方使用滑块。
  • 将wolf_armor添加到 OptiFine 名称映射中。
  • 无效的纹理覆盖将不再导致模型无法加载,而是记录错误并使用原始纹理。
  • EMF 日志消息现在以更短的[EMF]为前缀。
  • 暂时禁用了三叉戟的纹理覆盖,因为它们存在问题且难以排查。
  • 添加了调试渲染选项纹理上的线框,它同时渲染模型的线框和纹理。
  • 添加了调试渲染选项纹理上的闪烁线框,它同时渲染模型的线框和纹理,但线框会淡入淡出。
  • EMF 现在可以正确读取 OptiFine 设置的各种相对路径的所有纹理覆盖,例如./、~/等。
  • 添加了一个配置设置(默认启用),允许 EMF 修改增强块实体(EBE)模组的配置,以便在加载自定义 EMF 模型的块实体时禁用它。
  • 修复了纹理覆盖与特征渲染器配合异常的问题(修复了 Ewan 的带有村民的实体健康条 cem 模型)。
  • 将left_ear和right_ear添加到head_piglin.jem中,这似乎是正确的,但在 OptiFine 的文档中缺失了:/
  • 减少并重新措辞了一些会让用户担心的加载日志垃圾信息(例如,Fresh Animations 1.9 现在在加载时不再发送日志错误)。
  • 添加了仅适用于 EMF 的弧度和度的旋转逻辑函数wrapdeg() wraprad() degdiff() raddiff()。
    • wrap函数将旋转值向下包裹到其最小的相同值,例如wrapdeg(370)将返回10,wrapdeg(350)将返回-10。
    • diff函数将返回两个旋转值之间的结果差异,考虑到旋转,例如degdiff(10, 350)将返回-20,degdiff(10, 370)将返回0。
  • 添加了许多仅适用于 EMF 的插值动画函数。
    • catmullrom() quadbezier() cubicbezier() hermite() easeinoutexpo() easeinexpo() easeoutexpo() easeinoutcirc() easeincirc() easeoutcirc() easeinoutelastic() easeinelastic() easeoutelastic() easeinoutback() easeinback() easeoutback() easeinoutbounce() easeinbounce() easeoutbounce() easeinquad() easeoutquad() easeinoutquad() easeincubic() easeoutcubic() easeinoutcubic() easeinquart() easeoutquart() easeinoutquart() easeinquint() easeoutquint() easeinoutquint() easeinsine() easeoutsine() easeinoutsine()。
    • hermite 和 catmullrom 有 5 个参数,bezier 有 4 个参数,其余的有 3 个参数,并且都以与lerp()相同的方式使用,其中增量值是第一个参数。
    • 这是一个了解这些函数大部分外观的好网站 https://easings.net/。
  • 添加了e变量。
  • 修复了某个 mixin 导致崩溃的问题。
  • EMF 现在支持修改使用原始块实体模型的已修改块实体模型,与原始模型分开。
    • (例如,lootr模组的箱子现在尝试读取modded/lootr/special_loot_chest.jem,而不是与chest.jem冲突)。
    • 启用打印未知模型设置将在日志中打印这些示例。
  • 完全重写了动画变量和函数的创建,这应该减少内存使用,并允许其他模组添加自己的变量和函数。
  • 重新措辞了一些翻译。

[EMF] Entity Model Features 1.3

on 2024 Dec 01
下载
  • 添加了EMFAnimationApi,它允许其他模组向 EMF 注册自己的自定义动画变量和函数。
    • 可以通过FloatSupplier为简单数字变量向EMFAnimationApi添加变量。
      • 通过BooleanSupplier为简单布尔变量添加变量。
      • 如果你的变量需要更复杂的逻辑,例如读取复杂的变量名或在不同上下文中给出不同的结果,可以通过自定义变量工厂添加变量。
    • 可以通过以下方式向EMFAnimationApi添加函数:
      • 通过Function<Float, Float>为具有 1 个参数的简单函数添加函数。
      • 通过BiFunction<Float, Float, Float>为具有 2 个参数的简单函数添加函数。
      • 通过TriFunction<Float, Float, Float, Float>为具有 3 个参数的简单函数添加函数。
      • 通过Function<List<Float>, Float>为具有可变数量参数的函数添加函数,这些参数通过List<Float>提供。
      • 如果你的函数需要更复杂的逻辑,例如将参数字符串读取为除浮点数之外的值,可以通过自定义函数工厂添加函数。
  • 将未知模型打印选项更改为模型导出,并添加了将所有模型信息导出到.jem 文件或日志的选项,不仅仅是未知/修改过的模型。
    • 模型现在以正确的枢轴、盒子和 UV 导出为Blockbench准备好的格式。
    • 模型现在导出到.minecraft/emf/export/。
  • 实现了is_on_head、is_in_hand和is_in_item_frame,它们之前没有任何作用。
  • 修复了一个"newstate" is null崩溃。
  • 添加了Animation LOD 距离设置,允许你设置 EMF 开始跳过动画帧以节省性能的距离。
  • 添加了在低 fps 时保留 LOD设置,当游戏运行在 60 fps 以下时,该设置将成比例地减少上述 LOD 设置的影响,因为在较低的 fps 下跳过的帧可能会更明显。
  • 重新设计了配置屏幕,在适当的地方使用滑块。
  • 将wolf_armor添加到 OptiFine 名称映射中。
  • 无效的纹理覆盖将不再导致模型无法加载,而是记录错误并使用原版纹理。
  • EMF 日志消息现在以更短的[EMF]为前缀。
  • 暂时禁用带有三叉戟的纹理覆盖,因为它们有问题且难以排查。
  • 添加了调试渲染选项纹理上的线框,它同时渲染模型的线框和纹理。
  • 添加了调试渲染选项纹理上闪烁的线框,它同时渲染模型的线框和纹理,但线框会淡入淡出。
  • EMF 现在可以正确读取 OptiFine 设置的各种相对路径的所有纹理覆盖,例如./、~/等。
  • 添加了一个配置设置(默认启用),允许 EMF 修改增强块实体 (EBE)模组的配置,以禁用为加载了自定义 EMF 模型的块实体启用该设置。
  • 修复了纹理覆盖与特征渲染器配合时出现的奇怪行为(修复了 Ewan 的带有村民的实体健康条 cem 模型)。
  • 将left_ear和right_ear添加到head_piglin.jem中,这似乎是正确的,但在 OptiFine 的文档中缺失了:/
  • 减少并重新措辞了一些会让用户担心的加载日志垃圾信息(例如,Fresh Animations 1.9 现在在加载时不会发送任何日志错误)。
  • 添加了仅用于 EMF 的弧度和度的旋转逻辑函数wrapdeg() wraprad() degdiff() raddiff()。
    • wrap函数将旋转值向下包装到其最小的相同值,例如wrapdeg(370)将返回10,wrapdeg(350)将返回-10。
    • diff函数将返回两个旋转值之间的结果差异,并考虑旋转,例如degdiff(10, 350)将返回-20,degdiff(10, 370)将返回0。
  • 添加了许多仅用于 EMF 的插值动画函数。
    • catmullrom() quadbezier() cubicbezier() hermite() easeinoutexpo() easeinexpo() easeoutexpo() easeinoutcirc() easeincirc() easeoutcirc() easeinoutelastic() easeinelastic() easeoutelastic() easeinoutback() easeinback() easeoutback() easeinoutbounce() easeinbounce() easeoutbounce() easeinquad() easeoutquad() easeinoutquad() easeincubic() easeoutcubic() easeinoutcubic() easeinquart() easeoutquart() easeinoutquart() easeinquint() easeoutquint() easeinoutquint() easeinsine() easeoutsine() easeinoutsine()。
    • hermite 和 catmullrom 有 5 个参数,bezier 有 4 个参数,其余的有 3 个参数,并且都以与lerp()相同的方式使用,其中增量值是第一个参数。
    • 这是一个了解这些函数外观的好网站:https://easings.net/。
  • 添加了e变量。
  • 修复了某个混入导致的崩溃。
  • EMF 现在支持修改使用原版块实体模型的修改过的块实体模型,与原版模型分开。
    • (例如,lootr模组的箱子现在尝试读取modded/lootr/special_loot_chest.jem,而不是与chest.jem冲突)。
    • 启用打印未知模型设置将在日志中打印这些示例。
  • 完全重写了动画变量和函数的创建,这应该减少内存使用,并允许其他模组添加自己的变量和函数。
  • 重新措辞了一些翻译。

[EMF] Entity Model Features 1.2.3

on 2024 Dec 01
下载

1.2.3

  • 添加了以下动画插值方法easein、easeout、easeinout、cubiceasein、cubiceaseout、cubiceaseinout。它们的功能与lerp相同,但提供了不同的插值行为
  • 模型.jem 文件中的shadow_size现在应该适用
  • 更健壮的狼项圈.jem 实现
  • 修复了一个崩溃layer is null
  • 修复了由于完全不相关的 forge 模组缺少其依赖项而导致的cannot inherit from final class崩溃。
  • 将新蝙蝠模型的feet部分添加到 optifine 名称映射中(如果 optifine 也不这样做,可能会还原)
  • 修复了一个问题,该问题阻止了mob2.jem在没有mob.jem的情况下正确加载(修复了重新构想的船只纹理)
  • 自定义动画变量现在应该可以在不同部分之间正确寻址(OptiFine 对等)
  • 允许 emf 动画多次声明相同的变量,以便在同一帧内多次更新它(OptiFine 对等)
  • emf 更新为使用 etf 5.2

[EMF] Entity Model Features 1.2.3

on 2024 Dec 01
下载

1.2.3

  • 添加了以下动画插值方法 easein、easeout、easeinout、cubiceasein、cubiceaseout、cubiceaseinout。它们的功能与 lerp 相同,但提供了不同的插值行为
  • 模型.jem 文件中的 shadow_size 现在应该适用
  • 更健壮的 wolf_collar.jem 实现
  • 修复了一个崩溃 layer is null
  • 修复了由完全不相关的 forge 模组缺失其依赖项导致的 cannot inherit from final class 崩溃。
  • 将新蝙蝠模型的 feet 部分添加到 optifine 名称映射中(如果 optifine 也不这样做,可能会还原)
  • 修复了一个问题,该问题阻止了 mob2.jem 在没有 mob.jem 的情况下正确加载(修复了 reimagined 的船纹理)
  • 自定义动画变量现在应该可以在不同部分之间正确寻址(OptiFine 对等)
  • 允许 emf 动画多次声明相同的变量,以在同一帧内多次更新它(OptiFine 对等)
  • emf 更新为使用 etf 5.2

[EMF] Entity Model Features 1.2.3

on 2024 Dec 01
下载

1.2.3

  • 添加了以下动画插值方法easein、easeout、easeinout、cubiceasein、cubiceaseout、cubiceaseinout。它们的功能与lerp相同,但提供了不同的插值行为
  • 模型.jem 文件中的shadow_size现在应该适用
  • 更健壮的 wolf_collar.jem 实现
  • 修复了一个崩溃layer is null
  • 修复了由于完全不相关的 forge 模组缺少其依赖项而导致的cannot inherit from final class崩溃。
  • 将新蝙蝠模型的feet部分添加到 optifine 名称映射中(如果 optifine 也不这样做,可能会回滚)
  • 修复了一个问题,该问题阻止了mob2.jem在没有mob.jem的情况下正确加载(修复了重新想象的船只纹理)
  • 自定义动画变量现在应该在不同部分之间正确可寻址(OptiFine 对等)
  • 允许 emf 动画多次声明相同的变量,以便在同一帧内多次更新它(OptiFine 对等)
  • emf 更新为使用 etf 5.2

[EMF] Entity Model Features 1.2.1

on 2024 Dec 01
下载

现在与 ETF 5.1+ 一起工作并需要它,包括相同的稳定性修复 in()动画方法现在允许 2 个或更多参数,而不是之前的 3 个或更多(OptiFine 兼容性)

[EMF] Entity Model Features 1.2.1

on 2024 Dec 01
下载
  • 现在可与并需要 ETF 5.1+ 一起使用,包括相同的稳定性修复
  • in() 动画方法现在允许 2 个或更多参数,而不是之前的 3 个或更多 (OptiFine 同等功能)

[EMF] Entity Model Features 1.2.1

on 2024 Dec 01
下载
  • 现在可与 ETF 5.1+ 配合使用并需要它,包括相同的稳定性修复
  • in()动画方法现在允许 2 个或更多参数,而不是之前的 3 个或更多 (OptiFine 兼容性)

[EMF] Entity Model Features 1.2

on 2024 Dec 01
下载
  • 添加了仅 EMF 的随机属性,以使模型变体在通常不需要 ETF 属性的情况下更易于处理。 例如,在 ETF 中不需要属性来检查猫变体,因为您已经直接使用了黑猫纹理。 属性名称为variant或variants。 该属性允许使用正则表达式、模式或简单的变体名称列表。 如果属性以"print:"开头,它将在游戏日志中打印为实体找到的变体,并像往常一样使用属性文本的其余部分。 此属性将适用于任何实现了VariantHolder<T>类的修改实体,并将使用类型的字符串表示形式,例如猫的“black”,船的“oak”。 此属性还与以下块实体独特地配合使用: 标志(木材)、床(颜色)、鞘翅箱(颜色)、装饰罐(所有 4 种碎片面类型)。 对于所有其他常规和块实体,它将返回EntityType或BlockEntityType注册表 ID。这允许分离可能使用相同模型名称的不同实体类型,例如各种修改实体所做的那样。

  • 添加了 NeoForge 1.20.2 支持,所有先前版本都不会有单独的 forge 和 neoforge jars。

  • 修复了布尔反相方法

  • 修复了大多数(如果不是全部)模型变体问题

  • 更好的纹理覆盖代码

  • 覆盖中的自发光纹理现在可以正确工作

  • 为 ETF 重写进行了返工

  • 在 EMF 设置中添加了模型变体率设置

  • 修复了配置 GUI 屏幕变黑且不显示 mob 的问题

  • 添加了一个调试打印设置,当右键单击实体时,它将在聊天和日志中打印调试信息

  • EMF 现在可以接受没有.properties 文件的模型变体,您甚至不需要声明“default”模型, 您只需创建 villager2.jem,变体 #1 将自动成为香草模型。

  • 修复了持有实体(如玩家持有箱子)的问题,该问题会干扰为该实体渲染的其他模型,例如 Elytra

  • 修复了其他几个小问题

  • 还修复了纹理覆盖也影响村民服装层的问题

  • 纹理覆盖现在使用基础模型的渲染层工厂*(修复了基础模型有纹理覆盖时的村民服装层和其他一些问题)*

  • 确保纹理覆盖不会在实体多次重用模型时再次应用*(例如,村民服装重用基础村民模型)*

  • 修复了 sodium 0.5.4 兼容性

[EMF] Entity Model Features 1.2

on 2024 Dec 01
下载
  • 添加了仅 EMF 的随机属性,以使模型变体在通常不需要 ETF 属性的情况下更易于处理。 例如,在 ETF 中不需要属性来检查猫变体,因为您已经直接使用黑猫纹理。 属性名称为variant或variants。 该属性允许使用正则表达式、模式或简单的变体名称列表。 如果属性以"print:"开头,它将在游戏日志中打印为实体找到的变体,并将属性文本的其余部分用作常规内容。 此属性将适用于任何实现了 VariantHolder<T>类的修改实体,并将使用类型的字符串表示形式,例如“黑色”表示猫,“橡木”表示船。 此属性还与以下块实体独特地配合使用: 标志(木材)、床(颜色)、箱子(颜色)、装饰罐(所有 4 种碎片面类型)。 对于所有其他常规和块实体,它将返回 EntityType 或 BlockEntityType 注册表 ID。这允许分离可能使用相同模型名称的不同实体类型,例如各种修改实体所做的那样。

  • 添加了 NeoForge 1.20.2 支持,所有先前版本都不会有单独的 forge 和 neoforge jar。

  • 修复了布尔反转方法

  • 修复了大多数(如果不是全部)模型变体问题

  • 更好的纹理覆盖代码

  • 覆盖中的自发光纹理现在可以正确工作

  • 为 ETF 重写进行了返工

  • 在 EMF 设置中添加了模型变体率设置

  • 修复了配置 GUI 屏幕变黑且不显示怪物的问题

  • 添加了一个调试打印设置,当实体被右键单击时,它将在聊天和日志中打印调试信息

  • EMF 现在可以接受没有.properties 文件的模型变体,您甚至不需要声明“默认”模型, 您可以只创建 villager2.jem,变体 #1 将自动成为香草模型。

  • 修复了持有实体(如持有箱子的玩家)的问题,该问题会干扰该实体要渲染的其他模型,例如 Elytra

  • 修复了其他几个小问题

  • 修复了纹理覆盖也影响村民服装层的问题

  • 纹理覆盖现在使用基础模型的渲染层工厂*(修复了基础模型有纹理覆盖时的村民服装层和其他一些问题)*

  • 确保纹理覆盖不会在实体多次重用模型时再次应用*(例如,村民服装重用基础村民模型)*

  • 修复了与 sodium 0.5.4 的兼容性

[EMF] Entity Model Features 1.1.0

on 2024 Dec 01
下载

1.1.0

  • 修复了使用错误值的rule_index变量
  • 修复了random()方法在未使用参数时的中断问题
  • 修复了带有模型 ID 的模组实体导致的Non [a-z0-9/._-] character in path崩溃问题,这些模型 ID 不会创建有效的标识符/资源位置
  • 修复了只有在存在wolf_collar.jem时狼项圈模型才与基础模型分离的问题*(在原版中,狼与项圈渲染器共享它们的基础模型)*
  • 修复了!布尔值反转未应用于varb变量布尔值的问题
  • 添加了keyframe()和keyframeloop()动画方法,以简化关键帧格式动画,格式为keyframe(k, a, b, c,...),其中k是关键帧的线性进度(通常是一个计时器),所有其他值是各个关键帧的值。实际上,k = 0 将输出关键帧a的值,k = 1 将输出关键帧b的值,k = 1.5 将在b和c之间给出线性输出。实际上,k是播放通过关键帧的计时器,每个关键帧值为整数,a为 0。keyframeloop()将从最后一帧回绕到帧a,依此类推,随着k超过最后一帧。而keyframe()对于较高的k值将仅显示最后一帧。即使k为负数,也将将其视为正数。
  • 修复了print()和printb()方法仅在x值逻辑上解析为常量时才打印一次的问题
  • 现在需要ETF 4.6.1或更高版本
  • 添加了nan变量,在运行时解析为Float.NaN,主要用于调试目的,使用它应该会使任何数学函数/方程给出其失败结果。
1
2
3
4
7
设置
"Minecraft"以及"我的世界"为美国微软公司的商标 本站与微软公司没有从属关系

本站与Modrinth无从属关系,网站遵循Modrinth网站程序的LGPL协议开源 开源地址

版权所有 © 2019-2024 青岛柒兮网络科技有限公司 | ICP经营许可证: 鲁B2-20210590 | ICP备案: 鲁ICP备2021009459号-12