方块剔除
intermediate
创建模型
开始前请确保您已为方块创建模型,否则将没有可应用剔除规则的对象!
应用剔除规则
方块剔除规则允许您根据周围完整不透明方块的情况移除方块模型的面。这有助于提升游戏性能,避免资源浪费在渲染方块被遮挡的部分上。
剔除规则需添加在资源包的"block_culling"文件夹中,格式如下所示:
RP/block_culling/lamp.json
json
{
"format_version": "1.21.70",
"minecraft:block_culling_rules": {
"description": {
"identifier": "wiki:culling.lamp" // 用于在方块JSON几何组件中引用的标识符
},
"rules": [ ... ] // 可包含多条剔除规则的数组
}
}随后通过方块的minecraft:geometry组件应用于方块模型:
minecraft:block > components
json
"minecraft:geometry": {
"identifier": "geometry.lamp", // 模型标识符
"culling": "wiki:culling.lamp" // 方块剔除规则标识符
}整体骨骼剔除
当某个骨骼仅从单一方向可见时(意味着可以整体剔除而非单独剔除立方体面),应使用此类规则。
minecraft:block_culling_rules > rules
json
{
"direction": "up", // 当灯上方存在完整不透明方块时,该骨骼将被剔除
"geometry_part": {
"bone": "lamp_bulb" // 待剔除骨骼名称
}
}立方体面剔除
当需要隐藏与完整不透明方块相邻的立方体特定面时,应使用此类规则。
minecraft:block_culling_rules > rules
json
{
"direction": "down", // 当灯下方存在完整不透明方块时,该骨骼将被剔除
"geometry_part": {
"bone": "lamp_base", // 包含待剔除立方体的骨骼名称
"cube": 0, // 骨骼"cubes"数组中立方体的零基索引
"face": "down" // 要剔除的立方体面。通常与规则的"direction"相同,除非立方体有旋转
}
}贡献者
编辑 方块剔除本页面上的文本和图像内容根据 知识共享署名 4.0 国际许可协议
本页中的代码示例根据 MIT 许可证

