Planter box
planter-box
dresses asset:planter
— and nothing else. Appearance is invisible to the drawing set, so adding this changes no
plan, no section and no elevation.
- 12of 500 meshes
- 2slots
- 1finish
Drag to orbit · scroll to zoom
$frame
$foliage
This definition leaves
$frame and $foliage
open, and a look line fills them. Every combination is one body — same
geometry, same selector, same sheets — so the block below rewrites itself as you pick.
Only materials are slottable: a size would have to agree with the plan, so it stays on
the entity.
Paste this
Every part: the 3 materialdefs the body resolves to, then the definition. Copying the lookdef alone still compiles and still validates — it just renders grey.
{"t":"materialdef","id":"pack-planter-corten","of":"steel","value":42,"accent":"#8d482a","body":{"roughness":0.84,"metalness":0.34}}
{"t":"materialdef","id":"pack-soil","of":"gravel","value":20,"accent":"#4a3d31"}
{"t":"materialdef","id":"pal-leaf-pale","of":"foliage","value":58}
{"t":"lookdef","id":"planter-box","for":"asset:planter","desc":"Rectangular corten planter with a visibly dense layered plume planting rather than sparse stakes.","slots":{"frame":"pack-planter-corten","foliage":"pal-leaf-pale"},"preview":{"projection":"perspective","azimuth":-38,"elevation":20,"fov":20,"margin":1},"body":{"type":"Group","children":[{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":1.2,"height":0.04,"depth":0.5},"position":[0,0.02,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":1.2,"height":0.3,"depth":0.035},"position":[0,0.19,-0.2325]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":1.2,"height":0.3,"depth":0.035},"position":[0,0.19,0.2325]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.035,"height":0.3,"depth":0.43},"position":[-0.5825,0.19,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":0.035,"height":0.3,"depth":0.43},"position":[0.5825,0.19,0]},{"type":"Mesh","material":"pack-soil","geometry":{"type":"BoxGeometry","width":1.1,"height":0.04,"depth":0.4},"position":[0,0.3,0]},{"type":"bimtex:Scatter","count":60,"seed":7369,"area":[0.26,0.18],"jitter":0.32,"children":[{"type":"Mesh","material":"$foliage","geometry":{"type":"ConeGeometry","radius":0.024,"height":0.72,"radialSegments":4},"position":[0,0.4,0]}],"position":[-0.38,0,0]},{"type":"bimtex:Scatter","count":32,"seed":7373,"area":[0.22,0.14],"jitter":0.28,"children":[{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,0.3,0],[0.042,0.5,0],[0.1176,0.66,0],[0.1806,0.5,0]],"radius":0.014,"radialSegments":5,"tubularSegments":8}}],"position":[-0.38,0,0]},{"type":"bimtex:Scatter","count":60,"seed":7369,"area":[0.26,0.18],"jitter":0.32,"children":[{"type":"Mesh","material":"$foliage","geometry":{"type":"ConeGeometry","radius":0.024,"height":0.72,"radialSegments":4},"position":[0,0.4,0]}],"position":[0,0,0]},{"type":"bimtex:Scatter","count":32,"seed":7373,"area":[0.22,0.14],"jitter":0.28,"children":[{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,0.3,0],[0.042,0.5,0],[0.1176,0.66,0],[0.1806,0.5,0]],"radius":0.014,"radialSegments":5,"tubularSegments":8}}],"position":[0,0,0]},{"type":"bimtex:Scatter","count":60,"seed":7369,"area":[0.26,0.18],"jitter":0.32,"children":[{"type":"Mesh","material":"$foliage","geometry":{"type":"ConeGeometry","radius":0.024,"height":0.72,"radialSegments":4},"position":[0,0.4,0]}],"position":[0.38,0,0]},{"type":"bimtex:Scatter","count":32,"seed":7373,"area":[0.22,0.14],"jitter":0.28,"children":[{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,0.3,0],[0.042,0.5,0],[0.1176,0.66,0],[0.1806,0.5,0]],"radius":0.014,"radialSegments":5,"tubularSegments":8}}],"position":[0.38,0,0]}],"scale":[1,1,1]}}
Or take the whole pack, which brings every entry and every material at once:
cat packs/trees.ndjson model.ndjson > dressed.ndjson
Download trees pack
245 KB · NDJSON ↓