BallanceBlenderHelper/bbp_ng/raw_jsons/flat.json

171 lines
5.2 KiB
JSON
Raw Permalink Normal View History

2024-01-12 17:18:41 +08:00
[
{
"identifier": "floor_flat",
"showcase": {
"title": "Flat",
"icon": "Flat",
"type": "floor",
"cfgs": [
{
"field": "height_",
"type": "float",
"title": "Height",
"desc": "The height of block.",
"default": "5.0"
},
{
"field": "length_",
"type": "float",
"title": "Length",
"desc": "The length of block.",
"default": "2.5"
},
{
"field": "width_",
"type": "float",
"title": "Width",
"desc": "The width of block.",
"default": "2.5"
},
{
"field": "face_",
"type": "face",
"title": "Face",
"desc": "Whether has some faces.",
"default": "(True, False, False, False, False, False)"
},
{
"field": "is_sink_",
"type": "float",
"title": "Is Sink",
"desc": "Whether this flat floor is used for sink floor.",
"default": "False"
}
]
},
"params": [
{
"field": "height",
"data": "height_"
},
{
"field": "length",
"data": "length_"
},
{
"field": "width",
"data": "width_"
},
{
"field": "face",
"data": "face_"
},
{
"field": "is_sink",
"data": "is_sink_"
}
],
"skip": "length == 0.0 or width == 0.0",
"vars": [
{
"field": "sink",
"data": "0.7 if is_sink else 0"
},
{
"field": "uv_length",
"data": "length / 5.0"
},
{
"field": "uv_width",
"data": "width / 5.0"
}
],
"vertices": [
{
"skip": "False",
"data": "(0, 0, -sink)"
},
{
"skip": "False",
"data": "(length, 0, -sink)"
},
{
"skip": "False",
"data": "(length, width, -sink)"
},
{
"skip": "False",
"data": "(0, width, -sink)"
}
],
"faces": [
{
"skip": "not face[0]",
"texture": "\"FloorTopBorderless\"",
"indices": [0, 1, 2, 3],
"uvs": [
"(0, 0)",
"(uv_length, 0)",
"(uv_length, uv_width)",
"(0, uv_width)"
],
"normals": null
}
],
"instances": [
{
"identifier": "raw_floor_side",
"skip": "not face[4]",
"params": {
"height": "height",
"length": "length",
"is_left_sink": "is_sink",
"is_right_sink": "is_sink"
},
"transform": "ident()"
},
{
"identifier": "raw_floor_side",
"skip": "not face[2]",
"params": {
"height": "height",
"length": "width",
"is_left_sink": "is_sink",
"is_right_sink": "is_sink"
},
"transform": "move(0, width, 0) @ rot(0, 0, -90)"
},
{
"identifier": "raw_floor_side",
"skip": "not face[3]",
"params": {
"height": "height",
"length": "width",
"is_left_sink": "is_sink",
"is_right_sink": "is_sink"
},
"transform": "move(length, 0, 0) @ rot(0, 0, 90)"
},
{
"identifier": "raw_floor_side",
"skip": "not face[5]",
"params": {
"height": "height",
"length": "length",
"is_left_sink": "is_sink",
"is_right_sink": "is_sink"
},
"transform": "move(length, width, 0) @ rot(0, 0, 180)"
},
{
"identifier": "floor_bottom",
"skip": "not face[1]",
"params": {
"length": "length",
"width": "width"
},
"transform": "move(0, 0, -height)"
}
]
}
]