BE教程

【基岩版】渲染控制器的基础认识

不***Lv.4 高级会员 发表于 2023-1-4 · 最后回复 2024-1-23 IP:福建省 2,800 8
AI 速览2026-10-22 05:56 生成

基岩版渲染控制器基础讲解:结构与各子组件用法

这篇教程面向基岩版资源包作者,讲解渲染控制器的作用和基本写法。帖子先说明渲染控制器负责控制实体和 attachables 3D 物品的模型、贴图与材料,没有它就无法正常显示。随后给出一个标准示例,逐一解释 geometry、materials、textures 和 part_visibility 四个子组件的含义,以及它们如何与实体文件中的定义对应,并演示用 Molang 条件控制部件显示。适合刚接触资源包、想弄清渲染控制器字段含义的玩家阅读。

  • 内容全部基于资源包,需要了解实体文件和资源包结构
  • 示例使用的 format_version 为 1.8.0
  • part_visibility 依赖 Molang 与物品 tag,需一定基础
本卡片由 AI 阅读本帖后生成,可能存在疏漏,请以帖子正文为准。
渲染控制器,顾名思义,控制实体或者attachables3D物品的渲染,如果没有渲染控制器那么实体或3d物品就显示不了贴图和模型等等
(本教程所有内容均为资源包里的内容)


先来看看一个标准渲染控制器的例子:



{
  "format_version": "1.8.0",
  "render_controllers": {


    "controller.render.player.mirror_glock": {
      "geometry": "Geometry.mirror",
      "materials": [ { "*": "Material.outer" } ],
      "textures": ["Texture.glock_mirror"],
      "part_visibility": [
        { "*": "variable.is_first_person && query.is_sneaking && query.get_equipped_item_name=='glock' && !query.equipped_item_any_tag('slot.armor.feet', 'is_micro') " }
      ]
    }
  }
}


最上面两行分别是版本和定义这个文件是渲染控制器的,就不多说了
第三行就是渲染控制器的id

子组件geometry是定义在这个渲染控制器里实体用的模型,具体值就是Geometry.+实体文件里模型的定义,实体文件里可以看看下面的例子


      "geometry": {
        "mirror": "geometry.mirror"


在例子实体或者3d物品文件里geometry子组件下模型id:geometry.mirror对应的是左边的mirror,所以在渲染控制器的geometry写的就是mirror,下面的贴图和材料也是同理

再回到渲染控制器,material子组件,是定义这个渲染控制器里实体用的材料,同样也是要在实体文件里定义,但一般用原版生物的材料就行,比如说这里用的就是原版史莱姆的material
实体文件例子:


      "materials": {
        "default": "entity_alphatest",
        "cape": "entity_alphatest",
        "outer": "slime_outer"

      }

渲染控制器textures子组件,定义这个渲染控制器里实体用的贴图,同样要在实体文件里定义,实体文件例子:


      "textures": {
        "default": "textures/entity/steve",
        "cape": "textures/entity/cape_invisible",
        "glock_mirror": "textures/gui/glock_mirror"

        }

渲染控制器part_visibility子组件,可以控制实体特定部分使用这个渲染控制器,如果不需要的话默认就用星号*就行,要用的话根据实体模型里的模型组名称来写,这里可以写molang来决定什么条件下在这个部分用这个渲染控制器,比如这里的molang代码是:variable.is_first_person && query.is_sneaking && query.get_equipped_item_name=='glock' && !query.equipped_item_any_tag('slot.armor.feet', 'is_micro')
即实体是第一人称并且在潜行并且手持glock物品并且脚部没有穿戴有is_micro这个tag的物品


没了


  • cdc*** 铁粒 +3 虽然不懂,但还想点?
回复 8 最早 最新 只看楼主
您需要登录后才可以回帖 登录 | 立即注册
本版积分规则