Infinity edge pool
infinity-edge-pool
dresses pool
— and nothing else. Appearance is invisible to the drawing set, so adding this changes no
plan, no section and no elevation.
- 25of 500 meshes
- 6slots
- 1finish
Drag to orbit · scroll to zoom
$surface:plaster
$surface:tile
$surface:lane
$surface:coping
$accent
$glazing
This definition leaves
$surface:plaster and $surface:tile and $surface:lane and $surface:coping and $accent and $glazing
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 6 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-pool-lane","of":"paving","value":20,"accent":"#0d456b","texture":"tile-grid","body":{"roughness":0.18}}
{"t":"materialdef","id":"pack-pool-tile","of":"paving","value":42,"accent":"#245a72","texture":"tile-grid","body":{"roughness":0.2}}
{"t":"materialdef","id":"pack-pool-water","of":"glass","value":72,"accent":"#74bed0","body":{"type":"MeshPhysicalMaterial","transmission":0.9,"ior":1.33,"clearcoat":0.62,"clearcoatRoughness":0.12,"thickness":0.48,"attenuationColor":"#2a91a8","attenuationDistance":4.6}}
{"t":"materialdef","id":"pal-grey","of":"paint","value":58}
{"t":"materialdef","id":"pal-off-white","of":"paint","value":86}
{"t":"materialdef","id":"pal-stone","of":"stone","value":86}
{"t":"lookdef","id":"infinity-edge-pool","for":"pool","desc":"Rectangular pool with one vanishing overflow edge and flush waterline.","preview":{"projection":"perspective","azimuth":34,"elevation":34,"fov":33,"margin":1.06},"slots":{"surface:plaster":"pal-off-white","surface:tile":"pack-pool-tile","surface:lane":"pack-pool-lane","surface:coping":"pal-stone","accent":"pal-grey","glazing":"pack-pool-water"},"body":{"type":"Group","children":[{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":8,"height":0.2,"depth":4.7},"position":[0,0.1,0]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":8,"height":1.5,"depth":0.2},"position":[0,0.95,-2.25]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":0.2,"height":1.5,"depth":4.3},"position":[-3.9,0.95,-0.1]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":0.2,"height":1.5,"depth":4.3},"position":[3.9,0.95,-0.1]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":8,"height":1.35,"depth":0.18},"position":[0,0.875,2.2]},{"type":"Mesh","material":"$surface:tile","geometry":{"type":"BoxGeometry","width":7.6,"height":0.17,"depth":0.045},"position":[0,1.35,-2.128]},{"type":"Mesh","material":"$surface:tile","geometry":{"type":"BoxGeometry","width":0.045,"height":0.17,"depth":4.18},"position":[-3.777,1.35,-0.03]},{"type":"Mesh","material":"$surface:tile","geometry":{"type":"BoxGeometry","width":0.045,"height":0.17,"depth":4.18},"position":[3.777,1.35,-0.03]},{"type":"Mesh","material":"$surface:tile","geometry":{"type":"BoxGeometry","width":7.6,"height":0.22,"depth":0.045},"position":[0,1.3,2.092]},{"type":"Mesh","material":"$surface:coping","geometry":{"type":"RoundedBoxGeometry","width":8,"height":0.11,"depth":0.34,"radius":0.03,"segments":2},"position":[0,1.545,-2.17]},{"type":"Mesh","material":"$surface:coping","geometry":{"type":"RoundedBoxGeometry","width":0.34,"height":0.11,"depth":4,"radius":0.03,"segments":2},"position":[-3.83,1.545,-0.08]},{"type":"Mesh","material":"$surface:coping","geometry":{"type":"RoundedBoxGeometry","width":0.34,"height":0.11,"depth":4,"radius":0.03,"segments":2},"position":[3.83,1.545,-0.08]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":0.34,"height":0.88,"depth":2},"position":[-3.63,0.64,-0.65]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":0.34,"height":0.58,"depth":2},"position":[-3.29,0.49,-0.65]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":0.34,"height":0.29,"depth":2},"position":[-2.95,0.345,-0.65]},{"type":"Mesh","material":"$surface:tile","geometry":{"type":"BoxGeometry","width":0.33,"height":0.025,"depth":2},"position":[-3.63,1.0925,-0.65]},{"type":"Mesh","material":"$surface:tile","geometry":{"type":"BoxGeometry","width":0.33,"height":0.025,"depth":2},"position":[-3.29,0.7925,-0.65]},{"type":"Mesh","material":"$surface:tile","geometry":{"type":"BoxGeometry","width":0.33,"height":0.025,"depth":2},"position":[-2.95,0.5025,-0.65]},{"type":"Mesh","material":"$glazing","geometry":{"type":"BoxGeometry","width":7.56,"height":1.2,"depth":4.08},"position":[0,0.82,-0.08]},{"type":"Mesh","material":"$glazing","geometry":{"type":"BoxGeometry","width":7.54,"height":0.78,"depth":0.055},"position":[0,1.18,2.31]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":8,"height":0.12,"depth":0.74},"position":[0,0.06,2.72]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":8,"height":0.32,"depth":0.12},"position":[0,0.22,3.04]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":0.18,"height":0.32,"depth":0.72},"position":[-3.91,0.22,2.72]},{"type":"Mesh","material":"$surface:plaster","geometry":{"type":"BoxGeometry","width":0.18,"height":0.32,"depth":0.72},"position":[3.91,0.22,2.72]},{"type":"Mesh","material":"$glazing","geometry":{"type":"BoxGeometry","width":7.6,"height":0.2,"depth":0.56},"position":[0,0.3,2.72]}]}}
Or take the whole pack, which brings every entry and every material at once:
cat packs/pools.ndjson model.ndjson > dressed.ndjson
Download pools pack
31 KB · NDJSON ↓