# 2.11

2024.03.19:版本号(V2.11 BE1.18.30) 包括Mod PC包,手机测试版启动器,和服务器引擎。

示例Demo:前往此处下载

# 一、更新时间表

  1. 在2024年3月19日上线2.11第一个Beta版。
  2. 在2024年4月2日上线2.11第二个Beta版。
  3. 在2024年4月11日上线2.11稳定版。
  4. 在2024年4月19日,全渠道将更新2.11版本玩家包体,玩家将陆续更新到2.11版本,请开发者合理安排更新节奏。

# 二、重要功能更新

  1. 新增支持矩阵概念及其基本运算,详情参考Matrix

  2. 新增陀螺仪系列接口,支持获取陀螺仪数据,控制上报频率,详情参考ToggleGyroSensor 等接口。

  3. 方块新增支持配置燃烧时长,详见netease:fuel组件。

  4. 方块新增支持配置最大堆叠数量,详见minecraft:max_stack_size组件。

  5. 新增根据权重控制多动画混合接口,详见SetAnim1DMultiControlParam接口。

  6. 新增支持动态添加后处理定义的接口,详见AddPostProcess

  7. 后处理支持将某一pass处理结果传递到其他pass接口,详见PostPassResultToOtherPass

  8. 屏幕拾取与射线检测等接口支持返回更精确的浮点数命中坐标,详见PickFacingGetChosengetEntitiesOrBlockFromRay三个接口。

  9. 新增一套实体AOI检测接口,详见CreateEntityAOI

  10. 新增获取记分板记分项和玩家记分项的功能,详见GetAllScoreboardObjectsGetAllPlayerScoreboardObjects接口。

  11. 新增设置玩家滑动条类设置的接口,如视野、亮度、灵敏度等等,详见SetSliderOption接口。

  12. 新增支持自定义伤害类型,可在设置伤害Hurt接口中传入伤害来源标签,并在相关的受伤事件参数中获取到对应的伤害来源标签。

  13. 新增一系列判断玩家控制状态的接口,详情参考IsCanMove等接口。

  14. 新增模拟玩家攻击生物的接口,详情参考PlayerAttackEntity

  15. Pushscreen和Popscreen接口调用时现在会触发对应的OnActive和OnDeactive两个UI的生命周期函数,详见界面创建流程及生命周期

# 三、API更新

  • 新增
  1. 新增GetOriginAreaOffset(客户端), 获取指定原生UI的offset,包括左上角和右下角

  2. 新增ToggleGyroSensor(客户端), 开启或关闭陀螺仪传感器采集

  3. 新增SetGyroSensorReportRate(客户端), 设置陀螺仪传感器(上报/触发)频率

  4. 新增CreateEntityAOI(服务端), 新增注册感应区域,有实体进入时和离开时会触发回调函数func

  5. 新增DeleteEntityAOI(服务端), 删除使用CreateEntityAOI注册的感应区

  6. 新增GetAllScoreboardObjects(服务端), 获取所有记分板项

  7. 新增GetAllPlayerScoreboardObjects(服务端), 获取玩家记分项

  8. 新增GetEntityDamage(服务端), 获取生物(包括玩家)的攻击力

  9. 新增GetJumpPower(服务端), 获取生物跳跃力度

  10. 新增PlayerAttackEntity(服务端), 模拟玩家攻击某个生物

  11. 新增GetAllScoreboardObjects(客户端), 获取所有记分板项

  12. 新增GetAllPlayerScoreboardObjects(客户端), 获取玩家记分项

  13. 新增RegisterAnim1DMultiControlParam(客户端), 新增多动作融合功能接口:注册用于根据权重控制多动画进行混合的参数

  14. 新增SetAnim1DMultiControlParam(客户端), 新增多动作融合功能接口:设置用于根据权重控制多动画进行混合的参数

  15. 新增RemoveAnim1DMultiControlParam(客户端), 新增多动作融合功能接口:删除用于根据权重控制多动画进行混合的参数

  16. 新增IsCanMove(客户端), 获取玩家是否响应移动

  17. 新增IsCanJump(客户端), 获取玩家是否响应跳跃(以及在水中浮起)

  18. 新增IsCanAttack(客户端), 获取玩家是否响应攻击

  19. 新增IsCanWalkMode(客户端), 获取玩家是否响应切换行走模式

  20. 新增IsCanPerspective(客户端), 获取玩家是否响应切换视角

  21. 新增IsCanPause(客户端), 获取玩家是否响应暂停按钮

  22. 新增IsCanChat(客户端), 获取玩家是否响应聊天按钮

  23. 新增IsCanScreenShot(客户端), 获取玩家是否响应截图按钮

  24. 新增IsCanOpenInv(客户端), 获取玩家是否响应打开背包按钮

  25. 新增IsCanDrag(客户端), 获取玩家是否响应屏幕拖动

  26. 新增IsCanInair(客户端), 获取玩家是否响应打上升下降按钮

  27. 新增CreateBindEntityNew(客户端), 创建粒子发射器并绑定实体

  28. 新增GetSliderOption(客户端), 获得某个滑动条设置选项的值

  29. 新增SetSliderOption(客户端), 设置某个滑动条设置选项的值

  30. 新增PostPassResultToOtherPass(客户端), 将自定义pass的纹理结果传递到其他自定义pass的fragmentShader指定纹理单元槽位

  31. 新增AddPostProcess(客户端), 添加后处理效果,与graphics_settings/post_process.json定义的process等效

  32. 新增GetPostProcessOrder(客户端), 获取后处理效果的渲染顺序

  33. 新增GetUiItem(客户端), 新增获取ItemRenderer控件显示的物品接口

  34. 新增EntityDieLoottableAfterServerEvent(服务端), 生物死亡掉落物品之后事件

  35. 新增GyroSensorChangedClientEvent(客户端), 陀螺仪传感器姿态发生变化事件

  36. 新增OriginGUIName, 获取原生UI名字

  37. 新增SliderOptionId, 滑动条设置选项枚举值

  • 调整
  1. 调整getEntitiesOrBlockFromRay(服务端), 返回值中添加精准碰撞坐标hitPos,类型为tuple(float,float,float)

  2. 调整GetChunkMinPos(服务端), 修复末地、下界的值异常,改用entityId创建组件后,即获取正常

  3. 调整GetChunkMaxPos(服务端), 修复末地、下界的值异常,改用entityId创建组件后,即获取正常

  4. 调整Hurt(服务端), cause类型新增Custom类型,新增customTag参数标识自定义伤害来源,可在ActorHurtServerEvent、ActuallyHurtServerEvent、DamageEvent、PlayerHurtEvent、PlayerDieEvent、MobDieEvent监听到标识

  5. 调整GetItemBasicInfo(服务端), 物品类型添加trident、potion、crossbow

  6. 调整PickFacing(客户端), 返回值中添加精准碰撞坐标hitPosX、 hitPoxY、hitPosZ, 三者均为float类型

  7. 调整GetChosen(客户端), 返回值中添加精准碰撞坐标hitPosX、 hitPoxY、hitPosZ, 三者均为float类型

  8. 调整GetItemBasicInfo(客户端), 物品类型添加trident、potion、crossbow

  9. 调整AddEntityMarker(客户端), 增加是否反转z轴朝向

  10. 调整DamageEvent(服务端), 新增customTag参数,用于接收使用Hurt接口传入的自定义伤害类型

  11. 调整ActuallyHurtServerEvent(服务端), 新增customTag参数,用于接收使用Hurt接口传入的自定义伤害类型

  12. 调整MobDieEvent(服务端), 新增cause与customTag参数,cause用于标明伤害来源,详见Minecraft枚举值文档的ActorDamageCause,customTag用于接收使用Hurt接口传入的自定义伤害类型

  13. 调整PlayerHurtEvent(服务端), 新增cause与customTag参数,cause用于标明伤害来源,详见Minecraft枚举值文档的ActorDamageCause,customTag用于接收使用Hurt接口传入的自定义伤害类型

  14. 调整PlayerDieEvent(服务端), 新增cause与customTag参数,cause用于标明伤害来源,详见Minecraft枚举值文档的ActorDamageCause,customTag用于接收使用Hurt接口传入的自定义伤害类型

  15. 调整ActorHurtServerEvent(服务端), 新增customTag参数,用于接收使用Hurt接口传入的自定义伤害类型

  16. 调整StartDestroyBlockServerEvent(服务端), 新增face参数

  17. 调整EntityEffectDamageServerEvent(服务端), 新增cause参数,标明伤害来源,详见Minecraft枚举值文档的ActorDamageCause

  18. 调整StartDestroyBlockClientEvent(客户端), 新增face参数

  19. 调整ActorDamageCause, 新增Custom枚举,用于在Hurt接口标识为自定义伤害来源

  • 废弃(将在未来不可用)
  1. 废弃GetEntityInArea,请使用GetEntitiesInSquareArea接口

  2. 废弃CreateBindEntity,接口存在无法修复的问题,强烈建议使用CreateBindEntityNew接口