Files
minecraft-bedrock-json-schemas/source/behavior/blocks/format/components/material_instances.json

77 lines
4.3 KiB
JSON
Raw Normal View History

2021-08-22 00:15:58 +02:00
{
2022-06-07 21:39:02 +02:00
"$id": "blockception.minecraft.behavior.blocks.minecraft.material_instances",
"title": "Material Instances",
"description": "The material instances for a block. Maps face or material_instance names in a geometry file to an actual material instance. You can assign a material instance object to any of these faces: \"up\", \"down\", \"north\", \"south\", \"east\", \"west\", or \"*\". You can also give an instance the name of your choosing such as \"my_instance\", and then assign it to a face by doing \"north\":\"my_instance\".",
"required": [],
"examples": [
{ "*": {} },
{ "custom_sides": {} },
{ "up": {} },
{ "down": {} },
{ "north": {} },
{ "south": "custom_sides" },
{ "east": "custom_sides" },
{ "west": "custom_sides" }
],
"type": "object",
"additionalProperties": {
"title": "Material Instance",
"description": "The material instance for a block. Maps face or material_instance names in a geometry file to an actual material instance. You can assign a material instance object to any of these faces: \"up\", \"down\", \"north\", \"south\", \"east\", \"west\", or \"*\". You can also give an instance the name of your choosing such as \"my_instance\", and then assign it to a face by doing \"north\":\"my_instance\".",
"oneOf": [
{
"type": "string"
},
{
"type": "object",
"additionalProperties": false,
"properties": {
"ambient_occlusion": {
"title": "Ambient Occlusion",
"description": "Should this material have ambient occlusion applied when lighting? If true, shadows will be created around and underneath the block.",
"anyOf": [
{
"type": "boolean",
"default": true
},
{
"type": "number",
"minimum": 0 //TODO: Check if there's a maximum value
}
]
},
"face_dimming": {
"title": "Face Dimming",
"type": "boolean",
"default": true,
"description": "Should this material be dimmed by the direction it's facing?"
},
"render_method": {
"title": "Render Method",
"type": "string",
"default": "opaque",
"description": "The render method to use. Must be one of these options: opaque - Used for a regular block texture without an alpha layer. Does not allow for transparency or translucency. double_sided - Used for completely disabling backface culling. blend - Used for a block like stained glass. Allows for transparency and translucency (slightly transparent textures). alpha_test - Used for a block like the vanilla (unstained) glass. Does not allow for translucency, only fully opaque or fully transparent textures. Also disables backface culling.",
"markdownDescription": "The render method to use. Must be one of these options: \nopaque - Used for a regular block texture without an alpha layer. Does not allow for transparency or translucency.\ndouble_sided - Used for completely disabling backface culling.\nblend - Used for a block like stained glass. Allows for transparency and translucency (slightly transparent textures).\nalpha_test - Used for a block like the vanilla (unstained) glass. Does not allow for translucency, only fully opaque or fully transparent textures. Also disables backface culling.",
"enum": ["opaque", "double_sided", "blend", "alpha_test", "alpha_test_single_sided", "blend_to_opaque", "alpha_test_to_opaque", "alpha_test_single_sided_to_opaque"]
},
"texture": {
"title": "Texture",
"type": "string",
"description": "Texture name for the material."
},
"isotropic": {
"title": "Isotropic",
"description": "Controls rotating the face UVs randomly based on BlockPos",
"type": "boolean"
},
"tint_method": {
"title": "Tint Method",
"description": "Tint multiplied to the color. Tint method logic varies, but often refers to the \"rain\" and \"temperature\" of the biome the block is placed in to compute the tint.",
"type": "string",
"$ref": "../../../../general/vanilla/tint_methods.json"
}
}
2021-08-22 00:15:58 +02:00
}
]
}
2021-08-22 00:15:58 +02:00
}