@pascal-app/core 0.9.1 → 1.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -10
- package/dist/events/bus.d.ts +49 -2
- package/dist/events/bus.d.ts.map +1 -1
- package/dist/hooks/scene-registry/item-clip-registry.d.ts +18 -0
- package/dist/hooks/scene-registry/item-clip-registry.d.ts.map +1 -0
- package/dist/hooks/scene-registry/item-clip-registry.js +10 -0
- package/dist/hooks/scene-registry/scene-registry.d.ts +8 -1
- package/dist/hooks/scene-registry/scene-registry.d.ts.map +1 -1
- package/dist/hooks/scene-registry/scene-registry.js +27 -1
- package/dist/hooks/spatial-grid/floor-placed-elevation.d.ts +17 -1
- package/dist/hooks/spatial-grid/floor-placed-elevation.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/floor-placed-elevation.js +61 -8
- package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts +135 -28
- package/dist/hooks/spatial-grid/spatial-grid-manager.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/spatial-grid-manager.js +427 -271
- package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts +46 -1
- package/dist/hooks/spatial-grid/spatial-grid-sync.d.ts.map +1 -1
- package/dist/hooks/spatial-grid/spatial-grid-sync.js +208 -9
- package/dist/hooks/spatial-grid/support-host-id.d.ts +3 -0
- package/dist/hooks/spatial-grid/support-host-id.d.ts.map +1 -0
- package/dist/hooks/spatial-grid/support-host-id.js +2 -0
- package/dist/hooks/spatial-grid/support-host-patch.d.ts +51 -0
- package/dist/hooks/spatial-grid/support-host-patch.d.ts.map +1 -0
- package/dist/hooks/spatial-grid/support-host-patch.js +164 -0
- package/dist/index.d.ts +33 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +32 -10
- package/dist/lib/level-name.d.ts +4 -0
- package/dist/lib/level-name.d.ts.map +1 -0
- package/dist/lib/level-name.js +10 -0
- package/dist/lib/measurement-geometry.d.ts +23 -0
- package/dist/lib/measurement-geometry.d.ts.map +1 -0
- package/dist/lib/measurement-geometry.js +249 -0
- package/dist/lib/polygon-geometry.d.ts +0 -1
- package/dist/lib/polygon-geometry.d.ts.map +1 -1
- package/dist/lib/polygon-geometry.js +0 -18
- package/dist/lib/selection-proxy.d.ts +4 -0
- package/dist/lib/selection-proxy.d.ts.map +1 -0
- package/dist/lib/selection-proxy.js +12 -0
- package/dist/lib/slab-polygon.d.ts +31 -2
- package/dist/lib/slab-polygon.d.ts.map +1 -1
- package/dist/lib/slab-polygon.js +557 -31
- package/dist/lib/slots.d.ts +14 -0
- package/dist/lib/slots.d.ts.map +1 -0
- package/dist/lib/slots.js +26 -0
- package/dist/lib/space-detection.d.ts +40 -6
- package/dist/lib/space-detection.d.ts.map +1 -1
- package/dist/lib/space-detection.js +574 -192
- package/dist/lib/terrain-brush.d.ts +163 -0
- package/dist/lib/terrain-brush.d.ts.map +1 -0
- package/dist/lib/terrain-brush.js +359 -0
- package/dist/lib/terrain-codec.d.ts +51 -0
- package/dist/lib/terrain-codec.d.ts.map +1 -0
- package/dist/lib/terrain-codec.js +167 -0
- package/dist/lib/terrain-field.d.ts +150 -0
- package/dist/lib/terrain-field.d.ts.map +1 -0
- package/dist/lib/terrain-field.js +248 -0
- package/dist/lib/terrain-raycast.d.ts +44 -0
- package/dist/lib/terrain-raycast.d.ts.map +1 -0
- package/dist/lib/terrain-raycast.js +188 -0
- package/dist/lib/terrain-source.d.ts +60 -0
- package/dist/lib/terrain-source.d.ts.map +1 -0
- package/dist/lib/terrain-source.js +90 -0
- package/dist/lib/terrain-support.d.ts +60 -0
- package/dist/lib/terrain-support.d.ts.map +1 -0
- package/dist/lib/terrain-support.js +150 -0
- package/dist/lib/wall-distance.d.ts +60 -0
- package/dist/lib/wall-distance.d.ts.map +1 -0
- package/dist/lib/wall-distance.js +85 -0
- package/dist/lib/zone-quantities.d.ts +21 -0
- package/dist/lib/zone-quantities.d.ts.map +1 -0
- package/dist/lib/zone-quantities.js +428 -0
- package/dist/material-library.d.ts +28 -1
- package/dist/material-library.d.ts.map +1 -1
- package/dist/material-library.js +2233 -441
- package/dist/registry/handles.d.ts +91 -3
- package/dist/registry/handles.d.ts.map +1 -1
- package/dist/registry/index.d.ts +3 -3
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js +1 -1
- package/dist/registry/registry.d.ts +46 -3
- package/dist/registry/registry.d.ts.map +1 -1
- package/dist/registry/registry.js +82 -1
- package/dist/registry/subtree.d.ts.map +1 -1
- package/dist/registry/subtree.js +8 -1
- package/dist/registry/types.d.ts +781 -39
- package/dist/registry/types.d.ts.map +1 -1
- package/dist/schema/index.d.ts +27 -8
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +23 -6
- package/dist/schema/material.d.ts +3 -2
- package/dist/schema/material.d.ts.map +1 -1
- package/dist/schema/material.js +7 -5
- package/dist/schema/nodes/box-vent.d.ts +2 -2
- package/dist/schema/nodes/cabinet.d.ts +536 -0
- package/dist/schema/nodes/cabinet.d.ts.map +1 -0
- package/dist/schema/nodes/cabinet.js +139 -0
- package/dist/schema/nodes/ceiling.d.ts +4 -3
- package/dist/schema/nodes/ceiling.d.ts.map +1 -1
- package/dist/schema/nodes/ceiling.js +11 -1
- package/dist/schema/nodes/chimney.d.ts +4 -4
- package/dist/schema/nodes/column.d.ts +4 -2
- package/dist/schema/nodes/column.d.ts.map +1 -1
- package/dist/schema/nodes/column.js +5 -0
- package/dist/schema/nodes/construction-dimension.d.ts +195 -0
- package/dist/schema/nodes/construction-dimension.d.ts.map +1 -0
- package/dist/schema/nodes/construction-dimension.js +151 -0
- package/dist/schema/nodes/cupola.d.ts +2 -2
- package/dist/schema/nodes/door.d.ts +42 -5
- package/dist/schema/nodes/door.d.ts.map +1 -1
- package/dist/schema/nodes/door.js +32 -0
- package/dist/schema/nodes/dormer.d.ts +8 -8
- package/dist/schema/nodes/dormer.js +1 -1
- package/dist/schema/nodes/downspout.d.ts +2 -2
- package/dist/schema/nodes/duct-fitting.d.ts +91 -0
- package/dist/schema/nodes/duct-fitting.d.ts.map +1 -0
- package/dist/schema/nodes/duct-fitting.js +92 -0
- package/dist/schema/nodes/duct-segment.d.ts +61 -0
- package/dist/schema/nodes/duct-segment.d.ts.map +1 -0
- package/dist/schema/nodes/duct-segment.js +73 -0
- package/dist/schema/nodes/duct-terminal.d.ts +58 -0
- package/dist/schema/nodes/duct-terminal.d.ts.map +1 -0
- package/dist/schema/nodes/duct-terminal.js +53 -0
- package/dist/schema/nodes/elevator.d.ts +3 -2
- package/dist/schema/nodes/elevator.d.ts.map +1 -1
- package/dist/schema/nodes/elevator.js +3 -0
- package/dist/schema/nodes/eyebrow-vent.d.ts +2 -2
- package/dist/schema/nodes/fence.d.ts +20 -2
- package/dist/schema/nodes/fence.d.ts.map +1 -1
- package/dist/schema/nodes/fence.js +33 -2
- package/dist/schema/nodes/gutter.d.ts +2 -2
- package/dist/schema/nodes/hvac-equipment.d.ts +64 -0
- package/dist/schema/nodes/hvac-equipment.d.ts.map +1 -0
- package/dist/schema/nodes/hvac-equipment.js +57 -0
- package/dist/schema/nodes/item.d.ts +9 -0
- package/dist/schema/nodes/item.d.ts.map +1 -1
- package/dist/schema/nodes/item.js +24 -0
- package/dist/schema/nodes/level.d.ts +2 -1
- package/dist/schema/nodes/level.d.ts.map +1 -1
- package/dist/schema/nodes/level.js +12 -31
- package/dist/schema/nodes/lineset.d.ts +42 -0
- package/dist/schema/nodes/lineset.d.ts.map +1 -0
- package/dist/schema/nodes/lineset.js +38 -0
- package/dist/schema/nodes/liquid-line.d.ts +34 -0
- package/dist/schema/nodes/liquid-line.d.ts.map +1 -0
- package/dist/schema/nodes/liquid-line.js +24 -0
- package/dist/schema/nodes/measurement.d.ts +306 -0
- package/dist/schema/nodes/measurement.d.ts.map +1 -0
- package/dist/schema/nodes/measurement.js +87 -0
- package/dist/schema/nodes/pipe-fitting.d.ts +56 -0
- package/dist/schema/nodes/pipe-fitting.d.ts.map +1 -0
- package/dist/schema/nodes/pipe-fitting.js +45 -0
- package/dist/schema/nodes/pipe-segment.d.ts +48 -0
- package/dist/schema/nodes/pipe-segment.d.ts.map +1 -0
- package/dist/schema/nodes/pipe-segment.js +36 -0
- package/dist/schema/nodes/pipe-trap.d.ts +43 -0
- package/dist/schema/nodes/pipe-trap.d.ts.map +1 -0
- package/dist/schema/nodes/pipe-trap.js +36 -0
- package/dist/schema/nodes/ridge-vent.d.ts +18 -3
- package/dist/schema/nodes/ridge-vent.d.ts.map +1 -1
- package/dist/schema/nodes/ridge-vent.js +221 -3
- package/dist/schema/nodes/roof-segment-shape.d.ts +90 -0
- package/dist/schema/nodes/roof-segment-shape.d.ts.map +1 -0
- package/dist/schema/nodes/roof-segment-shape.js +318 -0
- package/dist/schema/nodes/roof-segment-walls.d.ts +101 -0
- package/dist/schema/nodes/roof-segment-walls.d.ts.map +1 -0
- package/dist/schema/nodes/roof-segment-walls.js +330 -0
- package/dist/schema/nodes/roof-segment.d.ts +84 -8
- package/dist/schema/nodes/roof-segment.d.ts.map +1 -1
- package/dist/schema/nodes/roof-segment.js +290 -5
- package/dist/schema/nodes/roof.d.ts +8 -8
- package/dist/schema/nodes/shelf.d.ts +4 -2
- package/dist/schema/nodes/shelf.d.ts.map +1 -1
- package/dist/schema/nodes/shelf.js +8 -0
- package/dist/schema/nodes/site.d.ts +9 -0
- package/dist/schema/nodes/site.d.ts.map +1 -1
- package/dist/schema/nodes/site.js +8 -6
- package/dist/schema/nodes/skylight.d.ts +10 -10
- package/dist/schema/nodes/slab.d.ts +8 -2
- package/dist/schema/nodes/slab.d.ts.map +1 -1
- package/dist/schema/nodes/slab.js +18 -2
- package/dist/schema/nodes/solar-panel.d.ts +4 -4
- package/dist/schema/nodes/spawn.d.ts +1 -0
- package/dist/schema/nodes/spawn.d.ts.map +1 -1
- package/dist/schema/nodes/spawn.js +2 -0
- package/dist/schema/nodes/stair-segment.d.ts +4 -4
- package/dist/schema/nodes/stair.d.ts +16 -13
- package/dist/schema/nodes/stair.d.ts.map +1 -1
- package/dist/schema/nodes/stair.js +11 -1
- package/dist/schema/nodes/structural-grid.d.ts +27 -0
- package/dist/schema/nodes/structural-grid.d.ts.map +1 -0
- package/dist/schema/nodes/structural-grid.js +17 -0
- package/dist/schema/nodes/turbine-vent.d.ts +2 -2
- package/dist/schema/nodes/wall.d.ts +248 -6
- package/dist/schema/nodes/wall.d.ts.map +1 -1
- package/dist/schema/nodes/wall.js +266 -0
- package/dist/schema/nodes/window.d.ts +40 -3
- package/dist/schema/nodes/window.d.ts.map +1 -1
- package/dist/schema/nodes/window.js +30 -0
- package/dist/schema/nodes/zone.d.ts +22 -0
- package/dist/schema/nodes/zone.d.ts.map +1 -1
- package/dist/schema/nodes/zone.js +21 -0
- package/dist/schema/scene-material.d.ts +41 -0
- package/dist/schema/scene-material.d.ts.map +1 -0
- package/dist/schema/scene-material.js +9 -0
- package/dist/schema/terrain.d.ts +28 -0
- package/dist/schema/terrain.d.ts.map +1 -0
- package/dist/schema/terrain.js +30 -0
- package/dist/schema/types.d.ts +1300 -97
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/schema/types.js +27 -0
- package/dist/services/__fixtures__/wall-plane-top-boundary-repro.d.ts +80 -0
- package/dist/services/__fixtures__/wall-plane-top-boundary-repro.d.ts.map +1 -0
- package/dist/services/__fixtures__/wall-plane-top-boundary-repro.js +89 -0
- package/dist/services/alignment-anchors.d.ts.map +1 -1
- package/dist/services/alignment-anchors.js +30 -1
- package/dist/services/alignment.d.ts +5 -0
- package/dist/services/alignment.d.ts.map +1 -1
- package/dist/services/alignment.js +2 -0
- package/dist/services/hosting.d.ts +8 -0
- package/dist/services/hosting.d.ts.map +1 -1
- package/dist/services/hosting.js +13 -4
- package/dist/services/index.d.ts +9 -2
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +9 -2
- package/dist/services/level-height.d.ts +27 -0
- package/dist/services/level-height.d.ts.map +1 -0
- package/dist/services/level-height.js +94 -0
- package/dist/services/opening-guides.d.ts +141 -0
- package/dist/services/opening-guides.d.ts.map +1 -0
- package/dist/services/opening-guides.js +267 -0
- package/dist/services/port-connectivity.d.ts +115 -0
- package/dist/services/port-connectivity.d.ts.map +1 -0
- package/dist/services/port-connectivity.js +300 -0
- package/dist/services/riser-diagram.d.ts +40 -0
- package/dist/services/riser-diagram.d.ts.map +1 -0
- package/dist/services/riser-diagram.js +110 -0
- package/dist/services/snap.d.ts +9 -1
- package/dist/services/snap.d.ts.map +1 -1
- package/dist/services/snap.js +21 -1
- package/dist/services/storey.d.ts +103 -0
- package/dist/services/storey.d.ts.map +1 -0
- package/dist/services/storey.js +296 -0
- package/dist/services/system-graph.d.ts +30 -0
- package/dist/services/system-graph.d.ts.map +1 -0
- package/dist/services/system-graph.js +164 -0
- package/dist/services/validate-dwv.d.ts +32 -0
- package/dist/services/validate-dwv.d.ts.map +1 -0
- package/dist/services/validate-dwv.js +118 -0
- package/dist/store/actions/node-actions.d.ts.map +1 -1
- package/dist/store/actions/node-actions.js +141 -4
- package/dist/store/history-control.d.ts +31 -0
- package/dist/store/history-control.d.ts.map +1 -1
- package/dist/store/history-control.js +130 -0
- package/dist/store/use-live-terrain.d.ts +65 -0
- package/dist/store/use-live-terrain.d.ts.map +1 -0
- package/dist/store/use-live-terrain.js +31 -0
- package/dist/store/use-live-transforms.d.ts +8 -0
- package/dist/store/use-live-transforms.d.ts.map +1 -1
- package/dist/store/use-scene.d.ts +47 -3
- package/dist/store/use-scene.d.ts.map +1 -1
- package/dist/store/use-scene.js +992 -55
- package/dist/systems/elevator/elevator-opening-system.d.ts +1 -0
- package/dist/systems/elevator/elevator-opening-system.d.ts.map +1 -1
- package/dist/systems/elevator/elevator-opening-system.js +27 -21
- package/dist/systems/elevator/elevator-service.d.ts +0 -2
- package/dist/systems/elevator/elevator-service.d.ts.map +1 -1
- package/dist/systems/elevator/elevator-service.js +2 -24
- package/dist/systems/fence/fence-centerline.d.ts +12 -0
- package/dist/systems/fence/fence-centerline.d.ts.map +1 -0
- package/dist/systems/fence/fence-centerline.js +37 -0
- package/dist/systems/fence/fence-spline.d.ts +39 -0
- package/dist/systems/fence/fence-spline.d.ts.map +1 -0
- package/dist/systems/fence/fence-spline.js +196 -0
- package/dist/systems/slab/slab-placement.d.ts +11 -0
- package/dist/systems/slab/slab-placement.d.ts.map +1 -0
- package/dist/systems/slab/slab-placement.js +14 -0
- package/dist/systems/slab/slab-support.d.ts +137 -0
- package/dist/systems/slab/slab-support.d.ts.map +1 -0
- package/dist/systems/slab/slab-support.js +557 -0
- package/dist/systems/stair/stair-footprint.d.ts.map +1 -1
- package/dist/systems/stair/stair-footprint.js +21 -11
- package/dist/systems/stair/stair-opening-preview.d.ts +1300 -505
- package/dist/systems/stair/stair-opening-preview.d.ts.map +1 -1
- package/dist/systems/stair/stair-opening-sync.d.ts.map +1 -1
- package/dist/systems/stair/stair-opening-sync.js +19 -33
- package/dist/systems/stair/stair-opening-system.d.ts.map +1 -1
- package/dist/systems/stair/stair-opening-system.js +32 -4
- package/dist/systems/stair/stair-rise.d.ts +22 -0
- package/dist/systems/stair/stair-rise.d.ts.map +1 -0
- package/dist/systems/stair/stair-rise.js +79 -0
- package/dist/systems/wall/wall-curve.d.ts +10 -0
- package/dist/systems/wall/wall-curve.d.ts.map +1 -1
- package/dist/systems/wall/wall-curve.js +1 -1
- package/dist/systems/wall/wall-mitering.d.ts.map +1 -1
- package/dist/systems/wall/wall-mitering.js +44 -8
- package/dist/systems/wall/wall-top.d.ts +40 -0
- package/dist/systems/wall/wall-top.d.ts.map +1 -0
- package/dist/systems/wall/wall-top.js +46 -0
- package/dist/utils/clone-scene-graph.d.ts +1 -0
- package/dist/utils/clone-scene-graph.d.ts.map +1 -1
- package/dist/utils/clone-scene-graph.js +56 -5
- package/dist/utils/heal-scene-graph.d.ts +18 -0
- package/dist/utils/heal-scene-graph.d.ts.map +1 -0
- package/dist/utils/heal-scene-graph.js +106 -0
- package/dist/validation/validate-build-json.d.ts +3 -0
- package/dist/validation/validate-build-json.d.ts.map +1 -1
- package/dist/validation/validate-build-json.js +90 -5
- package/package.json +4 -4
- package/dist/hooks/spatial-grid/floor-placed-elevation.test.d.ts +0 -2
- package/dist/hooks/spatial-grid/floor-placed-elevation.test.d.ts.map +0 -1
- package/dist/hooks/spatial-grid/floor-placed-elevation.test.js +0 -273
- package/dist/lib/space-detection-pause.test.d.ts +0 -2
- package/dist/lib/space-detection-pause.test.d.ts.map +0 -1
- package/dist/lib/space-detection-pause.test.js +0 -42
- package/dist/lib/space-detection.test.d.ts +0 -2
- package/dist/lib/space-detection.test.d.ts.map +0 -1
- package/dist/lib/space-detection.test.js +0 -77
- package/dist/registry/registry.test.d.ts +0 -2
- package/dist/registry/registry.test.d.ts.map +0 -1
- package/dist/registry/registry.test.js +0 -183
- package/dist/registry/relations-resolver.test.d.ts +0 -2
- package/dist/registry/relations-resolver.test.d.ts.map +0 -1
- package/dist/registry/relations-resolver.test.js +0 -183
- package/dist/registry/scene-api.test.d.ts +0 -2
- package/dist/registry/scene-api.test.d.ts.map +0 -1
- package/dist/registry/scene-api.test.js +0 -183
- package/dist/registry/subtree.test.d.ts +0 -2
- package/dist/registry/subtree.test.d.ts.map +0 -1
- package/dist/registry/subtree.test.js +0 -133
- package/dist/schema/asset-url.test.d.ts +0 -2
- package/dist/schema/asset-url.test.d.ts.map +0 -1
- package/dist/schema/asset-url.test.js +0 -134
- package/dist/services/alignment-anchors.test.d.ts +0 -2
- package/dist/services/alignment-anchors.test.d.ts.map +0 -1
- package/dist/services/alignment-anchors.test.js +0 -383
- package/dist/services/alignment.test.d.ts +0 -2
- package/dist/services/alignment.test.d.ts.map +0 -1
- package/dist/services/alignment.test.js +0 -92
- package/dist/services/drag-session.test.d.ts +0 -2
- package/dist/services/drag-session.test.d.ts.map +0 -1
- package/dist/services/drag-session.test.js +0 -219
- package/dist/services/hosting.test.d.ts +0 -2
- package/dist/services/hosting.test.d.ts.map +0 -1
- package/dist/services/hosting.test.js +0 -199
- package/dist/services/movement.test.d.ts +0 -2
- package/dist/services/movement.test.d.ts.map +0 -1
- package/dist/services/movement.test.js +0 -133
- package/dist/services/single-undo-dance.test.d.ts +0 -2
- package/dist/services/single-undo-dance.test.d.ts.map +0 -1
- package/dist/services/single-undo-dance.test.js +0 -210
- package/dist/services/snap.test.d.ts +0 -2
- package/dist/services/snap.test.d.ts.map +0 -1
- package/dist/services/snap.test.js +0 -95
- package/dist/store/actions/node-mutation-sanitize.test.d.ts +0 -2
- package/dist/store/actions/node-mutation-sanitize.test.d.ts.map +0 -1
- package/dist/store/actions/node-mutation-sanitize.test.js +0 -147
- package/dist/store/actions/reparent.test.d.ts +0 -2
- package/dist/store/actions/reparent.test.d.ts.map +0 -1
- package/dist/store/actions/reparent.test.js +0 -212
- package/dist/store/use-scene-elevator-migration.test.d.ts +0 -2
- package/dist/store/use-scene-elevator-migration.test.d.ts.map +0 -1
- package/dist/store/use-scene-elevator-migration.test.js +0 -109
- package/dist/systems/elevator/elevator-opening-sync.test.d.ts +0 -2
- package/dist/systems/elevator/elevator-opening-sync.test.d.ts.map +0 -1
- package/dist/systems/elevator/elevator-opening-sync.test.js +0 -146
- package/dist/systems/elevator/elevator-runtime.test.d.ts +0 -2
- package/dist/systems/elevator/elevator-runtime.test.d.ts.map +0 -1
- package/dist/systems/elevator/elevator-runtime.test.js +0 -64
- package/dist/systems/stair/stair-opening-preview.test.d.ts +0 -2
- package/dist/systems/stair/stair-opening-preview.test.d.ts.map +0 -1
- package/dist/systems/stair/stair-opening-preview.test.js +0 -80
- package/dist/systems/stair/stair-opening-sync.test.d.ts +0 -2
- package/dist/systems/stair/stair-opening-sync.test.d.ts.map +0 -1
- package/dist/systems/stair/stair-opening-sync.test.js +0 -446
- package/dist/utils/clone-scene-graph.test.d.ts +0 -2
- package/dist/utils/clone-scene-graph.test.d.ts.map +0 -1
- package/dist/utils/clone-scene-graph.test.js +0 -59
package/dist/material-library.js
CHANGED
|
@@ -29,20 +29,46 @@ const ROOF_TARGETS = [
|
|
|
29
29
|
MaterialTargetSchema.enum.dormer,
|
|
30
30
|
];
|
|
31
31
|
const CEILING_TARGETS = [MaterialTargetSchema.enum.ceiling];
|
|
32
|
-
export const MATERIAL_CATEGORIES = [
|
|
32
|
+
export const MATERIAL_CATEGORIES = [
|
|
33
|
+
'colors',
|
|
34
|
+
'wood',
|
|
35
|
+
'stone',
|
|
36
|
+
'brick',
|
|
37
|
+
'tile',
|
|
38
|
+
'wallpaper',
|
|
39
|
+
'concrete',
|
|
40
|
+
'metal',
|
|
41
|
+
'plastic',
|
|
42
|
+
'fabric',
|
|
43
|
+
'carpet',
|
|
44
|
+
'leather',
|
|
45
|
+
'roofing',
|
|
46
|
+
'ground',
|
|
47
|
+
'glass',
|
|
48
|
+
'other',
|
|
49
|
+
];
|
|
50
|
+
export const MATERIAL_SURFACES = [
|
|
51
|
+
'floor',
|
|
52
|
+
'wall',
|
|
53
|
+
'ceiling',
|
|
54
|
+
'roof',
|
|
55
|
+
'furniture',
|
|
56
|
+
'outdoor',
|
|
57
|
+
];
|
|
33
58
|
export const MATERIAL_CATALOG = [
|
|
34
59
|
{
|
|
35
60
|
id: 'wood-finewood27',
|
|
36
61
|
label: 'Finewood 27',
|
|
37
62
|
category: 'wood',
|
|
63
|
+
surfaces: ['floor', 'wall', 'furniture'],
|
|
38
64
|
description: 'Fine wood finish',
|
|
39
|
-
previewThumbnailUrl: '/material/wood/finewood_27/
|
|
65
|
+
previewThumbnailUrl: '/material/wood/finewood_27/finewood_27_thumb.webp',
|
|
40
66
|
preset: {
|
|
41
67
|
maps: {
|
|
42
|
-
albedoMap: '/material/wood/finewood_27/
|
|
43
|
-
aoMap: '/material/wood/finewood_27/
|
|
44
|
-
normalMap: '/material/wood/finewood_27/
|
|
45
|
-
roughnessMap: '/material/wood/finewood_27/
|
|
68
|
+
albedoMap: '/material/wood/finewood_27/finewood_27_basecolor_512.ktx2',
|
|
69
|
+
aoMap: '/material/wood/finewood_27/finewood_27_ao_512.ktx2',
|
|
70
|
+
normalMap: '/material/wood/finewood_27/finewood_27_normal_512.ktx2',
|
|
71
|
+
roughnessMap: '/material/wood/finewood_27/finewood_27_roughness_512.ktx2',
|
|
46
72
|
},
|
|
47
73
|
mapProperties: {
|
|
48
74
|
color: '#ffffff',
|
|
@@ -58,7 +84,7 @@ export const MATERIAL_CATALOG = [
|
|
|
58
84
|
emissiveIntensity: 1,
|
|
59
85
|
displacementScale: 0,
|
|
60
86
|
transparent: false,
|
|
61
|
-
flipY:
|
|
87
|
+
flipY: false,
|
|
62
88
|
bumpScale: 1,
|
|
63
89
|
emissiveColor: '#000000',
|
|
64
90
|
aoMapIntensity: 1,
|
|
@@ -72,14 +98,14 @@ export const MATERIAL_CATALOG = [
|
|
|
72
98
|
id: 'wood-floorplank1',
|
|
73
99
|
label: 'Floor Plank 1',
|
|
74
100
|
category: 'wood',
|
|
101
|
+
surfaces: ['floor'],
|
|
75
102
|
description: 'Wood plank finish',
|
|
76
|
-
previewThumbnailUrl: '/material/wood/floor_plank_1/
|
|
103
|
+
previewThumbnailUrl: '/material/wood/floor_plank_1/floor_plank_1_thumb.webp',
|
|
77
104
|
preset: {
|
|
78
105
|
maps: {
|
|
79
|
-
albedoMap: '/material/wood/floor_plank_1/
|
|
80
|
-
aoMap: '/material/wood/floor_plank_1/
|
|
81
|
-
|
|
82
|
-
normalMap: '/material/wood/floor_plank_1/floor_plank-normal.webp',
|
|
106
|
+
albedoMap: '/material/wood/floor_plank_1/floor_plank_1_basecolor_512.ktx2',
|
|
107
|
+
aoMap: '/material/wood/floor_plank_1/floor_plank_1_ao_512.ktx2',
|
|
108
|
+
normalMap: '/material/wood/floor_plank_1/floor_plank_1_normal_512.ktx2',
|
|
83
109
|
},
|
|
84
110
|
mapProperties: {
|
|
85
111
|
color: '#ffffff',
|
|
@@ -95,7 +121,7 @@ export const MATERIAL_CATALOG = [
|
|
|
95
121
|
emissiveIntensity: 1,
|
|
96
122
|
displacementScale: 0,
|
|
97
123
|
transparent: false,
|
|
98
|
-
flipY:
|
|
124
|
+
flipY: false,
|
|
99
125
|
bumpScale: 1,
|
|
100
126
|
emissiveColor: '#000000',
|
|
101
127
|
aoMapIntensity: 1,
|
|
@@ -109,14 +135,14 @@ export const MATERIAL_CATALOG = [
|
|
|
109
135
|
id: 'wood-hungarianparquet10',
|
|
110
136
|
label: 'Hungarian Parquet 10',
|
|
111
137
|
category: 'wood',
|
|
138
|
+
surfaces: ['floor'],
|
|
112
139
|
description: 'Parquet wood finish',
|
|
113
|
-
previewThumbnailUrl: '/material/wood/hungarian_parquet_10/
|
|
140
|
+
previewThumbnailUrl: '/material/wood/hungarian_parquet_10/hungarian_parquet_10_thumb.webp',
|
|
114
141
|
preset: {
|
|
115
142
|
maps: {
|
|
116
|
-
albedoMap: '/material/wood/hungarian_parquet_10/
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
roughnessMap: '/material/wood/hungarian_parquet_10/Hungarian Parquet_10_roughness.webp',
|
|
143
|
+
albedoMap: '/material/wood/hungarian_parquet_10/hungarian_parquet_10_basecolor_512.ktx2',
|
|
144
|
+
normalMap: '/material/wood/hungarian_parquet_10/hungarian_parquet_10_normal_512.ktx2',
|
|
145
|
+
roughnessMap: '/material/wood/hungarian_parquet_10/hungarian_parquet_10_roughness_512.ktx2',
|
|
120
146
|
},
|
|
121
147
|
mapProperties: {
|
|
122
148
|
color: '#ffffff',
|
|
@@ -132,7 +158,7 @@ export const MATERIAL_CATALOG = [
|
|
|
132
158
|
emissiveIntensity: 1,
|
|
133
159
|
displacementScale: 0,
|
|
134
160
|
transparent: false,
|
|
135
|
-
flipY:
|
|
161
|
+
flipY: false,
|
|
136
162
|
bumpScale: 1,
|
|
137
163
|
emissiveColor: '#000000',
|
|
138
164
|
aoMapIntensity: 1,
|
|
@@ -146,14 +172,14 @@ export const MATERIAL_CATALOG = [
|
|
|
146
172
|
id: 'wood-hungarianparquet2',
|
|
147
173
|
label: 'Hungarian Parquet 2',
|
|
148
174
|
category: 'wood',
|
|
175
|
+
surfaces: ['floor'],
|
|
149
176
|
description: 'Parquet wood finish',
|
|
150
|
-
previewThumbnailUrl: '/material/wood/hungarian_parquet_2/
|
|
177
|
+
previewThumbnailUrl: '/material/wood/hungarian_parquet_2/hungarian_parquet_2_thumb.webp',
|
|
151
178
|
preset: {
|
|
152
179
|
maps: {
|
|
153
|
-
albedoMap: '/material/wood/hungarian_parquet_2/
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
roughnessMap: '/material/wood/hungarian_parquet_2/Hungarian Parquet_2_roughness.webp',
|
|
180
|
+
albedoMap: '/material/wood/hungarian_parquet_2/hungarian_parquet_2_basecolor_512.ktx2',
|
|
181
|
+
normalMap: '/material/wood/hungarian_parquet_2/hungarian_parquet_2_normal_512.ktx2',
|
|
182
|
+
roughnessMap: '/material/wood/hungarian_parquet_2/hungarian_parquet_2_roughness_512.ktx2',
|
|
157
183
|
},
|
|
158
184
|
mapProperties: {
|
|
159
185
|
color: '#ffffff',
|
|
@@ -169,7 +195,7 @@ export const MATERIAL_CATALOG = [
|
|
|
169
195
|
emissiveIntensity: 1,
|
|
170
196
|
displacementScale: 0,
|
|
171
197
|
transparent: false,
|
|
172
|
-
flipY:
|
|
198
|
+
flipY: false,
|
|
173
199
|
bumpScale: 1,
|
|
174
200
|
emissiveColor: '#000000',
|
|
175
201
|
aoMapIntensity: 1,
|
|
@@ -183,14 +209,14 @@ export const MATERIAL_CATALOG = [
|
|
|
183
209
|
id: 'wood-squareparquet21',
|
|
184
210
|
label: 'Square Parquet 21',
|
|
185
211
|
category: 'wood',
|
|
212
|
+
surfaces: ['floor'],
|
|
186
213
|
description: 'Parquet wood finish',
|
|
187
|
-
previewThumbnailUrl: '/material/wood/square_parquet_21/
|
|
214
|
+
previewThumbnailUrl: '/material/wood/square_parquet_21/square_parquet_21_thumb.webp',
|
|
188
215
|
preset: {
|
|
189
216
|
maps: {
|
|
190
|
-
albedoMap: '/material/wood/square_parquet_21/
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
roughnessMap: '/material/wood/square_parquet_21/Square Pattern Parquet_21_roughness.webp',
|
|
217
|
+
albedoMap: '/material/wood/square_parquet_21/square_parquet_21_basecolor_512.ktx2',
|
|
218
|
+
normalMap: '/material/wood/square_parquet_21/square_parquet_21_normal_512.ktx2',
|
|
219
|
+
roughnessMap: '/material/wood/square_parquet_21/square_parquet_21_roughness_512.ktx2',
|
|
194
220
|
},
|
|
195
221
|
mapProperties: {
|
|
196
222
|
color: '#ffffff',
|
|
@@ -206,7 +232,7 @@ export const MATERIAL_CATALOG = [
|
|
|
206
232
|
emissiveIntensity: 1,
|
|
207
233
|
displacementScale: 0,
|
|
208
234
|
transparent: false,
|
|
209
|
-
flipY:
|
|
235
|
+
flipY: false,
|
|
210
236
|
bumpScale: 1,
|
|
211
237
|
emissiveColor: '#000000',
|
|
212
238
|
aoMapIntensity: 1,
|
|
@@ -220,14 +246,14 @@ export const MATERIAL_CATALOG = [
|
|
|
220
246
|
id: 'wood-squareparquet23',
|
|
221
247
|
label: 'Square Parquet 23',
|
|
222
248
|
category: 'wood',
|
|
249
|
+
surfaces: ['floor'],
|
|
223
250
|
description: 'Parquet wood finish',
|
|
224
|
-
previewThumbnailUrl: '/material/wood/square_wood_parquet_23/
|
|
251
|
+
previewThumbnailUrl: '/material/wood/square_wood_parquet_23/square_wood_parquet_23_thumb.webp',
|
|
225
252
|
preset: {
|
|
226
253
|
maps: {
|
|
227
|
-
albedoMap: '/material/wood/square_wood_parquet_23/
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
roughnessMap: '/material/wood/square_wood_parquet_23/Square Pattern Parquet_23_roughness.webp',
|
|
254
|
+
albedoMap: '/material/wood/square_wood_parquet_23/square_wood_parquet_23_basecolor_512.ktx2',
|
|
255
|
+
normalMap: '/material/wood/square_wood_parquet_23/square_wood_parquet_23_normal_512.ktx2',
|
|
256
|
+
roughnessMap: '/material/wood/square_wood_parquet_23/square_wood_parquet_23_roughness_512.ktx2',
|
|
231
257
|
},
|
|
232
258
|
mapProperties: {
|
|
233
259
|
color: '#ffffff',
|
|
@@ -243,7 +269,7 @@ export const MATERIAL_CATALOG = [
|
|
|
243
269
|
emissiveIntensity: 1,
|
|
244
270
|
displacementScale: 0,
|
|
245
271
|
transparent: false,
|
|
246
|
-
flipY:
|
|
272
|
+
flipY: false,
|
|
247
273
|
bumpScale: 1,
|
|
248
274
|
emissiveColor: '#000000',
|
|
249
275
|
aoMapIntensity: 1,
|
|
@@ -257,14 +283,14 @@ export const MATERIAL_CATALOG = [
|
|
|
257
283
|
id: 'wood-woodfine1',
|
|
258
284
|
label: 'Wood Fine 1',
|
|
259
285
|
category: 'wood',
|
|
286
|
+
surfaces: ['floor', 'wall', 'furniture'],
|
|
260
287
|
description: 'Fine wood finish',
|
|
261
|
-
previewThumbnailUrl: '/material/wood/wood_fine/
|
|
288
|
+
previewThumbnailUrl: '/material/wood/wood_fine/wood_fine_thumb.webp',
|
|
262
289
|
preset: {
|
|
263
290
|
maps: {
|
|
264
|
-
albedoMap: '/material/wood/wood_fine/
|
|
265
|
-
aoMap: '/material/wood/wood_fine/
|
|
266
|
-
|
|
267
|
-
normalMap: '/material/wood/wood_fine/wood_fine_1-normal.webp',
|
|
291
|
+
albedoMap: '/material/wood/wood_fine/wood_fine_basecolor_512.ktx2',
|
|
292
|
+
aoMap: '/material/wood/wood_fine/wood_fine_ao_512.ktx2',
|
|
293
|
+
normalMap: '/material/wood/wood_fine/wood_fine_normal_512.ktx2',
|
|
268
294
|
},
|
|
269
295
|
mapProperties: {
|
|
270
296
|
color: '#ffffff',
|
|
@@ -280,7 +306,7 @@ export const MATERIAL_CATALOG = [
|
|
|
280
306
|
emissiveIntensity: 1,
|
|
281
307
|
displacementScale: 0,
|
|
282
308
|
transparent: false,
|
|
283
|
-
flipY:
|
|
309
|
+
flipY: false,
|
|
284
310
|
bumpScale: 1,
|
|
285
311
|
emissiveColor: '#000000',
|
|
286
312
|
aoMapIntensity: 1,
|
|
@@ -294,14 +320,14 @@ export const MATERIAL_CATALOG = [
|
|
|
294
320
|
id: 'wood-woodfine11',
|
|
295
321
|
label: 'Wood Fine 11',
|
|
296
322
|
category: 'wood',
|
|
323
|
+
surfaces: ['floor', 'wall', 'furniture'],
|
|
297
324
|
description: 'Fine wood finish',
|
|
298
|
-
previewThumbnailUrl: '/material/wood/wood_fine_11/
|
|
325
|
+
previewThumbnailUrl: '/material/wood/wood_fine_11/wood_fine_11_thumb.webp',
|
|
299
326
|
preset: {
|
|
300
327
|
maps: {
|
|
301
|
-
albedoMap: '/material/wood/wood_fine_11/
|
|
302
|
-
aoMap: '/material/wood/wood_fine_11/
|
|
303
|
-
|
|
304
|
-
normalMap: '/material/wood/wood_fine_11/wood_fine_11-normal.webp',
|
|
328
|
+
albedoMap: '/material/wood/wood_fine_11/wood_fine_11_basecolor_512.ktx2',
|
|
329
|
+
aoMap: '/material/wood/wood_fine_11/wood_fine_11_ao_512.ktx2',
|
|
330
|
+
normalMap: '/material/wood/wood_fine_11/wood_fine_11_normal_512.ktx2',
|
|
305
331
|
},
|
|
306
332
|
mapProperties: {
|
|
307
333
|
color: '#ffffff',
|
|
@@ -317,7 +343,7 @@ export const MATERIAL_CATALOG = [
|
|
|
317
343
|
emissiveIntensity: 1,
|
|
318
344
|
displacementScale: 0,
|
|
319
345
|
transparent: false,
|
|
320
|
-
flipY:
|
|
346
|
+
flipY: false,
|
|
321
347
|
bumpScale: 1,
|
|
322
348
|
emissiveColor: '#000000',
|
|
323
349
|
aoMapIntensity: 1,
|
|
@@ -331,14 +357,14 @@ export const MATERIAL_CATALOG = [
|
|
|
331
357
|
id: 'wood-woodfine13',
|
|
332
358
|
label: 'Wood Fine 13',
|
|
333
359
|
category: 'wood',
|
|
360
|
+
surfaces: ['floor', 'wall', 'furniture'],
|
|
334
361
|
description: 'Fine wood finish',
|
|
335
|
-
previewThumbnailUrl: '/material/wood/wood_fine_13/
|
|
362
|
+
previewThumbnailUrl: '/material/wood/wood_fine_13/wood_fine_13_thumb.webp',
|
|
336
363
|
preset: {
|
|
337
364
|
maps: {
|
|
338
|
-
albedoMap: '/material/wood/wood_fine_13/
|
|
339
|
-
aoMap: '/material/wood/wood_fine_13/
|
|
340
|
-
|
|
341
|
-
normalMap: '/material/wood/wood_fine_13/wood_fine_13-normal.webp',
|
|
365
|
+
albedoMap: '/material/wood/wood_fine_13/wood_fine_13_basecolor_512.ktx2',
|
|
366
|
+
aoMap: '/material/wood/wood_fine_13/wood_fine_13_ao_512.ktx2',
|
|
367
|
+
normalMap: '/material/wood/wood_fine_13/wood_fine_13_normal_512.ktx2',
|
|
342
368
|
},
|
|
343
369
|
mapProperties: {
|
|
344
370
|
color: '#ffffff',
|
|
@@ -354,7 +380,7 @@ export const MATERIAL_CATALOG = [
|
|
|
354
380
|
emissiveIntensity: 1,
|
|
355
381
|
displacementScale: 0,
|
|
356
382
|
transparent: false,
|
|
357
|
-
flipY:
|
|
383
|
+
flipY: false,
|
|
358
384
|
bumpScale: 1,
|
|
359
385
|
emissiveColor: '#000000',
|
|
360
386
|
aoMapIntensity: 1,
|
|
@@ -368,14 +394,14 @@ export const MATERIAL_CATALOG = [
|
|
|
368
394
|
id: 'wood-woodfine2',
|
|
369
395
|
label: 'Wood Fine 2',
|
|
370
396
|
category: 'wood',
|
|
397
|
+
surfaces: ['floor', 'wall', 'furniture'],
|
|
371
398
|
description: 'Fine wood finish',
|
|
372
|
-
previewThumbnailUrl: '/material/wood/wood_fine_2/
|
|
399
|
+
previewThumbnailUrl: '/material/wood/wood_fine_2/wood_fine_2_thumb.webp',
|
|
373
400
|
preset: {
|
|
374
401
|
maps: {
|
|
375
|
-
albedoMap: '/material/wood/wood_fine_2/
|
|
376
|
-
aoMap: '/material/wood/wood_fine_2/
|
|
377
|
-
|
|
378
|
-
normalMap: '/material/wood/wood_fine_2/wood_fine_2-normal.webp',
|
|
402
|
+
albedoMap: '/material/wood/wood_fine_2/wood_fine_2_basecolor_512.ktx2',
|
|
403
|
+
aoMap: '/material/wood/wood_fine_2/wood_fine_2_ao_512.ktx2',
|
|
404
|
+
normalMap: '/material/wood/wood_fine_2/wood_fine_2_normal_512.ktx2',
|
|
379
405
|
},
|
|
380
406
|
mapProperties: {
|
|
381
407
|
color: '#ffffff',
|
|
@@ -391,7 +417,7 @@ export const MATERIAL_CATALOG = [
|
|
|
391
417
|
emissiveIntensity: 1,
|
|
392
418
|
displacementScale: 0,
|
|
393
419
|
transparent: false,
|
|
394
|
-
flipY:
|
|
420
|
+
flipY: false,
|
|
395
421
|
bumpScale: 1,
|
|
396
422
|
emissiveColor: '#000000',
|
|
397
423
|
aoMapIntensity: 1,
|
|
@@ -405,14 +431,14 @@ export const MATERIAL_CATALOG = [
|
|
|
405
431
|
id: 'wood-woodfine22',
|
|
406
432
|
label: 'Wood Fine 22',
|
|
407
433
|
category: 'wood',
|
|
434
|
+
surfaces: ['floor', 'wall', 'furniture'],
|
|
408
435
|
description: 'Fine wood finish',
|
|
409
|
-
previewThumbnailUrl: '/material/wood/wood_fine_22/
|
|
436
|
+
previewThumbnailUrl: '/material/wood/wood_fine_22/wood_fine_22_thumb.webp',
|
|
410
437
|
preset: {
|
|
411
438
|
maps: {
|
|
412
|
-
albedoMap: '/material/wood/wood_fine_22/
|
|
413
|
-
aoMap: '/material/wood/wood_fine_22/
|
|
414
|
-
|
|
415
|
-
normalMap: '/material/wood/wood_fine_22/wood_fine_22-normal.webp',
|
|
439
|
+
albedoMap: '/material/wood/wood_fine_22/wood_fine_22_basecolor_512.ktx2',
|
|
440
|
+
aoMap: '/material/wood/wood_fine_22/wood_fine_22_ao_512.ktx2',
|
|
441
|
+
normalMap: '/material/wood/wood_fine_22/wood_fine_22_normal_512.ktx2',
|
|
416
442
|
},
|
|
417
443
|
mapProperties: {
|
|
418
444
|
color: '#ffffff',
|
|
@@ -428,7 +454,7 @@ export const MATERIAL_CATALOG = [
|
|
|
428
454
|
emissiveIntensity: 1,
|
|
429
455
|
displacementScale: 0,
|
|
430
456
|
transparent: false,
|
|
431
|
-
flipY:
|
|
457
|
+
flipY: false,
|
|
432
458
|
bumpScale: 1,
|
|
433
459
|
emissiveColor: '#000000',
|
|
434
460
|
aoMapIntensity: 1,
|
|
@@ -442,14 +468,14 @@ export const MATERIAL_CATALOG = [
|
|
|
442
468
|
id: 'wood-woodfine24',
|
|
443
469
|
label: 'Wood Fine 24',
|
|
444
470
|
category: 'wood',
|
|
471
|
+
surfaces: ['floor', 'wall', 'furniture'],
|
|
445
472
|
description: 'Fine wood finish',
|
|
446
|
-
previewThumbnailUrl: '/material/wood/wood_fine_24/
|
|
473
|
+
previewThumbnailUrl: '/material/wood/wood_fine_24/wood_fine_24_thumb.webp',
|
|
447
474
|
preset: {
|
|
448
475
|
maps: {
|
|
449
|
-
albedoMap: '/material/wood/wood_fine_24/
|
|
450
|
-
aoMap: '/material/wood/wood_fine_24/
|
|
451
|
-
|
|
452
|
-
normalMap: '/material/wood/wood_fine_24/wood_fine_24-normal.webp',
|
|
476
|
+
albedoMap: '/material/wood/wood_fine_24/wood_fine_24_basecolor_512.ktx2',
|
|
477
|
+
aoMap: '/material/wood/wood_fine_24/wood_fine_24_ao_512.ktx2',
|
|
478
|
+
normalMap: '/material/wood/wood_fine_24/wood_fine_24_normal_512.ktx2',
|
|
453
479
|
},
|
|
454
480
|
mapProperties: {
|
|
455
481
|
color: '#ffffff',
|
|
@@ -465,7 +491,7 @@ export const MATERIAL_CATALOG = [
|
|
|
465
491
|
emissiveIntensity: 1,
|
|
466
492
|
displacementScale: 0,
|
|
467
493
|
transparent: false,
|
|
468
|
-
flipY:
|
|
494
|
+
flipY: false,
|
|
469
495
|
bumpScale: 1,
|
|
470
496
|
emissiveColor: '#000000',
|
|
471
497
|
aoMapIntensity: 1,
|
|
@@ -479,15 +505,16 @@ export const MATERIAL_CATALOG = [
|
|
|
479
505
|
id: 'wood-woodparquet14',
|
|
480
506
|
label: 'Wood Parquet 14',
|
|
481
507
|
category: 'wood',
|
|
508
|
+
surfaces: ['floor'],
|
|
482
509
|
description: 'Parquet wood finish',
|
|
483
|
-
previewThumbnailUrl: '/material/wood/wood_parquet_14/
|
|
510
|
+
previewThumbnailUrl: '/material/wood/wood_parquet_14/wood_parquet_14_thumb.webp',
|
|
484
511
|
preset: {
|
|
485
512
|
maps: {
|
|
486
|
-
albedoMap: '/material/wood/wood_parquet_14/
|
|
487
|
-
aoMap: '/material/wood/wood_parquet_14/
|
|
488
|
-
metalnessMap: '/material/wood/wood_parquet_14/
|
|
489
|
-
normalMap: '/material/wood/wood_parquet_14/
|
|
490
|
-
roughnessMap: '/material/wood/wood_parquet_14/
|
|
513
|
+
albedoMap: '/material/wood/wood_parquet_14/wood_parquet_14_basecolor_512.ktx2',
|
|
514
|
+
aoMap: '/material/wood/wood_parquet_14/wood_parquet_14_ao_512.ktx2',
|
|
515
|
+
metalnessMap: '/material/wood/wood_parquet_14/wood_parquet_14_metallic_512.ktx2',
|
|
516
|
+
normalMap: '/material/wood/wood_parquet_14/wood_parquet_14_normal_512.ktx2',
|
|
517
|
+
roughnessMap: '/material/wood/wood_parquet_14/wood_parquet_14_roughness_512.ktx2',
|
|
491
518
|
},
|
|
492
519
|
mapProperties: {
|
|
493
520
|
color: '#ffffff',
|
|
@@ -503,7 +530,7 @@ export const MATERIAL_CATALOG = [
|
|
|
503
530
|
emissiveIntensity: 1,
|
|
504
531
|
displacementScale: 0,
|
|
505
532
|
transparent: false,
|
|
506
|
-
flipY:
|
|
533
|
+
flipY: false,
|
|
507
534
|
bumpScale: 1,
|
|
508
535
|
emissiveColor: '#000000',
|
|
509
536
|
aoMapIntensity: 1,
|
|
@@ -517,14 +544,14 @@ export const MATERIAL_CATALOG = [
|
|
|
517
544
|
id: 'wood-woodenparquet11',
|
|
518
545
|
label: 'Wooden Parquet 11',
|
|
519
546
|
category: 'wood',
|
|
547
|
+
surfaces: ['floor'],
|
|
520
548
|
description: 'Parquet wood finish',
|
|
521
|
-
previewThumbnailUrl: '/material/wood/wooden_parquet_11/
|
|
549
|
+
previewThumbnailUrl: '/material/wood/wooden_parquet_11/wooden_parquet_11_thumb.webp',
|
|
522
550
|
preset: {
|
|
523
551
|
maps: {
|
|
524
|
-
albedoMap: '/material/wood/wooden_parquet_11/
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
roughnessMap: '/material/wood/wooden_parquet_11/Classic Parquet_11_roughness.webp',
|
|
552
|
+
albedoMap: '/material/wood/wooden_parquet_11/wooden_parquet_11_basecolor_512.ktx2',
|
|
553
|
+
normalMap: '/material/wood/wooden_parquet_11/wooden_parquet_11_normal_512.ktx2',
|
|
554
|
+
roughnessMap: '/material/wood/wooden_parquet_11/wooden_parquet_11_roughness_512.ktx2',
|
|
528
555
|
},
|
|
529
556
|
mapProperties: {
|
|
530
557
|
color: '#ffffff',
|
|
@@ -540,7 +567,7 @@ export const MATERIAL_CATALOG = [
|
|
|
540
567
|
emissiveIntensity: 1,
|
|
541
568
|
displacementScale: 0,
|
|
542
569
|
transparent: false,
|
|
543
|
-
flipY:
|
|
570
|
+
flipY: false,
|
|
544
571
|
bumpScale: 1,
|
|
545
572
|
emissiveColor: '#000000',
|
|
546
573
|
aoMapIntensity: 1,
|
|
@@ -554,14 +581,15 @@ export const MATERIAL_CATALOG = [
|
|
|
554
581
|
id: 'wood-woodparquet121',
|
|
555
582
|
label: 'Wood Parquet 121',
|
|
556
583
|
category: 'wood',
|
|
584
|
+
surfaces: ['floor'],
|
|
557
585
|
description: 'Parquet wood finish',
|
|
558
|
-
previewThumbnailUrl: '/material/wood/woodparquet_121/
|
|
586
|
+
previewThumbnailUrl: '/material/wood/woodparquet_121/woodparquet_121_thumb.webp',
|
|
559
587
|
preset: {
|
|
560
588
|
maps: {
|
|
561
|
-
albedoMap: '/material/wood/woodparquet_121/
|
|
562
|
-
aoMap: '/material/wood/woodparquet_121/
|
|
563
|
-
normalMap: '/material/wood/woodparquet_121/
|
|
564
|
-
roughnessMap: '/material/wood/woodparquet_121/
|
|
589
|
+
albedoMap: '/material/wood/woodparquet_121/woodparquet_121_basecolor_512.ktx2',
|
|
590
|
+
aoMap: '/material/wood/woodparquet_121/woodparquet_121_ao_512.ktx2',
|
|
591
|
+
normalMap: '/material/wood/woodparquet_121/woodparquet_121_normal_512.ktx2',
|
|
592
|
+
roughnessMap: '/material/wood/woodparquet_121/woodparquet_121_roughness_512.ktx2',
|
|
565
593
|
},
|
|
566
594
|
mapProperties: {
|
|
567
595
|
color: '#ffffff',
|
|
@@ -577,7 +605,7 @@ export const MATERIAL_CATALOG = [
|
|
|
577
605
|
emissiveIntensity: 1,
|
|
578
606
|
displacementScale: 0,
|
|
579
607
|
transparent: false,
|
|
580
|
-
flipY:
|
|
608
|
+
flipY: false,
|
|
581
609
|
bumpScale: 1,
|
|
582
610
|
emissiveColor: '#000000',
|
|
583
611
|
aoMapIntensity: 1,
|
|
@@ -591,15 +619,16 @@ export const MATERIAL_CATALOG = [
|
|
|
591
619
|
id: 'wood-woodparquet56',
|
|
592
620
|
label: 'Wood Parquet 56',
|
|
593
621
|
category: 'wood',
|
|
622
|
+
surfaces: ['floor'],
|
|
594
623
|
description: 'Parquet wood finish',
|
|
595
|
-
previewThumbnailUrl: '/material/wood/woodparquet_56/
|
|
624
|
+
previewThumbnailUrl: '/material/wood/woodparquet_56/woodparquet_56_thumb.webp',
|
|
596
625
|
preset: {
|
|
597
626
|
maps: {
|
|
598
|
-
albedoMap: '/material/wood/woodparquet_56/
|
|
599
|
-
aoMap: '/material/wood/woodparquet_56/
|
|
600
|
-
metalnessMap: '/material/wood/woodparquet_56/
|
|
601
|
-
normalMap: '/material/wood/woodparquet_56/
|
|
602
|
-
roughnessMap: '/material/wood/woodparquet_56/
|
|
627
|
+
albedoMap: '/material/wood/woodparquet_56/woodparquet_56_basecolor_512.ktx2',
|
|
628
|
+
aoMap: '/material/wood/woodparquet_56/woodparquet_56_ao_512.ktx2',
|
|
629
|
+
metalnessMap: '/material/wood/woodparquet_56/woodparquet_56_metallic_512.ktx2',
|
|
630
|
+
normalMap: '/material/wood/woodparquet_56/woodparquet_56_normal_512.ktx2',
|
|
631
|
+
roughnessMap: '/material/wood/woodparquet_56/woodparquet_56_roughness_512.ktx2',
|
|
603
632
|
},
|
|
604
633
|
mapProperties: {
|
|
605
634
|
color: '#ffffff',
|
|
@@ -615,7 +644,7 @@ export const MATERIAL_CATALOG = [
|
|
|
615
644
|
emissiveIntensity: 1,
|
|
616
645
|
displacementScale: 0,
|
|
617
646
|
transparent: false,
|
|
618
|
-
flipY:
|
|
647
|
+
flipY: false,
|
|
619
648
|
bumpScale: 1,
|
|
620
649
|
emissiveColor: '#000000',
|
|
621
650
|
aoMapIntensity: 1,
|
|
@@ -629,15 +658,16 @@ export const MATERIAL_CATALOG = [
|
|
|
629
658
|
id: 'wood-woodparquet65',
|
|
630
659
|
label: 'Wood Parquet 65',
|
|
631
660
|
category: 'wood',
|
|
661
|
+
surfaces: ['floor'],
|
|
632
662
|
description: 'Parquet wood finish',
|
|
633
|
-
previewThumbnailUrl: '/material/wood/woodparquet_65/
|
|
663
|
+
previewThumbnailUrl: '/material/wood/woodparquet_65/woodparquet_65_thumb.webp',
|
|
634
664
|
preset: {
|
|
635
665
|
maps: {
|
|
636
|
-
albedoMap: '/material/wood/woodparquet_65/
|
|
637
|
-
aoMap: '/material/wood/woodparquet_65/
|
|
638
|
-
metalnessMap: '/material/wood/woodparquet_65/
|
|
639
|
-
normalMap: '/material/wood/woodparquet_65/
|
|
640
|
-
roughnessMap: '/material/wood/woodparquet_65/
|
|
666
|
+
albedoMap: '/material/wood/woodparquet_65/woodparquet_65_basecolor_512.ktx2',
|
|
667
|
+
aoMap: '/material/wood/woodparquet_65/woodparquet_65_ao_512.ktx2',
|
|
668
|
+
metalnessMap: '/material/wood/woodparquet_65/woodparquet_65_metallic_512.ktx2',
|
|
669
|
+
normalMap: '/material/wood/woodparquet_65/woodparquet_65_normal_512.ktx2',
|
|
670
|
+
roughnessMap: '/material/wood/woodparquet_65/woodparquet_65_roughness_512.ktx2',
|
|
641
671
|
},
|
|
642
672
|
mapProperties: {
|
|
643
673
|
color: '#ffffff',
|
|
@@ -653,7 +683,7 @@ export const MATERIAL_CATALOG = [
|
|
|
653
683
|
emissiveIntensity: 1,
|
|
654
684
|
displacementScale: 0,
|
|
655
685
|
transparent: false,
|
|
656
|
-
flipY:
|
|
686
|
+
flipY: false,
|
|
657
687
|
bumpScale: 1,
|
|
658
688
|
emissiveColor: '#000000',
|
|
659
689
|
aoMapIntensity: 1,
|
|
@@ -667,15 +697,16 @@ export const MATERIAL_CATALOG = [
|
|
|
667
697
|
id: 'wood-woodparquet99',
|
|
668
698
|
label: 'Wood Parquet 99',
|
|
669
699
|
category: 'wood',
|
|
700
|
+
surfaces: ['floor'],
|
|
670
701
|
description: 'Parquet wood finish',
|
|
671
|
-
previewThumbnailUrl: '/material/wood/woodparquet_99/
|
|
702
|
+
previewThumbnailUrl: '/material/wood/woodparquet_99/woodparquet_99_thumb.webp',
|
|
672
703
|
preset: {
|
|
673
704
|
maps: {
|
|
674
|
-
albedoMap: '/material/wood/woodparquet_99/
|
|
675
|
-
aoMap: '/material/wood/woodparquet_99/
|
|
676
|
-
metalnessMap: '/material/wood/woodparquet_99/
|
|
677
|
-
normalMap: '/material/wood/woodparquet_99/
|
|
678
|
-
roughnessMap: '/material/wood/woodparquet_99/
|
|
705
|
+
albedoMap: '/material/wood/woodparquet_99/woodparquet_99_basecolor_512.ktx2',
|
|
706
|
+
aoMap: '/material/wood/woodparquet_99/woodparquet_99_ao_512.ktx2',
|
|
707
|
+
metalnessMap: '/material/wood/woodparquet_99/woodparquet_99_metallic_512.ktx2',
|
|
708
|
+
normalMap: '/material/wood/woodparquet_99/woodparquet_99_normal_512.ktx2',
|
|
709
|
+
roughnessMap: '/material/wood/woodparquet_99/woodparquet_99_roughness_512.ktx2',
|
|
679
710
|
},
|
|
680
711
|
mapProperties: {
|
|
681
712
|
color: '#ffffff',
|
|
@@ -691,7 +722,7 @@ export const MATERIAL_CATALOG = [
|
|
|
691
722
|
emissiveIntensity: 1,
|
|
692
723
|
displacementScale: 0,
|
|
693
724
|
transparent: false,
|
|
694
|
-
flipY:
|
|
725
|
+
flipY: false,
|
|
695
726
|
bumpScale: 1,
|
|
696
727
|
emissiveColor: '#000000',
|
|
697
728
|
aoMapIntensity: 1,
|
|
@@ -705,14 +736,15 @@ export const MATERIAL_CATALOG = [
|
|
|
705
736
|
id: 'wood-woodplank19',
|
|
706
737
|
label: 'Wood Plank 19',
|
|
707
738
|
category: 'wood',
|
|
739
|
+
surfaces: ['floor', 'wall'],
|
|
708
740
|
description: 'Wood plank finish',
|
|
709
|
-
previewThumbnailUrl: '/material/wood/woodplank_19/
|
|
741
|
+
previewThumbnailUrl: '/material/wood/woodplank_19/woodplank_19_thumb.webp',
|
|
710
742
|
preset: {
|
|
711
743
|
maps: {
|
|
712
|
-
albedoMap: '/material/wood/woodplank_19/
|
|
713
|
-
aoMap: '/material/wood/woodplank_19/
|
|
714
|
-
normalMap: '/material/wood/woodplank_19/
|
|
715
|
-
roughnessMap: '/material/wood/woodplank_19/
|
|
744
|
+
albedoMap: '/material/wood/woodplank_19/woodplank_19_basecolor_512.ktx2',
|
|
745
|
+
aoMap: '/material/wood/woodplank_19/woodplank_19_ao_512.ktx2',
|
|
746
|
+
normalMap: '/material/wood/woodplank_19/woodplank_19_normal_512.ktx2',
|
|
747
|
+
roughnessMap: '/material/wood/woodplank_19/woodplank_19_roughness_512.ktx2',
|
|
716
748
|
},
|
|
717
749
|
mapProperties: {
|
|
718
750
|
color: '#ffffff',
|
|
@@ -728,7 +760,7 @@ export const MATERIAL_CATALOG = [
|
|
|
728
760
|
emissiveIntensity: 1,
|
|
729
761
|
displacementScale: 0,
|
|
730
762
|
transparent: false,
|
|
731
|
-
flipY:
|
|
763
|
+
flipY: false,
|
|
732
764
|
bumpScale: 1,
|
|
733
765
|
emissiveColor: '#000000',
|
|
734
766
|
aoMapIntensity: 1,
|
|
@@ -742,14 +774,15 @@ export const MATERIAL_CATALOG = [
|
|
|
742
774
|
id: 'wood-woodplank48',
|
|
743
775
|
label: 'Wood Plank 48',
|
|
744
776
|
category: 'wood',
|
|
777
|
+
surfaces: ['floor', 'wall'],
|
|
745
778
|
description: 'Wood plank finish',
|
|
746
|
-
previewThumbnailUrl: '/material/wood/woodplank_48/
|
|
779
|
+
previewThumbnailUrl: '/material/wood/woodplank_48/woodplank_48_thumb.webp',
|
|
747
780
|
preset: {
|
|
748
781
|
maps: {
|
|
749
|
-
albedoMap: '/material/wood/woodplank_48/
|
|
750
|
-
aoMap: '/material/wood/woodplank_48/
|
|
751
|
-
normalMap: '/material/wood/woodplank_48/
|
|
752
|
-
roughnessMap: '/material/wood/woodplank_48/
|
|
782
|
+
albedoMap: '/material/wood/woodplank_48/woodplank_48_basecolor_512.ktx2',
|
|
783
|
+
aoMap: '/material/wood/woodplank_48/woodplank_48_ao_512.ktx2',
|
|
784
|
+
normalMap: '/material/wood/woodplank_48/woodplank_48_normal_512.ktx2',
|
|
785
|
+
roughnessMap: '/material/wood/woodplank_48/woodplank_48_roughness_512.ktx2',
|
|
753
786
|
},
|
|
754
787
|
mapProperties: {
|
|
755
788
|
color: '#ffffff',
|
|
@@ -765,7 +798,7 @@ export const MATERIAL_CATALOG = [
|
|
|
765
798
|
emissiveIntensity: 1,
|
|
766
799
|
displacementScale: 0,
|
|
767
800
|
transparent: false,
|
|
768
|
-
flipY:
|
|
801
|
+
flipY: false,
|
|
769
802
|
bumpScale: 1,
|
|
770
803
|
emissiveColor: '#000000',
|
|
771
804
|
aoMapIntensity: 1,
|
|
@@ -778,15 +811,16 @@ export const MATERIAL_CATALOG = [
|
|
|
778
811
|
{
|
|
779
812
|
id: 'flooring-tile85a',
|
|
780
813
|
label: 'Quarry Tile',
|
|
781
|
-
category: '
|
|
814
|
+
category: 'tile',
|
|
815
|
+
surfaces: ['floor'],
|
|
782
816
|
description: 'Floor tile finish',
|
|
783
|
-
previewThumbnailUrl: '/material/flooring/tile_quarry/
|
|
817
|
+
previewThumbnailUrl: '/material/flooring/tile_quarry/tile_quarry_thumb.webp',
|
|
784
818
|
preset: {
|
|
785
819
|
maps: {
|
|
786
|
-
albedoMap: '/material/flooring/tile_quarry/
|
|
787
|
-
aoMap: '/material/flooring/tile_quarry/
|
|
788
|
-
normalMap: '/material/flooring/tile_quarry/
|
|
789
|
-
roughnessMap: '/material/flooring/tile_quarry/
|
|
820
|
+
albedoMap: '/material/flooring/tile_quarry/tile_quarry_basecolor_512.ktx2',
|
|
821
|
+
aoMap: '/material/flooring/tile_quarry/tile_quarry_ao_512.ktx2',
|
|
822
|
+
normalMap: '/material/flooring/tile_quarry/tile_quarry_normal_512.ktx2',
|
|
823
|
+
roughnessMap: '/material/flooring/tile_quarry/tile_quarry_roughness_512.ktx2',
|
|
790
824
|
},
|
|
791
825
|
mapProperties: {
|
|
792
826
|
color: '#ffffff',
|
|
@@ -802,7 +836,7 @@ export const MATERIAL_CATALOG = [
|
|
|
802
836
|
emissiveIntensity: 1,
|
|
803
837
|
displacementScale: 0,
|
|
804
838
|
transparent: false,
|
|
805
|
-
flipY:
|
|
839
|
+
flipY: false,
|
|
806
840
|
bumpScale: 1,
|
|
807
841
|
emissiveColor: '#000000',
|
|
808
842
|
aoMapIntensity: 1,
|
|
@@ -815,16 +849,17 @@ export const MATERIAL_CATALOG = [
|
|
|
815
849
|
{
|
|
816
850
|
id: 'flooring-rusticbrick',
|
|
817
851
|
label: 'Rustic Brick',
|
|
818
|
-
category: '
|
|
852
|
+
category: 'brick',
|
|
853
|
+
surfaces: ['wall', 'floor', 'outdoor'],
|
|
819
854
|
description: 'Brick finish',
|
|
820
|
-
previewThumbnailUrl: '/material/flooring/brick_wall_rustic/
|
|
855
|
+
previewThumbnailUrl: '/material/flooring/brick_wall_rustic/brick_wall_rustic_thumb.webp',
|
|
821
856
|
preset: {
|
|
822
857
|
maps: {
|
|
823
|
-
albedoMap: '/material/flooring/brick_wall_rustic/
|
|
824
|
-
aoMap: '/material/flooring/brick_wall_rustic/
|
|
825
|
-
metalnessMap: '/material/flooring/brick_wall_rustic/
|
|
826
|
-
normalMap: '/material/flooring/brick_wall_rustic/
|
|
827
|
-
roughnessMap: '/material/flooring/brick_wall_rustic/
|
|
858
|
+
albedoMap: '/material/flooring/brick_wall_rustic/brick_wall_rustic_basecolor_512.ktx2',
|
|
859
|
+
aoMap: '/material/flooring/brick_wall_rustic/brick_wall_rustic_ao_512.ktx2',
|
|
860
|
+
metalnessMap: '/material/flooring/brick_wall_rustic/brick_wall_rustic_metallic_512.ktx2',
|
|
861
|
+
normalMap: '/material/flooring/brick_wall_rustic/brick_wall_rustic_normal_512.ktx2',
|
|
862
|
+
roughnessMap: '/material/flooring/brick_wall_rustic/brick_wall_rustic_roughness_512.ktx2',
|
|
828
863
|
},
|
|
829
864
|
mapProperties: {
|
|
830
865
|
color: '#ffffff',
|
|
@@ -840,7 +875,7 @@ export const MATERIAL_CATALOG = [
|
|
|
840
875
|
emissiveIntensity: 1,
|
|
841
876
|
displacementScale: 0,
|
|
842
877
|
transparent: false,
|
|
843
|
-
flipY:
|
|
878
|
+
flipY: false,
|
|
844
879
|
bumpScale: 1,
|
|
845
880
|
emissiveColor: '#000000',
|
|
846
881
|
aoMapIntensity: 1,
|
|
@@ -853,16 +888,17 @@ export const MATERIAL_CATALOG = [
|
|
|
853
888
|
{
|
|
854
889
|
id: 'flooring-agedbrick',
|
|
855
890
|
label: 'Aged Brick',
|
|
856
|
-
category: '
|
|
891
|
+
category: 'brick',
|
|
892
|
+
surfaces: ['wall', 'floor', 'outdoor'],
|
|
857
893
|
description: 'Brick finish',
|
|
858
|
-
previewThumbnailUrl: '/material/flooring/brick_wall_aged/
|
|
894
|
+
previewThumbnailUrl: '/material/flooring/brick_wall_aged/brick_wall_aged_thumb.webp',
|
|
859
895
|
preset: {
|
|
860
896
|
maps: {
|
|
861
|
-
albedoMap: '/material/flooring/brick_wall_aged/
|
|
862
|
-
aoMap: '/material/flooring/brick_wall_aged/
|
|
863
|
-
metalnessMap: '/material/flooring/brick_wall_aged/
|
|
864
|
-
normalMap: '/material/flooring/brick_wall_aged/
|
|
865
|
-
roughnessMap: '/material/flooring/brick_wall_aged/
|
|
897
|
+
albedoMap: '/material/flooring/brick_wall_aged/brick_wall_aged_basecolor_512.ktx2',
|
|
898
|
+
aoMap: '/material/flooring/brick_wall_aged/brick_wall_aged_ao_512.ktx2',
|
|
899
|
+
metalnessMap: '/material/flooring/brick_wall_aged/brick_wall_aged_metallic_512.ktx2',
|
|
900
|
+
normalMap: '/material/flooring/brick_wall_aged/brick_wall_aged_normal_512.ktx2',
|
|
901
|
+
roughnessMap: '/material/flooring/brick_wall_aged/brick_wall_aged_roughness_512.ktx2',
|
|
866
902
|
},
|
|
867
903
|
mapProperties: {
|
|
868
904
|
color: '#ffffff',
|
|
@@ -878,7 +914,7 @@ export const MATERIAL_CATALOG = [
|
|
|
878
914
|
emissiveIntensity: 1,
|
|
879
915
|
displacementScale: 0,
|
|
880
916
|
transparent: false,
|
|
881
|
-
flipY:
|
|
917
|
+
flipY: false,
|
|
882
918
|
bumpScale: 1,
|
|
883
919
|
emissiveColor: '#000000',
|
|
884
920
|
aoMapIntensity: 1,
|
|
@@ -891,15 +927,16 @@ export const MATERIAL_CATALOG = [
|
|
|
891
927
|
{
|
|
892
928
|
id: 'flooring-weatheredbrick',
|
|
893
929
|
label: 'Weathered Brick',
|
|
894
|
-
category: '
|
|
930
|
+
category: 'brick',
|
|
931
|
+
surfaces: ['wall', 'floor', 'outdoor'],
|
|
895
932
|
description: 'Brick finish',
|
|
896
|
-
previewThumbnailUrl: '/material/flooring/brick_wall_weathered/
|
|
933
|
+
previewThumbnailUrl: '/material/flooring/brick_wall_weathered/brick_wall_weathered_thumb.webp',
|
|
897
934
|
preset: {
|
|
898
935
|
maps: {
|
|
899
|
-
albedoMap: '/material/flooring/brick_wall_weathered/
|
|
900
|
-
aoMap: '/material/flooring/brick_wall_weathered/
|
|
901
|
-
normalMap: '/material/flooring/brick_wall_weathered/
|
|
902
|
-
roughnessMap: '/material/flooring/brick_wall_weathered/
|
|
936
|
+
albedoMap: '/material/flooring/brick_wall_weathered/brick_wall_weathered_basecolor_512.ktx2',
|
|
937
|
+
aoMap: '/material/flooring/brick_wall_weathered/brick_wall_weathered_ao_512.ktx2',
|
|
938
|
+
normalMap: '/material/flooring/brick_wall_weathered/brick_wall_weathered_normal_512.ktx2',
|
|
939
|
+
roughnessMap: '/material/flooring/brick_wall_weathered/brick_wall_weathered_roughness_512.ktx2',
|
|
903
940
|
},
|
|
904
941
|
mapProperties: {
|
|
905
942
|
color: '#ffffff',
|
|
@@ -915,7 +952,7 @@ export const MATERIAL_CATALOG = [
|
|
|
915
952
|
emissiveIntensity: 1,
|
|
916
953
|
displacementScale: 0,
|
|
917
954
|
transparent: false,
|
|
918
|
-
flipY:
|
|
955
|
+
flipY: false,
|
|
919
956
|
bumpScale: 1,
|
|
920
957
|
emissiveColor: '#000000',
|
|
921
958
|
aoMapIntensity: 1,
|
|
@@ -928,15 +965,15 @@ export const MATERIAL_CATALOG = [
|
|
|
928
965
|
{
|
|
929
966
|
id: 'flooring-garagedoor',
|
|
930
967
|
label: 'Garage Panel',
|
|
931
|
-
category: '
|
|
968
|
+
category: 'metal',
|
|
969
|
+
surfaces: ['wall', 'furniture'],
|
|
932
970
|
description: 'Panel finish',
|
|
933
|
-
previewThumbnailUrl: '/material/flooring/garage_panel/
|
|
971
|
+
previewThumbnailUrl: '/material/flooring/garage_panel/garage_panel_thumb.webp',
|
|
934
972
|
preset: {
|
|
935
973
|
maps: {
|
|
936
|
-
albedoMap: '/material/flooring/garage_panel/
|
|
937
|
-
aoMap: '/material/flooring/garage_panel/
|
|
938
|
-
|
|
939
|
-
normalMap: '/material/flooring/garage_panel/garage_panel_normal.jpg',
|
|
974
|
+
albedoMap: '/material/flooring/garage_panel/garage_panel_basecolor_512.ktx2',
|
|
975
|
+
aoMap: '/material/flooring/garage_panel/garage_panel_ao_512.ktx2',
|
|
976
|
+
normalMap: '/material/flooring/garage_panel/garage_panel_normal_512.ktx2',
|
|
940
977
|
},
|
|
941
978
|
mapProperties: {
|
|
942
979
|
color: '#ffffff',
|
|
@@ -952,7 +989,7 @@ export const MATERIAL_CATALOG = [
|
|
|
952
989
|
emissiveIntensity: 1,
|
|
953
990
|
displacementScale: 0,
|
|
954
991
|
transparent: false,
|
|
955
|
-
flipY:
|
|
992
|
+
flipY: false,
|
|
956
993
|
bumpScale: 1,
|
|
957
994
|
emissiveColor: '#000000',
|
|
958
995
|
aoMapIntensity: 1,
|
|
@@ -965,15 +1002,15 @@ export const MATERIAL_CATALOG = [
|
|
|
965
1002
|
{
|
|
966
1003
|
id: 'flooring-greenlabradorite',
|
|
967
1004
|
label: 'Green Labradorite',
|
|
968
|
-
category: '
|
|
1005
|
+
category: 'stone',
|
|
1006
|
+
surfaces: ['floor', 'wall'],
|
|
969
1007
|
description: 'Stone flooring finish',
|
|
970
|
-
previewThumbnailUrl: '/material/flooring/green_labradorite/
|
|
1008
|
+
previewThumbnailUrl: '/material/flooring/green_labradorite/green_labradorite_thumb.webp',
|
|
971
1009
|
preset: {
|
|
972
1010
|
maps: {
|
|
973
|
-
albedoMap: '/material/flooring/green_labradorite/
|
|
974
|
-
aoMap: '/material/flooring/green_labradorite/
|
|
975
|
-
|
|
976
|
-
normalMap: '/material/flooring/green_labradorite/green_labradorite_normal.jpg',
|
|
1011
|
+
albedoMap: '/material/flooring/green_labradorite/green_labradorite_basecolor_512.ktx2',
|
|
1012
|
+
aoMap: '/material/flooring/green_labradorite/green_labradorite_ao_512.ktx2',
|
|
1013
|
+
normalMap: '/material/flooring/green_labradorite/green_labradorite_normal_512.ktx2',
|
|
977
1014
|
},
|
|
978
1015
|
mapProperties: {
|
|
979
1016
|
color: '#ffffff',
|
|
@@ -989,7 +1026,7 @@ export const MATERIAL_CATALOG = [
|
|
|
989
1026
|
emissiveIntensity: 1,
|
|
990
1027
|
displacementScale: 0,
|
|
991
1028
|
transparent: false,
|
|
992
|
-
flipY:
|
|
1029
|
+
flipY: false,
|
|
993
1030
|
bumpScale: 1,
|
|
994
1031
|
emissiveColor: '#000000',
|
|
995
1032
|
aoMapIntensity: 1,
|
|
@@ -1002,16 +1039,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1002
1039
|
{
|
|
1003
1040
|
id: 'flooring-ground13',
|
|
1004
1041
|
label: 'Earth Ground',
|
|
1005
|
-
category: '
|
|
1042
|
+
category: 'ground',
|
|
1043
|
+
surfaces: ['outdoor', 'floor'],
|
|
1006
1044
|
description: 'Ground surface finish',
|
|
1007
|
-
previewThumbnailUrl: '/material/flooring/ground_earth/
|
|
1045
|
+
previewThumbnailUrl: '/material/flooring/ground_earth/ground_earth_thumb.webp',
|
|
1008
1046
|
preset: {
|
|
1009
1047
|
maps: {
|
|
1010
|
-
albedoMap: '/material/flooring/ground_earth/
|
|
1011
|
-
aoMap: '/material/flooring/ground_earth/
|
|
1012
|
-
metalnessMap: '/material/flooring/ground_earth/
|
|
1013
|
-
normalMap: '/material/flooring/ground_earth/
|
|
1014
|
-
roughnessMap: '/material/flooring/ground_earth/
|
|
1048
|
+
albedoMap: '/material/flooring/ground_earth/ground_earth_basecolor_512.ktx2',
|
|
1049
|
+
aoMap: '/material/flooring/ground_earth/ground_earth_ao_512.ktx2',
|
|
1050
|
+
metalnessMap: '/material/flooring/ground_earth/ground_earth_metallic_512.ktx2',
|
|
1051
|
+
normalMap: '/material/flooring/ground_earth/ground_earth_normal_512.ktx2',
|
|
1052
|
+
roughnessMap: '/material/flooring/ground_earth/ground_earth_roughness_512.ktx2',
|
|
1015
1053
|
},
|
|
1016
1054
|
mapProperties: {
|
|
1017
1055
|
color: '#ffffff',
|
|
@@ -1027,7 +1065,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1027
1065
|
emissiveIntensity: 1,
|
|
1028
1066
|
displacementScale: 0,
|
|
1029
1067
|
transparent: false,
|
|
1030
|
-
flipY:
|
|
1068
|
+
flipY: false,
|
|
1031
1069
|
bumpScale: 1,
|
|
1032
1070
|
emissiveColor: '#000000',
|
|
1033
1071
|
aoMapIntensity: 1,
|
|
@@ -1040,15 +1078,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1040
1078
|
{
|
|
1041
1079
|
id: 'flooring-pooltiles',
|
|
1042
1080
|
label: 'Pool Tiles',
|
|
1043
|
-
category: '
|
|
1081
|
+
category: 'tile',
|
|
1082
|
+
surfaces: ['floor', 'outdoor'],
|
|
1044
1083
|
description: 'Pool tile finish',
|
|
1045
|
-
previewThumbnailUrl: '/material/flooring/pool_tiles/
|
|
1084
|
+
previewThumbnailUrl: '/material/flooring/pool_tiles/pool_tiles_thumb.webp',
|
|
1046
1085
|
preset: {
|
|
1047
1086
|
maps: {
|
|
1048
|
-
albedoMap: '/material/flooring/pool_tiles/
|
|
1049
|
-
aoMap: '/material/flooring/pool_tiles/
|
|
1050
|
-
|
|
1051
|
-
normalMap: '/material/flooring/pool_tiles/pool_tiles_normal.jpg',
|
|
1087
|
+
albedoMap: '/material/flooring/pool_tiles/pool_tiles_basecolor_512.ktx2',
|
|
1088
|
+
aoMap: '/material/flooring/pool_tiles/pool_tiles_ao_512.ktx2',
|
|
1089
|
+
normalMap: '/material/flooring/pool_tiles/pool_tiles_normal_512.ktx2',
|
|
1052
1090
|
},
|
|
1053
1091
|
mapProperties: {
|
|
1054
1092
|
color: '#ffffff',
|
|
@@ -1064,7 +1102,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1064
1102
|
emissiveIntensity: 1,
|
|
1065
1103
|
displacementScale: 0,
|
|
1066
1104
|
transparent: false,
|
|
1067
|
-
flipY:
|
|
1105
|
+
flipY: false,
|
|
1068
1106
|
bumpScale: 1,
|
|
1069
1107
|
emissiveColor: '#000000',
|
|
1070
1108
|
aoMapIntensity: 1,
|
|
@@ -1077,15 +1115,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1077
1115
|
{
|
|
1078
1116
|
id: 'flooring-tiles3',
|
|
1079
1117
|
label: 'Checker Tiles',
|
|
1080
|
-
category: '
|
|
1118
|
+
category: 'tile',
|
|
1119
|
+
surfaces: ['floor'],
|
|
1081
1120
|
description: 'Tile flooring finish',
|
|
1082
|
-
previewThumbnailUrl: '/material/flooring/tiles_checker/
|
|
1121
|
+
previewThumbnailUrl: '/material/flooring/tiles_checker/tiles_checker_thumb.webp',
|
|
1083
1122
|
preset: {
|
|
1084
1123
|
maps: {
|
|
1085
|
-
albedoMap: '/material/flooring/tiles_checker/
|
|
1086
|
-
aoMap: '/material/flooring/tiles_checker/
|
|
1087
|
-
|
|
1088
|
-
normalMap: '/material/flooring/tiles_checker/tiles_checker_normal.jpg',
|
|
1124
|
+
albedoMap: '/material/flooring/tiles_checker/tiles_checker_basecolor_512.ktx2',
|
|
1125
|
+
aoMap: '/material/flooring/tiles_checker/tiles_checker_ao_512.ktx2',
|
|
1126
|
+
normalMap: '/material/flooring/tiles_checker/tiles_checker_normal_512.ktx2',
|
|
1089
1127
|
},
|
|
1090
1128
|
mapProperties: {
|
|
1091
1129
|
color: '#ffffff',
|
|
@@ -1101,7 +1139,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1101
1139
|
emissiveIntensity: 1,
|
|
1102
1140
|
displacementScale: 0,
|
|
1103
1141
|
transparent: false,
|
|
1104
|
-
flipY:
|
|
1142
|
+
flipY: false,
|
|
1105
1143
|
bumpScale: 1,
|
|
1106
1144
|
emissiveColor: '#000000',
|
|
1107
1145
|
aoMapIntensity: 1,
|
|
@@ -1114,15 +1152,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1114
1152
|
{
|
|
1115
1153
|
id: 'flooring-tiles4',
|
|
1116
1154
|
label: 'Grid Tiles',
|
|
1117
|
-
category: '
|
|
1155
|
+
category: 'tile',
|
|
1156
|
+
surfaces: ['floor'],
|
|
1118
1157
|
description: 'Tile flooring finish',
|
|
1119
|
-
previewThumbnailUrl: '/material/flooring/tiles_grid/
|
|
1158
|
+
previewThumbnailUrl: '/material/flooring/tiles_grid/tiles_grid_thumb.webp',
|
|
1120
1159
|
preset: {
|
|
1121
1160
|
maps: {
|
|
1122
|
-
albedoMap: '/material/flooring/tiles_grid/
|
|
1123
|
-
aoMap: '/material/flooring/tiles_grid/
|
|
1124
|
-
|
|
1125
|
-
normalMap: '/material/flooring/tiles_grid/tiles_grid_normal.jpg',
|
|
1161
|
+
albedoMap: '/material/flooring/tiles_grid/tiles_grid_basecolor_512.ktx2',
|
|
1162
|
+
aoMap: '/material/flooring/tiles_grid/tiles_grid_ao_512.ktx2',
|
|
1163
|
+
normalMap: '/material/flooring/tiles_grid/tiles_grid_normal_512.ktx2',
|
|
1126
1164
|
},
|
|
1127
1165
|
mapProperties: {
|
|
1128
1166
|
color: '#ffffff',
|
|
@@ -1138,7 +1176,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1138
1176
|
emissiveIntensity: 1,
|
|
1139
1177
|
displacementScale: 0,
|
|
1140
1178
|
transparent: false,
|
|
1141
|
-
flipY:
|
|
1179
|
+
flipY: false,
|
|
1142
1180
|
bumpScale: 1,
|
|
1143
1181
|
emissiveColor: '#000000',
|
|
1144
1182
|
aoMapIntensity: 1,
|
|
@@ -1151,15 +1189,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1151
1189
|
{
|
|
1152
1190
|
id: 'flooring-wallstone1',
|
|
1153
1191
|
label: 'Stone Wall',
|
|
1154
|
-
category: '
|
|
1192
|
+
category: 'stone',
|
|
1193
|
+
surfaces: ['wall', 'floor', 'outdoor'],
|
|
1155
1194
|
description: 'Stone finish',
|
|
1156
|
-
previewThumbnailUrl: '/material/flooring/stone_wall/
|
|
1195
|
+
previewThumbnailUrl: '/material/flooring/stone_wall/stone_wall_thumb.webp',
|
|
1157
1196
|
preset: {
|
|
1158
1197
|
maps: {
|
|
1159
|
-
albedoMap: '/material/flooring/stone_wall/
|
|
1160
|
-
aoMap: '/material/flooring/stone_wall/
|
|
1161
|
-
|
|
1162
|
-
normalMap: '/material/flooring/stone_wall/stone_wall_normal.webp',
|
|
1198
|
+
albedoMap: '/material/flooring/stone_wall/stone_wall_basecolor_512.ktx2',
|
|
1199
|
+
aoMap: '/material/flooring/stone_wall/stone_wall_ao_512.ktx2',
|
|
1200
|
+
normalMap: '/material/flooring/stone_wall/stone_wall_normal_512.ktx2',
|
|
1163
1201
|
},
|
|
1164
1202
|
mapProperties: {
|
|
1165
1203
|
color: '#ffffff',
|
|
@@ -1175,7 +1213,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1175
1213
|
emissiveIntensity: 1,
|
|
1176
1214
|
displacementScale: 0,
|
|
1177
1215
|
transparent: false,
|
|
1178
|
-
flipY:
|
|
1216
|
+
flipY: false,
|
|
1179
1217
|
bumpScale: 1,
|
|
1180
1218
|
emissiveColor: '#000000',
|
|
1181
1219
|
aoMapIntensity: 1,
|
|
@@ -1188,15 +1226,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1188
1226
|
{
|
|
1189
1227
|
id: 'flooring-woodenceramic3',
|
|
1190
1228
|
label: 'Wooden Ceramic 3',
|
|
1191
|
-
category: '
|
|
1229
|
+
category: 'tile',
|
|
1230
|
+
surfaces: ['floor'],
|
|
1192
1231
|
description: 'Wood-look ceramic flooring finish',
|
|
1193
|
-
previewThumbnailUrl: '/material/flooring/wooden_ceramic_3/
|
|
1232
|
+
previewThumbnailUrl: '/material/flooring/wooden_ceramic_3/wooden_ceramic_3_thumb.webp',
|
|
1194
1233
|
preset: {
|
|
1195
1234
|
maps: {
|
|
1196
|
-
albedoMap: '/material/flooring/wooden_ceramic_3/
|
|
1197
|
-
aoMap: '/material/flooring/wooden_ceramic_3/
|
|
1198
|
-
|
|
1199
|
-
normalMap: '/material/flooring/wooden_ceramic_3/wooden_ceramic-normal.webp',
|
|
1235
|
+
albedoMap: '/material/flooring/wooden_ceramic_3/wooden_ceramic_3_basecolor_512.ktx2',
|
|
1236
|
+
aoMap: '/material/flooring/wooden_ceramic_3/wooden_ceramic_3_ao_512.ktx2',
|
|
1237
|
+
normalMap: '/material/flooring/wooden_ceramic_3/wooden_ceramic_3_normal_512.ktx2',
|
|
1200
1238
|
},
|
|
1201
1239
|
mapProperties: {
|
|
1202
1240
|
color: '#ffffff',
|
|
@@ -1212,7 +1250,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1212
1250
|
emissiveIntensity: 1,
|
|
1213
1251
|
displacementScale: 0,
|
|
1214
1252
|
transparent: false,
|
|
1215
|
-
flipY:
|
|
1253
|
+
flipY: false,
|
|
1216
1254
|
bumpScale: 1,
|
|
1217
1255
|
emissiveColor: '#000000',
|
|
1218
1256
|
aoMapIntensity: 1,
|
|
@@ -1225,16 +1263,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1225
1263
|
{
|
|
1226
1264
|
id: 'flooring-ceramic53',
|
|
1227
1265
|
label: 'Ceramic Mosaic',
|
|
1228
|
-
category: '
|
|
1266
|
+
category: 'tile',
|
|
1267
|
+
surfaces: ['floor', 'wall'],
|
|
1229
1268
|
description: 'Ceramic flooring finish',
|
|
1230
|
-
previewThumbnailUrl: '/material/flooring/ceramic_mosaic/
|
|
1269
|
+
previewThumbnailUrl: '/material/flooring/ceramic_mosaic/ceramic_mosaic_thumb.webp',
|
|
1231
1270
|
preset: {
|
|
1232
1271
|
maps: {
|
|
1233
|
-
albedoMap: '/material/flooring/ceramic_mosaic/
|
|
1234
|
-
aoMap: '/material/flooring/ceramic_mosaic/
|
|
1235
|
-
metalnessMap: '/material/flooring/ceramic_mosaic/
|
|
1236
|
-
normalMap: '/material/flooring/ceramic_mosaic/
|
|
1237
|
-
roughnessMap: '/material/flooring/ceramic_mosaic/
|
|
1272
|
+
albedoMap: '/material/flooring/ceramic_mosaic/ceramic_mosaic_basecolor_512.ktx2',
|
|
1273
|
+
aoMap: '/material/flooring/ceramic_mosaic/ceramic_mosaic_ao_512.ktx2',
|
|
1274
|
+
metalnessMap: '/material/flooring/ceramic_mosaic/ceramic_mosaic_metallic_512.ktx2',
|
|
1275
|
+
normalMap: '/material/flooring/ceramic_mosaic/ceramic_mosaic_normal_512.ktx2',
|
|
1276
|
+
roughnessMap: '/material/flooring/ceramic_mosaic/ceramic_mosaic_roughness_512.ktx2',
|
|
1238
1277
|
},
|
|
1239
1278
|
mapProperties: {
|
|
1240
1279
|
color: '#ffffff',
|
|
@@ -1250,7 +1289,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1250
1289
|
emissiveIntensity: 1,
|
|
1251
1290
|
displacementScale: 0,
|
|
1252
1291
|
transparent: false,
|
|
1253
|
-
flipY:
|
|
1292
|
+
flipY: false,
|
|
1254
1293
|
bumpScale: 1,
|
|
1255
1294
|
emissiveColor: '#000000',
|
|
1256
1295
|
aoMapIntensity: 1,
|
|
@@ -1263,15 +1302,16 @@ export const MATERIAL_CATALOG = [
|
|
|
1263
1302
|
{
|
|
1264
1303
|
id: 'flooring-terrazzo19',
|
|
1265
1304
|
label: 'Terrazzo',
|
|
1266
|
-
category: '
|
|
1305
|
+
category: 'stone',
|
|
1306
|
+
surfaces: ['floor', 'wall'],
|
|
1267
1307
|
description: 'Terrazzo flooring finish',
|
|
1268
|
-
previewThumbnailUrl: '/material/flooring/terrazzo/
|
|
1308
|
+
previewThumbnailUrl: '/material/flooring/terrazzo/terrazzo_thumb.webp',
|
|
1269
1309
|
preset: {
|
|
1270
1310
|
maps: {
|
|
1271
|
-
albedoMap: '/material/flooring/terrazzo/
|
|
1272
|
-
metalnessMap: '/material/flooring/terrazzo/
|
|
1273
|
-
normalMap: '/material/flooring/terrazzo/
|
|
1274
|
-
roughnessMap: '/material/flooring/terrazzo/
|
|
1311
|
+
albedoMap: '/material/flooring/terrazzo/terrazzo_basecolor_512.ktx2',
|
|
1312
|
+
metalnessMap: '/material/flooring/terrazzo/terrazzo_metallic_512.ktx2',
|
|
1313
|
+
normalMap: '/material/flooring/terrazzo/terrazzo_normal_512.ktx2',
|
|
1314
|
+
roughnessMap: '/material/flooring/terrazzo/terrazzo_roughness_512.ktx2',
|
|
1275
1315
|
},
|
|
1276
1316
|
mapProperties: {
|
|
1277
1317
|
color: '#ffffff',
|
|
@@ -1287,7 +1327,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1287
1327
|
emissiveIntensity: 1,
|
|
1288
1328
|
displacementScale: 0,
|
|
1289
1329
|
transparent: false,
|
|
1290
|
-
flipY:
|
|
1330
|
+
flipY: false,
|
|
1291
1331
|
bumpScale: 1,
|
|
1292
1332
|
emissiveColor: '#000000',
|
|
1293
1333
|
aoMapIntensity: 1,
|
|
@@ -1300,15 +1340,16 @@ export const MATERIAL_CATALOG = [
|
|
|
1300
1340
|
{
|
|
1301
1341
|
id: 'flooring-tile79',
|
|
1302
1342
|
label: 'Stone Tile',
|
|
1303
|
-
category: '
|
|
1343
|
+
category: 'stone',
|
|
1344
|
+
surfaces: ['floor', 'wall'],
|
|
1304
1345
|
description: 'Floor tile finish',
|
|
1305
|
-
previewThumbnailUrl: '/material/flooring/tile_stone/
|
|
1346
|
+
previewThumbnailUrl: '/material/flooring/tile_stone/tile_stone_thumb.webp',
|
|
1306
1347
|
preset: {
|
|
1307
1348
|
maps: {
|
|
1308
|
-
albedoMap: '/material/flooring/tile_stone/
|
|
1309
|
-
aoMap: '/material/flooring/tile_stone/
|
|
1310
|
-
normalMap: '/material/flooring/tile_stone/
|
|
1311
|
-
roughnessMap: '/material/flooring/tile_stone/
|
|
1349
|
+
albedoMap: '/material/flooring/tile_stone/tile_stone_basecolor_512.ktx2',
|
|
1350
|
+
aoMap: '/material/flooring/tile_stone/tile_stone_ao_512.ktx2',
|
|
1351
|
+
normalMap: '/material/flooring/tile_stone/tile_stone_normal_512.ktx2',
|
|
1352
|
+
roughnessMap: '/material/flooring/tile_stone/tile_stone_roughness_512.ktx2',
|
|
1312
1353
|
},
|
|
1313
1354
|
mapProperties: {
|
|
1314
1355
|
color: '#ffffff',
|
|
@@ -1324,7 +1365,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1324
1365
|
emissiveIntensity: 1,
|
|
1325
1366
|
displacementScale: 0,
|
|
1326
1367
|
transparent: false,
|
|
1327
|
-
flipY:
|
|
1368
|
+
flipY: false,
|
|
1328
1369
|
bumpScale: 1,
|
|
1329
1370
|
emissiveColor: '#000000',
|
|
1330
1371
|
aoMapIntensity: 1,
|
|
@@ -1337,15 +1378,16 @@ export const MATERIAL_CATALOG = [
|
|
|
1337
1378
|
{
|
|
1338
1379
|
id: 'flooring-tile86',
|
|
1339
1380
|
label: 'Terracotta Tile',
|
|
1340
|
-
category: '
|
|
1381
|
+
category: 'tile',
|
|
1382
|
+
surfaces: ['floor'],
|
|
1341
1383
|
description: 'Floor tile finish',
|
|
1342
|
-
previewThumbnailUrl: '/material/flooring/tile_terracotta/
|
|
1384
|
+
previewThumbnailUrl: '/material/flooring/tile_terracotta/tile_terracotta_thumb.webp',
|
|
1343
1385
|
preset: {
|
|
1344
1386
|
maps: {
|
|
1345
|
-
albedoMap: '/material/flooring/tile_terracotta/
|
|
1346
|
-
aoMap: '/material/flooring/tile_terracotta/
|
|
1347
|
-
normalMap: '/material/flooring/tile_terracotta/
|
|
1348
|
-
roughnessMap: '/material/flooring/tile_terracotta/
|
|
1387
|
+
albedoMap: '/material/flooring/tile_terracotta/tile_terracotta_basecolor_512.ktx2',
|
|
1388
|
+
aoMap: '/material/flooring/tile_terracotta/tile_terracotta_ao_512.ktx2',
|
|
1389
|
+
normalMap: '/material/flooring/tile_terracotta/tile_terracotta_normal_512.ktx2',
|
|
1390
|
+
roughnessMap: '/material/flooring/tile_terracotta/tile_terracotta_roughness_512.ktx2',
|
|
1349
1391
|
},
|
|
1350
1392
|
mapProperties: {
|
|
1351
1393
|
color: '#ffffff',
|
|
@@ -1361,7 +1403,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1361
1403
|
emissiveIntensity: 1,
|
|
1362
1404
|
displacementScale: 0,
|
|
1363
1405
|
transparent: false,
|
|
1364
|
-
flipY:
|
|
1406
|
+
flipY: false,
|
|
1365
1407
|
bumpScale: 1,
|
|
1366
1408
|
emissiveColor: '#000000',
|
|
1367
1409
|
aoMapIntensity: 1,
|
|
@@ -1374,15 +1416,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1374
1416
|
{
|
|
1375
1417
|
id: 'flooring-greenquartzitea',
|
|
1376
1418
|
label: 'Green Quartzite A',
|
|
1377
|
-
category: '
|
|
1419
|
+
category: 'stone',
|
|
1420
|
+
surfaces: ['floor', 'wall'],
|
|
1378
1421
|
description: 'Green quartzite flooring finish',
|
|
1379
|
-
previewThumbnailUrl: '/material/flooring/green_glass_quartzite/
|
|
1422
|
+
previewThumbnailUrl: '/material/flooring/green_glass_quartzite/green_glass_quartzite_thumb.webp',
|
|
1380
1423
|
preset: {
|
|
1381
1424
|
maps: {
|
|
1382
|
-
albedoMap: '/material/flooring/green_glass_quartzite/
|
|
1383
|
-
aoMap: '/material/flooring/green_glass_quartzite/
|
|
1384
|
-
|
|
1385
|
-
normalMap: '/material/flooring/green_glass_quartzite/green_glass_quartzite_normal.jpg',
|
|
1425
|
+
albedoMap: '/material/flooring/green_glass_quartzite/green_glass_quartzite_basecolor_512.ktx2',
|
|
1426
|
+
aoMap: '/material/flooring/green_glass_quartzite/green_glass_quartzite_ao_512.ktx2',
|
|
1427
|
+
normalMap: '/material/flooring/green_glass_quartzite/green_glass_quartzite_normal_512.ktx2',
|
|
1386
1428
|
},
|
|
1387
1429
|
mapProperties: {
|
|
1388
1430
|
color: '#ffffff',
|
|
@@ -1398,7 +1440,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1398
1440
|
emissiveIntensity: 1,
|
|
1399
1441
|
displacementScale: 0,
|
|
1400
1442
|
transparent: false,
|
|
1401
|
-
flipY:
|
|
1443
|
+
flipY: false,
|
|
1402
1444
|
bumpScale: 1,
|
|
1403
1445
|
emissiveColor: '#000000',
|
|
1404
1446
|
aoMapIntensity: 1,
|
|
@@ -1411,16 +1453,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1411
1453
|
{
|
|
1412
1454
|
id: 'flooring-darkceramic22',
|
|
1413
1455
|
label: 'Dark Ceramic Grunge',
|
|
1414
|
-
category: '
|
|
1456
|
+
category: 'tile',
|
|
1457
|
+
surfaces: ['floor'],
|
|
1415
1458
|
description: 'Dark ceramic flooring finish',
|
|
1416
|
-
previewThumbnailUrl: '/material/flooring/dark_ceramic_grunge/
|
|
1459
|
+
previewThumbnailUrl: '/material/flooring/dark_ceramic_grunge/dark_ceramic_grunge_thumb.webp',
|
|
1417
1460
|
preset: {
|
|
1418
1461
|
maps: {
|
|
1419
|
-
albedoMap: '/material/flooring/dark_ceramic_grunge/
|
|
1420
|
-
aoMap: '/material/flooring/dark_ceramic_grunge/
|
|
1421
|
-
metalnessMap: '/material/flooring/dark_ceramic_grunge/
|
|
1422
|
-
normalMap: '/material/flooring/dark_ceramic_grunge/
|
|
1423
|
-
roughnessMap: '/material/flooring/dark_ceramic_grunge/
|
|
1462
|
+
albedoMap: '/material/flooring/dark_ceramic_grunge/dark_ceramic_grunge_basecolor_512.ktx2',
|
|
1463
|
+
aoMap: '/material/flooring/dark_ceramic_grunge/dark_ceramic_grunge_ao_512.ktx2',
|
|
1464
|
+
metalnessMap: '/material/flooring/dark_ceramic_grunge/dark_ceramic_grunge_metallic_512.ktx2',
|
|
1465
|
+
normalMap: '/material/flooring/dark_ceramic_grunge/dark_ceramic_grunge_normal_512.ktx2',
|
|
1466
|
+
roughnessMap: '/material/flooring/dark_ceramic_grunge/dark_ceramic_grunge_roughness_512.ktx2',
|
|
1424
1467
|
},
|
|
1425
1468
|
mapProperties: {
|
|
1426
1469
|
color: '#ffffff',
|
|
@@ -1436,7 +1479,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1436
1479
|
emissiveIntensity: 1,
|
|
1437
1480
|
displacementScale: 0,
|
|
1438
1481
|
transparent: false,
|
|
1439
|
-
flipY:
|
|
1482
|
+
flipY: false,
|
|
1440
1483
|
bumpScale: 1,
|
|
1441
1484
|
emissiveColor: '#000000',
|
|
1442
1485
|
aoMapIntensity: 1,
|
|
@@ -1449,16 +1492,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1449
1492
|
{
|
|
1450
1493
|
id: 'flooring-lightceramic24',
|
|
1451
1494
|
label: 'Light Ceramic Grunge',
|
|
1452
|
-
category: '
|
|
1495
|
+
category: 'tile',
|
|
1496
|
+
surfaces: ['floor'],
|
|
1453
1497
|
description: 'Light ceramic flooring finish',
|
|
1454
|
-
previewThumbnailUrl: '/material/flooring/light_ceramic_grunge/
|
|
1498
|
+
previewThumbnailUrl: '/material/flooring/light_ceramic_grunge/light_ceramic_grunge_thumb.webp',
|
|
1455
1499
|
preset: {
|
|
1456
1500
|
maps: {
|
|
1457
|
-
albedoMap: '/material/flooring/light_ceramic_grunge/
|
|
1458
|
-
aoMap: '/material/flooring/light_ceramic_grunge/
|
|
1459
|
-
metalnessMap: '/material/flooring/light_ceramic_grunge/
|
|
1460
|
-
normalMap: '/material/flooring/light_ceramic_grunge/
|
|
1461
|
-
roughnessMap: '/material/flooring/light_ceramic_grunge/
|
|
1501
|
+
albedoMap: '/material/flooring/light_ceramic_grunge/light_ceramic_grunge_basecolor_512.ktx2',
|
|
1502
|
+
aoMap: '/material/flooring/light_ceramic_grunge/light_ceramic_grunge_ao_512.ktx2',
|
|
1503
|
+
metalnessMap: '/material/flooring/light_ceramic_grunge/light_ceramic_grunge_metallic_512.ktx2',
|
|
1504
|
+
normalMap: '/material/flooring/light_ceramic_grunge/light_ceramic_grunge_normal_512.ktx2',
|
|
1505
|
+
roughnessMap: '/material/flooring/light_ceramic_grunge/light_ceramic_grunge_roughness_512.ktx2',
|
|
1462
1506
|
},
|
|
1463
1507
|
mapProperties: {
|
|
1464
1508
|
color: '#ffffff',
|
|
@@ -1474,7 +1518,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1474
1518
|
emissiveIntensity: 1,
|
|
1475
1519
|
displacementScale: 0,
|
|
1476
1520
|
transparent: false,
|
|
1477
|
-
flipY:
|
|
1521
|
+
flipY: false,
|
|
1478
1522
|
bumpScale: 1,
|
|
1479
1523
|
emissiveColor: '#000000',
|
|
1480
1524
|
aoMapIntensity: 1,
|
|
@@ -1487,15 +1531,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1487
1531
|
{
|
|
1488
1532
|
id: 'flooring-statuarettowhite',
|
|
1489
1533
|
label: 'Statuaretto White',
|
|
1490
|
-
category: '
|
|
1534
|
+
category: 'stone',
|
|
1535
|
+
surfaces: ['floor', 'wall'],
|
|
1491
1536
|
description: 'White marble flooring finish',
|
|
1492
|
-
previewThumbnailUrl: '/material/flooring/statuaretto/
|
|
1537
|
+
previewThumbnailUrl: '/material/flooring/statuaretto/statuaretto_thumb.webp',
|
|
1493
1538
|
preset: {
|
|
1494
1539
|
maps: {
|
|
1495
|
-
albedoMap: '/material/flooring/statuaretto/
|
|
1496
|
-
aoMap: '/material/flooring/statuaretto/
|
|
1497
|
-
|
|
1498
|
-
normalMap: '/material/flooring/statuaretto/statuaretto_normal.jpg',
|
|
1540
|
+
albedoMap: '/material/flooring/statuaretto/statuaretto_basecolor_512.ktx2',
|
|
1541
|
+
aoMap: '/material/flooring/statuaretto/statuaretto_ao_512.ktx2',
|
|
1542
|
+
normalMap: '/material/flooring/statuaretto/statuaretto_normal_512.ktx2',
|
|
1499
1543
|
},
|
|
1500
1544
|
mapProperties: {
|
|
1501
1545
|
color: '#ffffff',
|
|
@@ -1511,7 +1555,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1511
1555
|
emissiveIntensity: 1,
|
|
1512
1556
|
displacementScale: 0,
|
|
1513
1557
|
transparent: false,
|
|
1514
|
-
flipY:
|
|
1558
|
+
flipY: false,
|
|
1515
1559
|
bumpScale: 1,
|
|
1516
1560
|
emissiveColor: '#000000',
|
|
1517
1561
|
aoMapIntensity: 1,
|
|
@@ -1524,16 +1568,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1524
1568
|
{
|
|
1525
1569
|
id: 'flooring-tile20',
|
|
1526
1570
|
label: 'Mosaic Tile',
|
|
1527
|
-
category: '
|
|
1571
|
+
category: 'tile',
|
|
1572
|
+
surfaces: ['floor', 'wall'],
|
|
1528
1573
|
description: 'Floor tile finish',
|
|
1529
|
-
previewThumbnailUrl: '/material/flooring/tile_mosaic/
|
|
1574
|
+
previewThumbnailUrl: '/material/flooring/tile_mosaic/tile_mosaic_thumb.webp',
|
|
1530
1575
|
preset: {
|
|
1531
1576
|
maps: {
|
|
1532
|
-
albedoMap: '/material/flooring/tile_mosaic/
|
|
1533
|
-
aoMap: '/material/flooring/tile_mosaic/
|
|
1534
|
-
metalnessMap: '/material/flooring/tile_mosaic/
|
|
1535
|
-
normalMap: '/material/flooring/tile_mosaic/
|
|
1536
|
-
roughnessMap: '/material/flooring/tile_mosaic/
|
|
1577
|
+
albedoMap: '/material/flooring/tile_mosaic/tile_mosaic_basecolor_512.ktx2',
|
|
1578
|
+
aoMap: '/material/flooring/tile_mosaic/tile_mosaic_ao_512.ktx2',
|
|
1579
|
+
metalnessMap: '/material/flooring/tile_mosaic/tile_mosaic_metallic_512.ktx2',
|
|
1580
|
+
normalMap: '/material/flooring/tile_mosaic/tile_mosaic_normal_512.ktx2',
|
|
1581
|
+
roughnessMap: '/material/flooring/tile_mosaic/tile_mosaic_roughness_512.ktx2',
|
|
1537
1582
|
},
|
|
1538
1583
|
mapProperties: {
|
|
1539
1584
|
color: '#ffffff',
|
|
@@ -1549,7 +1594,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1549
1594
|
emissiveIntensity: 1,
|
|
1550
1595
|
displacementScale: 0,
|
|
1551
1596
|
transparent: false,
|
|
1552
|
-
flipY:
|
|
1597
|
+
flipY: false,
|
|
1553
1598
|
bumpScale: 1,
|
|
1554
1599
|
emissiveColor: '#000000',
|
|
1555
1600
|
aoMapIntensity: 1,
|
|
@@ -1562,16 +1607,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1562
1607
|
{
|
|
1563
1608
|
id: 'flooring-tile68',
|
|
1564
1609
|
label: 'Pattern Tile',
|
|
1565
|
-
category: '
|
|
1610
|
+
category: 'tile',
|
|
1611
|
+
surfaces: ['floor', 'wall'],
|
|
1566
1612
|
description: 'Floor tile finish',
|
|
1567
|
-
previewThumbnailUrl: '/material/flooring/tile_pattern/
|
|
1613
|
+
previewThumbnailUrl: '/material/flooring/tile_pattern/tile_pattern_thumb.webp',
|
|
1568
1614
|
preset: {
|
|
1569
1615
|
maps: {
|
|
1570
|
-
albedoMap: '/material/flooring/tile_pattern/
|
|
1571
|
-
aoMap: '/material/flooring/tile_pattern/
|
|
1572
|
-
metalnessMap: '/material/flooring/tile_pattern/
|
|
1573
|
-
normalMap: '/material/flooring/tile_pattern/
|
|
1574
|
-
roughnessMap: '/material/flooring/tile_pattern/
|
|
1616
|
+
albedoMap: '/material/flooring/tile_pattern/tile_pattern_basecolor_512.ktx2',
|
|
1617
|
+
aoMap: '/material/flooring/tile_pattern/tile_pattern_ao_512.ktx2',
|
|
1618
|
+
metalnessMap: '/material/flooring/tile_pattern/tile_pattern_metallic_512.ktx2',
|
|
1619
|
+
normalMap: '/material/flooring/tile_pattern/tile_pattern_normal_512.ktx2',
|
|
1620
|
+
roughnessMap: '/material/flooring/tile_pattern/tile_pattern_roughness_512.ktx2',
|
|
1575
1621
|
},
|
|
1576
1622
|
mapProperties: {
|
|
1577
1623
|
color: '#ffffff',
|
|
@@ -1587,7 +1633,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1587
1633
|
emissiveIntensity: 1,
|
|
1588
1634
|
displacementScale: 0,
|
|
1589
1635
|
transparent: false,
|
|
1590
|
-
flipY:
|
|
1636
|
+
flipY: false,
|
|
1591
1637
|
bumpScale: 1,
|
|
1592
1638
|
emissiveColor: '#000000',
|
|
1593
1639
|
aoMapIntensity: 1,
|
|
@@ -1600,15 +1646,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1600
1646
|
{
|
|
1601
1647
|
id: 'flooring-woodenceramic2',
|
|
1602
1648
|
label: 'Wooden Ceramic 2',
|
|
1603
|
-
category: '
|
|
1649
|
+
category: 'tile',
|
|
1650
|
+
surfaces: ['floor'],
|
|
1604
1651
|
description: 'Wood-look ceramic flooring finish',
|
|
1605
|
-
previewThumbnailUrl: '/material/flooring/wooden_ceramic_2/
|
|
1652
|
+
previewThumbnailUrl: '/material/flooring/wooden_ceramic_2/wooden_ceramic_2_thumb.webp',
|
|
1606
1653
|
preset: {
|
|
1607
1654
|
maps: {
|
|
1608
|
-
albedoMap: '/material/flooring/wooden_ceramic_2/
|
|
1609
|
-
aoMap: '/material/flooring/wooden_ceramic_2/
|
|
1610
|
-
|
|
1611
|
-
normalMap: '/material/flooring/wooden_ceramic_2/wooden_ceramic-normal.webp',
|
|
1655
|
+
albedoMap: '/material/flooring/wooden_ceramic_2/wooden_ceramic_2_basecolor_512.ktx2',
|
|
1656
|
+
aoMap: '/material/flooring/wooden_ceramic_2/wooden_ceramic_2_ao_512.ktx2',
|
|
1657
|
+
normalMap: '/material/flooring/wooden_ceramic_2/wooden_ceramic_2_normal_512.ktx2',
|
|
1612
1658
|
},
|
|
1613
1659
|
mapProperties: {
|
|
1614
1660
|
color: '#ffffff',
|
|
@@ -1624,7 +1670,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1624
1670
|
emissiveIntensity: 1,
|
|
1625
1671
|
displacementScale: 0,
|
|
1626
1672
|
transparent: false,
|
|
1627
|
-
flipY:
|
|
1673
|
+
flipY: false,
|
|
1628
1674
|
bumpScale: 1,
|
|
1629
1675
|
emissiveColor: '#000000',
|
|
1630
1676
|
aoMapIntensity: 1,
|
|
@@ -1637,16 +1683,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1637
1683
|
{
|
|
1638
1684
|
id: 'flooring-woodparquet76',
|
|
1639
1685
|
label: 'Wood Parquet',
|
|
1640
|
-
category: '
|
|
1686
|
+
category: 'wood',
|
|
1687
|
+
surfaces: ['floor'],
|
|
1641
1688
|
description: 'Wood parquet flooring finish',
|
|
1642
|
-
previewThumbnailUrl: '/material/flooring/woodparquet/
|
|
1689
|
+
previewThumbnailUrl: '/material/flooring/woodparquet/woodparquet_thumb.webp',
|
|
1643
1690
|
preset: {
|
|
1644
1691
|
maps: {
|
|
1645
|
-
albedoMap: '/material/flooring/woodparquet/
|
|
1646
|
-
aoMap: '/material/flooring/woodparquet/
|
|
1647
|
-
metalnessMap: '/material/flooring/woodparquet/
|
|
1648
|
-
normalMap: '/material/flooring/woodparquet/
|
|
1649
|
-
roughnessMap: '/material/flooring/woodparquet/
|
|
1692
|
+
albedoMap: '/material/flooring/woodparquet/woodparquet_basecolor_512.ktx2',
|
|
1693
|
+
aoMap: '/material/flooring/woodparquet/woodparquet_ao_512.ktx2',
|
|
1694
|
+
metalnessMap: '/material/flooring/woodparquet/woodparquet_metallic_512.ktx2',
|
|
1695
|
+
normalMap: '/material/flooring/woodparquet/woodparquet_normal_512.ktx2',
|
|
1696
|
+
roughnessMap: '/material/flooring/woodparquet/woodparquet_roughness_512.ktx2',
|
|
1650
1697
|
},
|
|
1651
1698
|
mapProperties: {
|
|
1652
1699
|
color: '#ffffff',
|
|
@@ -1662,7 +1709,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1662
1709
|
emissiveIntensity: 1,
|
|
1663
1710
|
displacementScale: 0,
|
|
1664
1711
|
transparent: false,
|
|
1665
|
-
flipY:
|
|
1712
|
+
flipY: false,
|
|
1666
1713
|
bumpScale: 1,
|
|
1667
1714
|
emissiveColor: '#000000',
|
|
1668
1715
|
aoMapIntensity: 1,
|
|
@@ -1675,16 +1722,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1675
1722
|
{
|
|
1676
1723
|
id: 'roof-classicshingles',
|
|
1677
1724
|
label: 'Classic Shingles',
|
|
1678
|
-
category: '
|
|
1725
|
+
category: 'roofing',
|
|
1726
|
+
surfaces: ['roof'],
|
|
1679
1727
|
description: 'Classic roof shingle finish',
|
|
1680
|
-
previewThumbnailUrl: '/material/roofing/roof_shingles_classic/
|
|
1728
|
+
previewThumbnailUrl: '/material/roofing/roof_shingles_classic/roof_shingles_classic_thumb.webp',
|
|
1681
1729
|
preset: {
|
|
1682
1730
|
maps: {
|
|
1683
|
-
albedoMap: '/material/roofing/roof_shingles_classic/
|
|
1684
|
-
aoMap: '/material/roofing/roof_shingles_classic/
|
|
1685
|
-
metalnessMap: '/material/roofing/roof_shingles_classic/
|
|
1686
|
-
normalMap: '/material/roofing/roof_shingles_classic/
|
|
1687
|
-
roughnessMap: '/material/roofing/roof_shingles_classic/
|
|
1731
|
+
albedoMap: '/material/roofing/roof_shingles_classic/roof_shingles_classic_basecolor_512.ktx2',
|
|
1732
|
+
aoMap: '/material/roofing/roof_shingles_classic/roof_shingles_classic_ao_512.ktx2',
|
|
1733
|
+
metalnessMap: '/material/roofing/roof_shingles_classic/roof_shingles_classic_metallic_512.ktx2',
|
|
1734
|
+
normalMap: '/material/roofing/roof_shingles_classic/roof_shingles_classic_normal_512.ktx2',
|
|
1735
|
+
roughnessMap: '/material/roofing/roof_shingles_classic/roof_shingles_classic_roughness_512.ktx2',
|
|
1688
1736
|
},
|
|
1689
1737
|
mapProperties: {
|
|
1690
1738
|
color: '#ffffff',
|
|
@@ -1700,7 +1748,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1700
1748
|
emissiveIntensity: 1,
|
|
1701
1749
|
displacementScale: 0,
|
|
1702
1750
|
transparent: false,
|
|
1703
|
-
flipY:
|
|
1751
|
+
flipY: false,
|
|
1704
1752
|
bumpScale: 1,
|
|
1705
1753
|
emissiveColor: '#000000',
|
|
1706
1754
|
aoMapIntensity: 1,
|
|
@@ -1713,16 +1761,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1713
1761
|
{
|
|
1714
1762
|
id: 'roof-claytiles',
|
|
1715
1763
|
label: 'Clay Tiles',
|
|
1716
|
-
category: '
|
|
1764
|
+
category: 'roofing',
|
|
1765
|
+
surfaces: ['roof'],
|
|
1717
1766
|
description: 'Clay roof tile finish',
|
|
1718
|
-
previewThumbnailUrl: '/material/roofing/roof_tiles_clay/
|
|
1767
|
+
previewThumbnailUrl: '/material/roofing/roof_tiles_clay/roof_tiles_clay_thumb.webp',
|
|
1719
1768
|
preset: {
|
|
1720
1769
|
maps: {
|
|
1721
|
-
albedoMap: '/material/roofing/roof_tiles_clay/
|
|
1722
|
-
aoMap: '/material/roofing/roof_tiles_clay/
|
|
1723
|
-
metalnessMap: '/material/roofing/roof_tiles_clay/
|
|
1724
|
-
normalMap: '/material/roofing/roof_tiles_clay/
|
|
1725
|
-
roughnessMap: '/material/roofing/roof_tiles_clay/
|
|
1770
|
+
albedoMap: '/material/roofing/roof_tiles_clay/roof_tiles_clay_basecolor_512.ktx2',
|
|
1771
|
+
aoMap: '/material/roofing/roof_tiles_clay/roof_tiles_clay_ao_512.ktx2',
|
|
1772
|
+
metalnessMap: '/material/roofing/roof_tiles_clay/roof_tiles_clay_metallic_512.ktx2',
|
|
1773
|
+
normalMap: '/material/roofing/roof_tiles_clay/roof_tiles_clay_normal_512.ktx2',
|
|
1774
|
+
roughnessMap: '/material/roofing/roof_tiles_clay/roof_tiles_clay_roughness_512.ktx2',
|
|
1726
1775
|
},
|
|
1727
1776
|
mapProperties: {
|
|
1728
1777
|
color: '#ffffff',
|
|
@@ -1738,7 +1787,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1738
1787
|
emissiveIntensity: 1,
|
|
1739
1788
|
displacementScale: 0,
|
|
1740
1789
|
transparent: false,
|
|
1741
|
-
flipY:
|
|
1790
|
+
flipY: false,
|
|
1742
1791
|
bumpScale: 1,
|
|
1743
1792
|
emissiveColor: '#000000',
|
|
1744
1793
|
aoMapIntensity: 1,
|
|
@@ -1751,16 +1800,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1751
1800
|
{
|
|
1752
1801
|
id: 'roof-terracottatiles',
|
|
1753
1802
|
label: 'Terracotta Tiles',
|
|
1754
|
-
category: '
|
|
1803
|
+
category: 'roofing',
|
|
1804
|
+
surfaces: ['roof'],
|
|
1755
1805
|
description: 'Terracotta roof tile finish',
|
|
1756
|
-
previewThumbnailUrl: '/material/roofing/roof_tiles_terracotta/
|
|
1806
|
+
previewThumbnailUrl: '/material/roofing/roof_tiles_terracotta/roof_tiles_terracotta_thumb.webp',
|
|
1757
1807
|
preset: {
|
|
1758
1808
|
maps: {
|
|
1759
|
-
albedoMap: '/material/roofing/roof_tiles_terracotta/
|
|
1760
|
-
aoMap: '/material/roofing/roof_tiles_terracotta/
|
|
1761
|
-
metalnessMap: '/material/roofing/roof_tiles_terracotta/
|
|
1762
|
-
normalMap: '/material/roofing/roof_tiles_terracotta/
|
|
1763
|
-
roughnessMap: '/material/roofing/roof_tiles_terracotta/
|
|
1809
|
+
albedoMap: '/material/roofing/roof_tiles_terracotta/roof_tiles_terracotta_basecolor_512.ktx2',
|
|
1810
|
+
aoMap: '/material/roofing/roof_tiles_terracotta/roof_tiles_terracotta_ao_512.ktx2',
|
|
1811
|
+
metalnessMap: '/material/roofing/roof_tiles_terracotta/roof_tiles_terracotta_metallic_512.ktx2',
|
|
1812
|
+
normalMap: '/material/roofing/roof_tiles_terracotta/roof_tiles_terracotta_normal_512.ktx2',
|
|
1813
|
+
roughnessMap: '/material/roofing/roof_tiles_terracotta/roof_tiles_terracotta_roughness_512.ktx2',
|
|
1764
1814
|
},
|
|
1765
1815
|
mapProperties: {
|
|
1766
1816
|
color: '#ffffff',
|
|
@@ -1776,7 +1826,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1776
1826
|
emissiveIntensity: 1,
|
|
1777
1827
|
displacementScale: 0,
|
|
1778
1828
|
transparent: false,
|
|
1779
|
-
flipY:
|
|
1829
|
+
flipY: false,
|
|
1780
1830
|
bumpScale: 1,
|
|
1781
1831
|
emissiveColor: '#000000',
|
|
1782
1832
|
aoMapIntensity: 1,
|
|
@@ -1789,16 +1839,17 @@ export const MATERIAL_CATALOG = [
|
|
|
1789
1839
|
{
|
|
1790
1840
|
id: 'roof-weatheredshingles',
|
|
1791
1841
|
label: 'Weathered Shingles',
|
|
1792
|
-
category: '
|
|
1842
|
+
category: 'roofing',
|
|
1843
|
+
surfaces: ['roof'],
|
|
1793
1844
|
description: 'Weathered roof shingle finish',
|
|
1794
|
-
previewThumbnailUrl: '/material/roofing/roof_shingles_weathered/
|
|
1845
|
+
previewThumbnailUrl: '/material/roofing/roof_shingles_weathered/roof_shingles_weathered_thumb.webp',
|
|
1795
1846
|
preset: {
|
|
1796
1847
|
maps: {
|
|
1797
|
-
albedoMap: '/material/roofing/roof_shingles_weathered/
|
|
1798
|
-
aoMap: '/material/roofing/roof_shingles_weathered/
|
|
1799
|
-
metalnessMap: '/material/roofing/roof_shingles_weathered/
|
|
1800
|
-
normalMap: '/material/roofing/roof_shingles_weathered/
|
|
1801
|
-
roughnessMap: '/material/roofing/roof_shingles_weathered/
|
|
1848
|
+
albedoMap: '/material/roofing/roof_shingles_weathered/roof_shingles_weathered_basecolor_512.ktx2',
|
|
1849
|
+
aoMap: '/material/roofing/roof_shingles_weathered/roof_shingles_weathered_ao_512.ktx2',
|
|
1850
|
+
metalnessMap: '/material/roofing/roof_shingles_weathered/roof_shingles_weathered_metallic_512.ktx2',
|
|
1851
|
+
normalMap: '/material/roofing/roof_shingles_weathered/roof_shingles_weathered_normal_512.ktx2',
|
|
1852
|
+
roughnessMap: '/material/roofing/roof_shingles_weathered/roof_shingles_weathered_roughness_512.ktx2',
|
|
1802
1853
|
},
|
|
1803
1854
|
mapProperties: {
|
|
1804
1855
|
color: '#ffffff',
|
|
@@ -1814,7 +1865,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1814
1865
|
emissiveIntensity: 1,
|
|
1815
1866
|
displacementScale: 0,
|
|
1816
1867
|
transparent: false,
|
|
1817
|
-
flipY:
|
|
1868
|
+
flipY: false,
|
|
1818
1869
|
bumpScale: 1,
|
|
1819
1870
|
emissiveColor: '#000000',
|
|
1820
1871
|
aoMapIntensity: 1,
|
|
@@ -1827,13 +1878,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1827
1878
|
{
|
|
1828
1879
|
id: 'preset-white',
|
|
1829
1880
|
label: 'White',
|
|
1830
|
-
category: '
|
|
1881
|
+
category: 'colors',
|
|
1831
1882
|
description: 'Clean painted finish',
|
|
1832
|
-
|
|
1883
|
+
// Real white paint reflects ~80%; a literal #ffffff albedo kills GI/shadow
|
|
1884
|
+
// contrast, so "white" is clamped to ≈0.83 linear.
|
|
1885
|
+
previewColor: '#e9e9e9',
|
|
1833
1886
|
preset: {
|
|
1834
1887
|
maps: {},
|
|
1835
1888
|
mapProperties: {
|
|
1836
|
-
color: '#
|
|
1889
|
+
color: '#e9e9e9',
|
|
1837
1890
|
roughness: 0.9,
|
|
1838
1891
|
metalness: 0,
|
|
1839
1892
|
repeatX: 1,
|
|
@@ -1859,13 +1912,13 @@ export const MATERIAL_CATALOG = [
|
|
|
1859
1912
|
{
|
|
1860
1913
|
id: 'preset-softwhite',
|
|
1861
1914
|
label: 'Soft White',
|
|
1862
|
-
category: '
|
|
1915
|
+
category: 'colors',
|
|
1863
1916
|
description: 'Warm off-white painted finish',
|
|
1864
|
-
previewColor: '#
|
|
1917
|
+
previewColor: '#ebe7df',
|
|
1865
1918
|
preset: {
|
|
1866
1919
|
maps: {},
|
|
1867
1920
|
mapProperties: {
|
|
1868
|
-
color: '#
|
|
1921
|
+
color: '#ebe7df',
|
|
1869
1922
|
roughness: 0.9,
|
|
1870
1923
|
metalness: 0,
|
|
1871
1924
|
repeatX: 1,
|
|
@@ -1891,7 +1944,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1891
1944
|
{
|
|
1892
1945
|
id: 'preset-cream',
|
|
1893
1946
|
label: 'Cream',
|
|
1894
|
-
category: '
|
|
1947
|
+
category: 'colors',
|
|
1895
1948
|
description: 'Soft cream painted finish',
|
|
1896
1949
|
previewColor: '#efe3cc',
|
|
1897
1950
|
preset: {
|
|
@@ -1923,7 +1976,7 @@ export const MATERIAL_CATALOG = [
|
|
|
1923
1976
|
{
|
|
1924
1977
|
id: 'preset-beige',
|
|
1925
1978
|
label: 'Beige',
|
|
1926
|
-
category: '
|
|
1979
|
+
category: 'colors',
|
|
1927
1980
|
description: 'Balanced beige painted finish',
|
|
1928
1981
|
previewColor: '#d9c7ad',
|
|
1929
1982
|
preset: {
|
|
@@ -1952,10 +2005,42 @@ export const MATERIAL_CATALOG = [
|
|
|
1952
2005
|
},
|
|
1953
2006
|
},
|
|
1954
2007
|
},
|
|
2008
|
+
{
|
|
2009
|
+
id: 'preset-lightgrey',
|
|
2010
|
+
label: 'Light grey',
|
|
2011
|
+
category: 'colors',
|
|
2012
|
+
description: 'Cool light grey painted finish',
|
|
2013
|
+
previewColor: '#d8d6d1',
|
|
2014
|
+
preset: {
|
|
2015
|
+
maps: {},
|
|
2016
|
+
mapProperties: {
|
|
2017
|
+
color: '#d8d6d1',
|
|
2018
|
+
roughness: 0.9,
|
|
2019
|
+
metalness: 0,
|
|
2020
|
+
repeatX: 1,
|
|
2021
|
+
repeatY: 1,
|
|
2022
|
+
rotation: 0,
|
|
2023
|
+
wrapS: 'Repeat',
|
|
2024
|
+
wrapT: 'Repeat',
|
|
2025
|
+
normalScaleX: 1,
|
|
2026
|
+
normalScaleY: 1,
|
|
2027
|
+
emissiveIntensity: 1,
|
|
2028
|
+
displacementScale: 0.02,
|
|
2029
|
+
transparent: false,
|
|
2030
|
+
flipY: true,
|
|
2031
|
+
bumpScale: 1,
|
|
2032
|
+
emissiveColor: '#000000',
|
|
2033
|
+
aoMapIntensity: 1,
|
|
2034
|
+
side: 0,
|
|
2035
|
+
opacity: 1,
|
|
2036
|
+
lightMapIntensity: 1,
|
|
2037
|
+
},
|
|
2038
|
+
},
|
|
2039
|
+
},
|
|
1955
2040
|
{
|
|
1956
2041
|
id: 'preset-greige',
|
|
1957
2042
|
label: 'Greige',
|
|
1958
|
-
category: '
|
|
2043
|
+
category: 'colors',
|
|
1959
2044
|
description: 'Neutral greige painted finish',
|
|
1960
2045
|
previewColor: '#c8c1b8',
|
|
1961
2046
|
preset: {
|
|
@@ -1985,15 +2070,15 @@ export const MATERIAL_CATALOG = [
|
|
|
1985
2070
|
},
|
|
1986
2071
|
},
|
|
1987
2072
|
{
|
|
1988
|
-
id: 'preset-
|
|
1989
|
-
label: '
|
|
1990
|
-
category: '
|
|
1991
|
-
description: '
|
|
1992
|
-
previewColor: '#
|
|
2073
|
+
id: 'preset-midgrey',
|
|
2074
|
+
label: 'Mid grey',
|
|
2075
|
+
category: 'colors',
|
|
2076
|
+
description: 'Neutral mid grey painted finish',
|
|
2077
|
+
previewColor: '#8b8a86',
|
|
1993
2078
|
preset: {
|
|
1994
2079
|
maps: {},
|
|
1995
2080
|
mapProperties: {
|
|
1996
|
-
color: '#
|
|
2081
|
+
color: '#8b8a86',
|
|
1997
2082
|
roughness: 0.9,
|
|
1998
2083
|
metalness: 0,
|
|
1999
2084
|
repeatX: 1,
|
|
@@ -2017,15 +2102,15 @@ export const MATERIAL_CATALOG = [
|
|
|
2017
2102
|
},
|
|
2018
2103
|
},
|
|
2019
2104
|
{
|
|
2020
|
-
id: 'preset-
|
|
2021
|
-
label: '
|
|
2022
|
-
category: '
|
|
2023
|
-
description: '
|
|
2024
|
-
previewColor: '#
|
|
2105
|
+
id: 'preset-charcoal',
|
|
2106
|
+
label: 'Charcoal',
|
|
2107
|
+
category: 'colors',
|
|
2108
|
+
description: 'Dark charcoal painted finish',
|
|
2109
|
+
previewColor: '#4e5257',
|
|
2025
2110
|
preset: {
|
|
2026
2111
|
maps: {},
|
|
2027
2112
|
mapProperties: {
|
|
2028
|
-
color: '#
|
|
2113
|
+
color: '#4e5257',
|
|
2029
2114
|
roughness: 0.9,
|
|
2030
2115
|
metalness: 0,
|
|
2031
2116
|
repeatX: 1,
|
|
@@ -2049,15 +2134,15 @@ export const MATERIAL_CATALOG = [
|
|
|
2049
2134
|
},
|
|
2050
2135
|
},
|
|
2051
2136
|
{
|
|
2052
|
-
id: 'preset-
|
|
2053
|
-
label: '
|
|
2054
|
-
category: '
|
|
2055
|
-
description: '
|
|
2056
|
-
previewColor: '#
|
|
2137
|
+
id: 'preset-nearblack',
|
|
2138
|
+
label: 'Near-black',
|
|
2139
|
+
category: 'colors',
|
|
2140
|
+
description: 'Soft near-black painted finish',
|
|
2141
|
+
previewColor: '#232322',
|
|
2057
2142
|
preset: {
|
|
2058
2143
|
maps: {},
|
|
2059
2144
|
mapProperties: {
|
|
2060
|
-
color: '#
|
|
2145
|
+
color: '#232322',
|
|
2061
2146
|
roughness: 0.9,
|
|
2062
2147
|
metalness: 0,
|
|
2063
2148
|
repeatX: 1,
|
|
@@ -2081,15 +2166,15 @@ export const MATERIAL_CATALOG = [
|
|
|
2081
2166
|
},
|
|
2082
2167
|
},
|
|
2083
2168
|
{
|
|
2084
|
-
id: 'preset-
|
|
2085
|
-
label: '
|
|
2086
|
-
category: '
|
|
2087
|
-
description: '
|
|
2088
|
-
previewColor: '#
|
|
2169
|
+
id: 'preset-blush',
|
|
2170
|
+
label: 'Blush',
|
|
2171
|
+
category: 'colors',
|
|
2172
|
+
description: 'Pale blush painted finish',
|
|
2173
|
+
previewColor: '#e8c6c0',
|
|
2089
2174
|
preset: {
|
|
2090
2175
|
maps: {},
|
|
2091
2176
|
mapProperties: {
|
|
2092
|
-
color: '#
|
|
2177
|
+
color: '#e8c6c0',
|
|
2093
2178
|
roughness: 0.9,
|
|
2094
2179
|
metalness: 0,
|
|
2095
2180
|
repeatX: 1,
|
|
@@ -2113,15 +2198,15 @@ export const MATERIAL_CATALOG = [
|
|
|
2113
2198
|
},
|
|
2114
2199
|
},
|
|
2115
2200
|
{
|
|
2116
|
-
id: 'preset-
|
|
2117
|
-
label: '
|
|
2118
|
-
category: '
|
|
2119
|
-
description: '
|
|
2120
|
-
previewColor: '#
|
|
2201
|
+
id: 'preset-tomato',
|
|
2202
|
+
label: 'Tomato',
|
|
2203
|
+
category: 'colors',
|
|
2204
|
+
description: 'Warm tomato red painted finish',
|
|
2205
|
+
previewColor: '#c0594f',
|
|
2121
2206
|
preset: {
|
|
2122
2207
|
maps: {},
|
|
2123
2208
|
mapProperties: {
|
|
2124
|
-
color: '#
|
|
2209
|
+
color: '#c0594f',
|
|
2125
2210
|
roughness: 0.9,
|
|
2126
2211
|
metalness: 0,
|
|
2127
2212
|
repeatX: 1,
|
|
@@ -2145,15 +2230,15 @@ export const MATERIAL_CATALOG = [
|
|
|
2145
2230
|
},
|
|
2146
2231
|
},
|
|
2147
2232
|
{
|
|
2148
|
-
id: 'preset-
|
|
2149
|
-
label: '
|
|
2150
|
-
category: '
|
|
2151
|
-
description: 'Deep
|
|
2152
|
-
previewColor: '#
|
|
2233
|
+
id: 'preset-brickred',
|
|
2234
|
+
label: 'Brick red',
|
|
2235
|
+
category: 'colors',
|
|
2236
|
+
description: 'Deep brick red painted finish',
|
|
2237
|
+
previewColor: '#9e3b34',
|
|
2153
2238
|
preset: {
|
|
2154
2239
|
maps: {},
|
|
2155
2240
|
mapProperties: {
|
|
2156
|
-
color: '#
|
|
2241
|
+
color: '#9e3b34',
|
|
2157
2242
|
roughness: 0.9,
|
|
2158
2243
|
metalness: 0,
|
|
2159
2244
|
repeatX: 1,
|
|
@@ -2177,15 +2262,15 @@ export const MATERIAL_CATALOG = [
|
|
|
2177
2262
|
},
|
|
2178
2263
|
},
|
|
2179
2264
|
{
|
|
2180
|
-
id: 'preset-
|
|
2181
|
-
label: '
|
|
2182
|
-
category: '
|
|
2183
|
-
description: '
|
|
2184
|
-
previewColor: '#
|
|
2265
|
+
id: 'preset-oxblood',
|
|
2266
|
+
label: 'Oxblood',
|
|
2267
|
+
category: 'colors',
|
|
2268
|
+
description: 'Dark oxblood painted finish',
|
|
2269
|
+
previewColor: '#6f2c2a',
|
|
2185
2270
|
preset: {
|
|
2186
2271
|
maps: {},
|
|
2187
2272
|
mapProperties: {
|
|
2188
|
-
color: '#
|
|
2273
|
+
color: '#6f2c2a',
|
|
2189
2274
|
roughness: 0.9,
|
|
2190
2275
|
metalness: 0,
|
|
2191
2276
|
repeatX: 1,
|
|
@@ -2209,15 +2294,15 @@ export const MATERIAL_CATALOG = [
|
|
|
2209
2294
|
},
|
|
2210
2295
|
},
|
|
2211
2296
|
{
|
|
2212
|
-
id: 'preset-
|
|
2213
|
-
label: '
|
|
2214
|
-
category: '
|
|
2215
|
-
description: '
|
|
2216
|
-
previewColor: '#
|
|
2297
|
+
id: 'preset-peach',
|
|
2298
|
+
label: 'Peach',
|
|
2299
|
+
category: 'colors',
|
|
2300
|
+
description: 'Soft peach painted finish',
|
|
2301
|
+
previewColor: '#f0c3a0',
|
|
2217
2302
|
preset: {
|
|
2218
2303
|
maps: {},
|
|
2219
2304
|
mapProperties: {
|
|
2220
|
-
color: '#
|
|
2305
|
+
color: '#f0c3a0',
|
|
2221
2306
|
roughness: 0.9,
|
|
2222
2307
|
metalness: 0,
|
|
2223
2308
|
repeatX: 1,
|
|
@@ -2241,15 +2326,15 @@ export const MATERIAL_CATALOG = [
|
|
|
2241
2326
|
},
|
|
2242
2327
|
},
|
|
2243
2328
|
{
|
|
2244
|
-
id: 'preset-
|
|
2245
|
-
label: '
|
|
2246
|
-
category: '
|
|
2247
|
-
description: 'Warm
|
|
2248
|
-
previewColor: '#
|
|
2329
|
+
id: 'preset-terracotta',
|
|
2330
|
+
label: 'Terracotta',
|
|
2331
|
+
category: 'colors',
|
|
2332
|
+
description: 'Warm terracotta painted finish',
|
|
2333
|
+
previewColor: '#c86f4c',
|
|
2249
2334
|
preset: {
|
|
2250
2335
|
maps: {},
|
|
2251
2336
|
mapProperties: {
|
|
2252
|
-
color: '#
|
|
2337
|
+
color: '#c86f4c',
|
|
2253
2338
|
roughness: 0.9,
|
|
2254
2339
|
metalness: 0,
|
|
2255
2340
|
repeatX: 1,
|
|
@@ -2273,15 +2358,15 @@ export const MATERIAL_CATALOG = [
|
|
|
2273
2358
|
},
|
|
2274
2359
|
},
|
|
2275
2360
|
{
|
|
2276
|
-
id: 'preset-
|
|
2277
|
-
label: '
|
|
2278
|
-
category: '
|
|
2279
|
-
description: '
|
|
2280
|
-
previewColor: '#
|
|
2361
|
+
id: 'preset-burntorange',
|
|
2362
|
+
label: 'Burnt orange',
|
|
2363
|
+
category: 'colors',
|
|
2364
|
+
description: 'Burnt orange painted finish',
|
|
2365
|
+
previewColor: '#b25a2c',
|
|
2281
2366
|
preset: {
|
|
2282
2367
|
maps: {},
|
|
2283
2368
|
mapProperties: {
|
|
2284
|
-
color: '#
|
|
2369
|
+
color: '#b25a2c',
|
|
2285
2370
|
roughness: 0.9,
|
|
2286
2371
|
metalness: 0,
|
|
2287
2372
|
repeatX: 1,
|
|
@@ -2305,17 +2390,17 @@ export const MATERIAL_CATALOG = [
|
|
|
2305
2390
|
},
|
|
2306
2391
|
},
|
|
2307
2392
|
{
|
|
2308
|
-
id: 'preset-
|
|
2309
|
-
label: '
|
|
2310
|
-
category: '
|
|
2311
|
-
description: '
|
|
2312
|
-
previewColor: '#
|
|
2393
|
+
id: 'preset-clay',
|
|
2394
|
+
label: 'Clay',
|
|
2395
|
+
category: 'colors',
|
|
2396
|
+
description: 'Deep clay painted finish',
|
|
2397
|
+
previewColor: '#8f4a2e',
|
|
2313
2398
|
preset: {
|
|
2314
2399
|
maps: {},
|
|
2315
2400
|
mapProperties: {
|
|
2316
|
-
color: '#
|
|
2317
|
-
roughness: 0.
|
|
2318
|
-
metalness: 0
|
|
2401
|
+
color: '#8f4a2e',
|
|
2402
|
+
roughness: 0.9,
|
|
2403
|
+
metalness: 0,
|
|
2319
2404
|
repeatX: 1,
|
|
2320
2405
|
repeatY: 1,
|
|
2321
2406
|
rotation: 0,
|
|
@@ -2337,17 +2422,17 @@ export const MATERIAL_CATALOG = [
|
|
|
2337
2422
|
},
|
|
2338
2423
|
},
|
|
2339
2424
|
{
|
|
2340
|
-
id: 'preset-
|
|
2341
|
-
label: '
|
|
2342
|
-
category: '
|
|
2343
|
-
description: '
|
|
2344
|
-
previewColor: '#
|
|
2425
|
+
id: 'preset-paleyellow',
|
|
2426
|
+
label: 'Pale yellow',
|
|
2427
|
+
category: 'colors',
|
|
2428
|
+
description: 'Pale yellow painted finish',
|
|
2429
|
+
previewColor: '#f2e3b3',
|
|
2345
2430
|
preset: {
|
|
2346
2431
|
maps: {},
|
|
2347
2432
|
mapProperties: {
|
|
2348
|
-
color: '#
|
|
2349
|
-
roughness: 0.
|
|
2350
|
-
metalness: 0
|
|
2433
|
+
color: '#f2e3b3',
|
|
2434
|
+
roughness: 0.9,
|
|
2435
|
+
metalness: 0,
|
|
2351
2436
|
repeatX: 1,
|
|
2352
2437
|
repeatY: 1,
|
|
2353
2438
|
rotation: 0,
|
|
@@ -2357,36 +2442,1743 @@ export const MATERIAL_CATALOG = [
|
|
|
2357
2442
|
normalScaleY: 1,
|
|
2358
2443
|
emissiveIntensity: 1,
|
|
2359
2444
|
displacementScale: 0.02,
|
|
2360
|
-
transparent:
|
|
2445
|
+
transparent: false,
|
|
2361
2446
|
flipY: true,
|
|
2362
2447
|
bumpScale: 1,
|
|
2363
2448
|
emissiveColor: '#000000',
|
|
2364
2449
|
aoMapIntensity: 1,
|
|
2365
|
-
side:
|
|
2366
|
-
opacity:
|
|
2450
|
+
side: 0,
|
|
2451
|
+
opacity: 1,
|
|
2367
2452
|
lightMapIntensity: 1,
|
|
2368
2453
|
},
|
|
2369
2454
|
},
|
|
2370
2455
|
},
|
|
2371
|
-
|
|
2372
|
-
|
|
2373
|
-
|
|
2374
|
-
|
|
2375
|
-
|
|
2376
|
-
|
|
2377
|
-
|
|
2378
|
-
|
|
2379
|
-
|
|
2380
|
-
|
|
2381
|
-
|
|
2382
|
-
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
2386
|
-
|
|
2387
|
-
|
|
2388
|
-
|
|
2389
|
-
|
|
2456
|
+
{
|
|
2457
|
+
id: 'preset-mustard',
|
|
2458
|
+
label: 'Mustard',
|
|
2459
|
+
category: 'colors',
|
|
2460
|
+
description: 'Warm mustard painted finish',
|
|
2461
|
+
previewColor: '#c8a449',
|
|
2462
|
+
preset: {
|
|
2463
|
+
maps: {},
|
|
2464
|
+
mapProperties: {
|
|
2465
|
+
color: '#c8a449',
|
|
2466
|
+
roughness: 0.9,
|
|
2467
|
+
metalness: 0,
|
|
2468
|
+
repeatX: 1,
|
|
2469
|
+
repeatY: 1,
|
|
2470
|
+
rotation: 0,
|
|
2471
|
+
wrapS: 'Repeat',
|
|
2472
|
+
wrapT: 'Repeat',
|
|
2473
|
+
normalScaleX: 1,
|
|
2474
|
+
normalScaleY: 1,
|
|
2475
|
+
emissiveIntensity: 1,
|
|
2476
|
+
displacementScale: 0.02,
|
|
2477
|
+
transparent: false,
|
|
2478
|
+
flipY: true,
|
|
2479
|
+
bumpScale: 1,
|
|
2480
|
+
emissiveColor: '#000000',
|
|
2481
|
+
aoMapIntensity: 1,
|
|
2482
|
+
side: 0,
|
|
2483
|
+
opacity: 1,
|
|
2484
|
+
lightMapIntensity: 1,
|
|
2485
|
+
},
|
|
2486
|
+
},
|
|
2487
|
+
},
|
|
2488
|
+
{
|
|
2489
|
+
id: 'preset-ochre',
|
|
2490
|
+
label: 'Ochre',
|
|
2491
|
+
category: 'colors',
|
|
2492
|
+
description: 'Warm ochre painted finish',
|
|
2493
|
+
previewColor: '#b8852f',
|
|
2494
|
+
preset: {
|
|
2495
|
+
maps: {},
|
|
2496
|
+
mapProperties: {
|
|
2497
|
+
color: '#b8852f',
|
|
2498
|
+
roughness: 0.9,
|
|
2499
|
+
metalness: 0,
|
|
2500
|
+
repeatX: 1,
|
|
2501
|
+
repeatY: 1,
|
|
2502
|
+
rotation: 0,
|
|
2503
|
+
wrapS: 'Repeat',
|
|
2504
|
+
wrapT: 'Repeat',
|
|
2505
|
+
normalScaleX: 1,
|
|
2506
|
+
normalScaleY: 1,
|
|
2507
|
+
emissiveIntensity: 1,
|
|
2508
|
+
displacementScale: 0.02,
|
|
2509
|
+
transparent: false,
|
|
2510
|
+
flipY: true,
|
|
2511
|
+
bumpScale: 1,
|
|
2512
|
+
emissiveColor: '#000000',
|
|
2513
|
+
aoMapIntensity: 1,
|
|
2514
|
+
side: 0,
|
|
2515
|
+
opacity: 1,
|
|
2516
|
+
lightMapIntensity: 1,
|
|
2517
|
+
},
|
|
2518
|
+
},
|
|
2519
|
+
},
|
|
2520
|
+
{
|
|
2521
|
+
id: 'preset-gold',
|
|
2522
|
+
label: 'Gold',
|
|
2523
|
+
category: 'colors',
|
|
2524
|
+
description: 'Deep gold painted finish',
|
|
2525
|
+
previewColor: '#9c7320',
|
|
2526
|
+
preset: {
|
|
2527
|
+
maps: {},
|
|
2528
|
+
mapProperties: {
|
|
2529
|
+
color: '#9c7320',
|
|
2530
|
+
roughness: 0.9,
|
|
2531
|
+
metalness: 0,
|
|
2532
|
+
repeatX: 1,
|
|
2533
|
+
repeatY: 1,
|
|
2534
|
+
rotation: 0,
|
|
2535
|
+
wrapS: 'Repeat',
|
|
2536
|
+
wrapT: 'Repeat',
|
|
2537
|
+
normalScaleX: 1,
|
|
2538
|
+
normalScaleY: 1,
|
|
2539
|
+
emissiveIntensity: 1,
|
|
2540
|
+
displacementScale: 0.02,
|
|
2541
|
+
transparent: false,
|
|
2542
|
+
flipY: true,
|
|
2543
|
+
bumpScale: 1,
|
|
2544
|
+
emissiveColor: '#000000',
|
|
2545
|
+
aoMapIntensity: 1,
|
|
2546
|
+
side: 0,
|
|
2547
|
+
opacity: 1,
|
|
2548
|
+
lightMapIntensity: 1,
|
|
2549
|
+
},
|
|
2550
|
+
},
|
|
2551
|
+
},
|
|
2552
|
+
{
|
|
2553
|
+
id: 'preset-mint',
|
|
2554
|
+
label: 'Mint',
|
|
2555
|
+
category: 'colors',
|
|
2556
|
+
description: 'Soft mint painted finish',
|
|
2557
|
+
previewColor: '#cfe0cf',
|
|
2558
|
+
preset: {
|
|
2559
|
+
maps: {},
|
|
2560
|
+
mapProperties: {
|
|
2561
|
+
color: '#cfe0cf',
|
|
2562
|
+
roughness: 0.9,
|
|
2563
|
+
metalness: 0,
|
|
2564
|
+
repeatX: 1,
|
|
2565
|
+
repeatY: 1,
|
|
2566
|
+
rotation: 0,
|
|
2567
|
+
wrapS: 'Repeat',
|
|
2568
|
+
wrapT: 'Repeat',
|
|
2569
|
+
normalScaleX: 1,
|
|
2570
|
+
normalScaleY: 1,
|
|
2571
|
+
emissiveIntensity: 1,
|
|
2572
|
+
displacementScale: 0.02,
|
|
2573
|
+
transparent: false,
|
|
2574
|
+
flipY: true,
|
|
2575
|
+
bumpScale: 1,
|
|
2576
|
+
emissiveColor: '#000000',
|
|
2577
|
+
aoMapIntensity: 1,
|
|
2578
|
+
side: 0,
|
|
2579
|
+
opacity: 1,
|
|
2580
|
+
lightMapIntensity: 1,
|
|
2581
|
+
},
|
|
2582
|
+
},
|
|
2583
|
+
},
|
|
2584
|
+
{
|
|
2585
|
+
id: 'preset-sage',
|
|
2586
|
+
label: 'Sage',
|
|
2587
|
+
category: 'colors',
|
|
2588
|
+
description: 'Muted sage painted finish',
|
|
2589
|
+
previewColor: '#bcc5b2',
|
|
2590
|
+
preset: {
|
|
2591
|
+
maps: {},
|
|
2592
|
+
mapProperties: {
|
|
2593
|
+
color: '#bcc5b2',
|
|
2594
|
+
roughness: 0.9,
|
|
2595
|
+
metalness: 0,
|
|
2596
|
+
repeatX: 1,
|
|
2597
|
+
repeatY: 1,
|
|
2598
|
+
rotation: 0,
|
|
2599
|
+
wrapS: 'Repeat',
|
|
2600
|
+
wrapT: 'Repeat',
|
|
2601
|
+
normalScaleX: 1,
|
|
2602
|
+
normalScaleY: 1,
|
|
2603
|
+
emissiveIntensity: 1,
|
|
2604
|
+
displacementScale: 0.02,
|
|
2605
|
+
transparent: false,
|
|
2606
|
+
flipY: true,
|
|
2607
|
+
bumpScale: 1,
|
|
2608
|
+
emissiveColor: '#000000',
|
|
2609
|
+
aoMapIntensity: 1,
|
|
2610
|
+
side: 0,
|
|
2611
|
+
opacity: 1,
|
|
2612
|
+
lightMapIntensity: 1,
|
|
2613
|
+
},
|
|
2614
|
+
},
|
|
2615
|
+
},
|
|
2616
|
+
{
|
|
2617
|
+
id: 'preset-olive',
|
|
2618
|
+
label: 'Olive',
|
|
2619
|
+
category: 'colors',
|
|
2620
|
+
description: 'Natural olive painted finish',
|
|
2621
|
+
previewColor: '#8d9368',
|
|
2622
|
+
preset: {
|
|
2623
|
+
maps: {},
|
|
2624
|
+
mapProperties: {
|
|
2625
|
+
color: '#8d9368',
|
|
2626
|
+
roughness: 0.9,
|
|
2627
|
+
metalness: 0,
|
|
2628
|
+
repeatX: 1,
|
|
2629
|
+
repeatY: 1,
|
|
2630
|
+
rotation: 0,
|
|
2631
|
+
wrapS: 'Repeat',
|
|
2632
|
+
wrapT: 'Repeat',
|
|
2633
|
+
normalScaleX: 1,
|
|
2634
|
+
normalScaleY: 1,
|
|
2635
|
+
emissiveIntensity: 1,
|
|
2636
|
+
displacementScale: 0.02,
|
|
2637
|
+
transparent: false,
|
|
2638
|
+
flipY: true,
|
|
2639
|
+
bumpScale: 1,
|
|
2640
|
+
emissiveColor: '#000000',
|
|
2641
|
+
aoMapIntensity: 1,
|
|
2642
|
+
side: 0,
|
|
2643
|
+
opacity: 1,
|
|
2644
|
+
lightMapIntensity: 1,
|
|
2645
|
+
},
|
|
2646
|
+
},
|
|
2647
|
+
},
|
|
2648
|
+
{
|
|
2649
|
+
id: 'preset-forest',
|
|
2650
|
+
label: 'Forest',
|
|
2651
|
+
category: 'colors',
|
|
2652
|
+
description: 'Deep forest green painted finish',
|
|
2653
|
+
previewColor: '#4f6b57',
|
|
2654
|
+
preset: {
|
|
2655
|
+
maps: {},
|
|
2656
|
+
mapProperties: {
|
|
2657
|
+
color: '#4f6b57',
|
|
2658
|
+
roughness: 0.9,
|
|
2659
|
+
metalness: 0,
|
|
2660
|
+
repeatX: 1,
|
|
2661
|
+
repeatY: 1,
|
|
2662
|
+
rotation: 0,
|
|
2663
|
+
wrapS: 'Repeat',
|
|
2664
|
+
wrapT: 'Repeat',
|
|
2665
|
+
normalScaleX: 1,
|
|
2666
|
+
normalScaleY: 1,
|
|
2667
|
+
emissiveIntensity: 1,
|
|
2668
|
+
displacementScale: 0.02,
|
|
2669
|
+
transparent: false,
|
|
2670
|
+
flipY: true,
|
|
2671
|
+
bumpScale: 1,
|
|
2672
|
+
emissiveColor: '#000000',
|
|
2673
|
+
aoMapIntensity: 1,
|
|
2674
|
+
side: 0,
|
|
2675
|
+
opacity: 1,
|
|
2676
|
+
lightMapIntensity: 1,
|
|
2677
|
+
},
|
|
2678
|
+
},
|
|
2679
|
+
},
|
|
2680
|
+
{
|
|
2681
|
+
id: 'preset-paleteal',
|
|
2682
|
+
label: 'Pale teal',
|
|
2683
|
+
category: 'colors',
|
|
2684
|
+
description: 'Pale teal painted finish',
|
|
2685
|
+
previewColor: '#b9d2cf',
|
|
2686
|
+
preset: {
|
|
2687
|
+
maps: {},
|
|
2688
|
+
mapProperties: {
|
|
2689
|
+
color: '#b9d2cf',
|
|
2690
|
+
roughness: 0.9,
|
|
2691
|
+
metalness: 0,
|
|
2692
|
+
repeatX: 1,
|
|
2693
|
+
repeatY: 1,
|
|
2694
|
+
rotation: 0,
|
|
2695
|
+
wrapS: 'Repeat',
|
|
2696
|
+
wrapT: 'Repeat',
|
|
2697
|
+
normalScaleX: 1,
|
|
2698
|
+
normalScaleY: 1,
|
|
2699
|
+
emissiveIntensity: 1,
|
|
2700
|
+
displacementScale: 0.02,
|
|
2701
|
+
transparent: false,
|
|
2702
|
+
flipY: true,
|
|
2703
|
+
bumpScale: 1,
|
|
2704
|
+
emissiveColor: '#000000',
|
|
2705
|
+
aoMapIntensity: 1,
|
|
2706
|
+
side: 0,
|
|
2707
|
+
opacity: 1,
|
|
2708
|
+
lightMapIntensity: 1,
|
|
2709
|
+
},
|
|
2710
|
+
},
|
|
2711
|
+
},
|
|
2712
|
+
{
|
|
2713
|
+
id: 'preset-teal',
|
|
2714
|
+
label: 'Teal',
|
|
2715
|
+
category: 'colors',
|
|
2716
|
+
description: 'Balanced teal painted finish',
|
|
2717
|
+
previewColor: '#4f8a86',
|
|
2718
|
+
preset: {
|
|
2719
|
+
maps: {},
|
|
2720
|
+
mapProperties: {
|
|
2721
|
+
color: '#4f8a86',
|
|
2722
|
+
roughness: 0.9,
|
|
2723
|
+
metalness: 0,
|
|
2724
|
+
repeatX: 1,
|
|
2725
|
+
repeatY: 1,
|
|
2726
|
+
rotation: 0,
|
|
2727
|
+
wrapS: 'Repeat',
|
|
2728
|
+
wrapT: 'Repeat',
|
|
2729
|
+
normalScaleX: 1,
|
|
2730
|
+
normalScaleY: 1,
|
|
2731
|
+
emissiveIntensity: 1,
|
|
2732
|
+
displacementScale: 0.02,
|
|
2733
|
+
transparent: false,
|
|
2734
|
+
flipY: true,
|
|
2735
|
+
bumpScale: 1,
|
|
2736
|
+
emissiveColor: '#000000',
|
|
2737
|
+
aoMapIntensity: 1,
|
|
2738
|
+
side: 0,
|
|
2739
|
+
opacity: 1,
|
|
2740
|
+
lightMapIntensity: 1,
|
|
2741
|
+
},
|
|
2742
|
+
},
|
|
2743
|
+
},
|
|
2744
|
+
{
|
|
2745
|
+
id: 'preset-deepteal',
|
|
2746
|
+
label: 'Deep teal',
|
|
2747
|
+
category: 'colors',
|
|
2748
|
+
description: 'Deep teal painted finish',
|
|
2749
|
+
previewColor: '#2f5f5c',
|
|
2750
|
+
preset: {
|
|
2751
|
+
maps: {},
|
|
2752
|
+
mapProperties: {
|
|
2753
|
+
color: '#2f5f5c',
|
|
2754
|
+
roughness: 0.9,
|
|
2755
|
+
metalness: 0,
|
|
2756
|
+
repeatX: 1,
|
|
2757
|
+
repeatY: 1,
|
|
2758
|
+
rotation: 0,
|
|
2759
|
+
wrapS: 'Repeat',
|
|
2760
|
+
wrapT: 'Repeat',
|
|
2761
|
+
normalScaleX: 1,
|
|
2762
|
+
normalScaleY: 1,
|
|
2763
|
+
emissiveIntensity: 1,
|
|
2764
|
+
displacementScale: 0.02,
|
|
2765
|
+
transparent: false,
|
|
2766
|
+
flipY: true,
|
|
2767
|
+
bumpScale: 1,
|
|
2768
|
+
emissiveColor: '#000000',
|
|
2769
|
+
aoMapIntensity: 1,
|
|
2770
|
+
side: 0,
|
|
2771
|
+
opacity: 1,
|
|
2772
|
+
lightMapIntensity: 1,
|
|
2773
|
+
},
|
|
2774
|
+
},
|
|
2775
|
+
},
|
|
2776
|
+
{
|
|
2777
|
+
id: 'preset-powderblue',
|
|
2778
|
+
label: 'Powder blue',
|
|
2779
|
+
category: 'colors',
|
|
2780
|
+
description: 'Powder blue painted finish',
|
|
2781
|
+
previewColor: '#cddce8',
|
|
2782
|
+
preset: {
|
|
2783
|
+
maps: {},
|
|
2784
|
+
mapProperties: {
|
|
2785
|
+
color: '#cddce8',
|
|
2786
|
+
roughness: 0.9,
|
|
2787
|
+
metalness: 0,
|
|
2788
|
+
repeatX: 1,
|
|
2789
|
+
repeatY: 1,
|
|
2790
|
+
rotation: 0,
|
|
2791
|
+
wrapS: 'Repeat',
|
|
2792
|
+
wrapT: 'Repeat',
|
|
2793
|
+
normalScaleX: 1,
|
|
2794
|
+
normalScaleY: 1,
|
|
2795
|
+
emissiveIntensity: 1,
|
|
2796
|
+
displacementScale: 0.02,
|
|
2797
|
+
transparent: false,
|
|
2798
|
+
flipY: true,
|
|
2799
|
+
bumpScale: 1,
|
|
2800
|
+
emissiveColor: '#000000',
|
|
2801
|
+
aoMapIntensity: 1,
|
|
2802
|
+
side: 0,
|
|
2803
|
+
opacity: 1,
|
|
2804
|
+
lightMapIntensity: 1,
|
|
2805
|
+
},
|
|
2806
|
+
},
|
|
2807
|
+
},
|
|
2808
|
+
{
|
|
2809
|
+
id: 'preset-softblue',
|
|
2810
|
+
label: 'Soft Blue',
|
|
2811
|
+
category: 'colors',
|
|
2812
|
+
description: 'Muted blue painted finish',
|
|
2813
|
+
previewColor: '#c7d6e3',
|
|
2814
|
+
preset: {
|
|
2815
|
+
maps: {},
|
|
2816
|
+
mapProperties: {
|
|
2817
|
+
color: '#c7d6e3',
|
|
2818
|
+
roughness: 0.9,
|
|
2819
|
+
metalness: 0,
|
|
2820
|
+
repeatX: 1,
|
|
2821
|
+
repeatY: 1,
|
|
2822
|
+
rotation: 0,
|
|
2823
|
+
wrapS: 'Repeat',
|
|
2824
|
+
wrapT: 'Repeat',
|
|
2825
|
+
normalScaleX: 1,
|
|
2826
|
+
normalScaleY: 1,
|
|
2827
|
+
emissiveIntensity: 1,
|
|
2828
|
+
displacementScale: 0.02,
|
|
2829
|
+
transparent: false,
|
|
2830
|
+
flipY: true,
|
|
2831
|
+
bumpScale: 1,
|
|
2832
|
+
emissiveColor: '#000000',
|
|
2833
|
+
aoMapIntensity: 1,
|
|
2834
|
+
side: 0,
|
|
2835
|
+
opacity: 1,
|
|
2836
|
+
lightMapIntensity: 1,
|
|
2837
|
+
},
|
|
2838
|
+
},
|
|
2839
|
+
},
|
|
2840
|
+
{
|
|
2841
|
+
id: 'preset-sky',
|
|
2842
|
+
label: 'Sky',
|
|
2843
|
+
category: 'colors',
|
|
2844
|
+
description: 'Sky blue painted finish',
|
|
2845
|
+
previewColor: '#8fb4d4',
|
|
2846
|
+
preset: {
|
|
2847
|
+
maps: {},
|
|
2848
|
+
mapProperties: {
|
|
2849
|
+
color: '#8fb4d4',
|
|
2850
|
+
roughness: 0.9,
|
|
2851
|
+
metalness: 0,
|
|
2852
|
+
repeatX: 1,
|
|
2853
|
+
repeatY: 1,
|
|
2854
|
+
rotation: 0,
|
|
2855
|
+
wrapS: 'Repeat',
|
|
2856
|
+
wrapT: 'Repeat',
|
|
2857
|
+
normalScaleX: 1,
|
|
2858
|
+
normalScaleY: 1,
|
|
2859
|
+
emissiveIntensity: 1,
|
|
2860
|
+
displacementScale: 0.02,
|
|
2861
|
+
transparent: false,
|
|
2862
|
+
flipY: true,
|
|
2863
|
+
bumpScale: 1,
|
|
2864
|
+
emissiveColor: '#000000',
|
|
2865
|
+
aoMapIntensity: 1,
|
|
2866
|
+
side: 0,
|
|
2867
|
+
opacity: 1,
|
|
2868
|
+
lightMapIntensity: 1,
|
|
2869
|
+
},
|
|
2870
|
+
},
|
|
2871
|
+
},
|
|
2872
|
+
{
|
|
2873
|
+
id: 'preset-slateblue',
|
|
2874
|
+
label: 'Slate Blue',
|
|
2875
|
+
category: 'colors',
|
|
2876
|
+
description: 'Muted slate blue painted finish',
|
|
2877
|
+
previewColor: '#6f87a4',
|
|
2878
|
+
preset: {
|
|
2879
|
+
maps: {},
|
|
2880
|
+
mapProperties: {
|
|
2881
|
+
color: '#6f87a4',
|
|
2882
|
+
roughness: 0.9,
|
|
2883
|
+
metalness: 0,
|
|
2884
|
+
repeatX: 1,
|
|
2885
|
+
repeatY: 1,
|
|
2886
|
+
rotation: 0,
|
|
2887
|
+
wrapS: 'Repeat',
|
|
2888
|
+
wrapT: 'Repeat',
|
|
2889
|
+
normalScaleX: 1,
|
|
2890
|
+
normalScaleY: 1,
|
|
2891
|
+
emissiveIntensity: 1,
|
|
2892
|
+
displacementScale: 0.02,
|
|
2893
|
+
transparent: false,
|
|
2894
|
+
flipY: true,
|
|
2895
|
+
bumpScale: 1,
|
|
2896
|
+
emissiveColor: '#000000',
|
|
2897
|
+
aoMapIntensity: 1,
|
|
2898
|
+
side: 0,
|
|
2899
|
+
opacity: 1,
|
|
2900
|
+
lightMapIntensity: 1,
|
|
2901
|
+
},
|
|
2902
|
+
},
|
|
2903
|
+
},
|
|
2904
|
+
{
|
|
2905
|
+
id: 'preset-royalblue',
|
|
2906
|
+
label: 'Royal blue',
|
|
2907
|
+
category: 'colors',
|
|
2908
|
+
description: 'Royal blue painted finish',
|
|
2909
|
+
previewColor: '#3a5a9c',
|
|
2910
|
+
preset: {
|
|
2911
|
+
maps: {},
|
|
2912
|
+
mapProperties: {
|
|
2913
|
+
color: '#3a5a9c',
|
|
2914
|
+
roughness: 0.9,
|
|
2915
|
+
metalness: 0,
|
|
2916
|
+
repeatX: 1,
|
|
2917
|
+
repeatY: 1,
|
|
2918
|
+
rotation: 0,
|
|
2919
|
+
wrapS: 'Repeat',
|
|
2920
|
+
wrapT: 'Repeat',
|
|
2921
|
+
normalScaleX: 1,
|
|
2922
|
+
normalScaleY: 1,
|
|
2923
|
+
emissiveIntensity: 1,
|
|
2924
|
+
displacementScale: 0.02,
|
|
2925
|
+
transparent: false,
|
|
2926
|
+
flipY: true,
|
|
2927
|
+
bumpScale: 1,
|
|
2928
|
+
emissiveColor: '#000000',
|
|
2929
|
+
aoMapIntensity: 1,
|
|
2930
|
+
side: 0,
|
|
2931
|
+
opacity: 1,
|
|
2932
|
+
lightMapIntensity: 1,
|
|
2933
|
+
},
|
|
2934
|
+
},
|
|
2935
|
+
},
|
|
2936
|
+
{
|
|
2937
|
+
id: 'preset-navy',
|
|
2938
|
+
label: 'Navy',
|
|
2939
|
+
category: 'colors',
|
|
2940
|
+
description: 'Classic navy painted finish',
|
|
2941
|
+
previewColor: '#2f4865',
|
|
2942
|
+
preset: {
|
|
2943
|
+
maps: {},
|
|
2944
|
+
mapProperties: {
|
|
2945
|
+
color: '#2f4865',
|
|
2946
|
+
roughness: 0.9,
|
|
2947
|
+
metalness: 0,
|
|
2948
|
+
repeatX: 1,
|
|
2949
|
+
repeatY: 1,
|
|
2950
|
+
rotation: 0,
|
|
2951
|
+
wrapS: 'Repeat',
|
|
2952
|
+
wrapT: 'Repeat',
|
|
2953
|
+
normalScaleX: 1,
|
|
2954
|
+
normalScaleY: 1,
|
|
2955
|
+
emissiveIntensity: 1,
|
|
2956
|
+
displacementScale: 0.02,
|
|
2957
|
+
transparent: false,
|
|
2958
|
+
flipY: true,
|
|
2959
|
+
bumpScale: 1,
|
|
2960
|
+
emissiveColor: '#000000',
|
|
2961
|
+
aoMapIntensity: 1,
|
|
2962
|
+
side: 0,
|
|
2963
|
+
opacity: 1,
|
|
2964
|
+
lightMapIntensity: 1,
|
|
2965
|
+
},
|
|
2966
|
+
},
|
|
2967
|
+
},
|
|
2968
|
+
{
|
|
2969
|
+
id: 'preset-lavender',
|
|
2970
|
+
label: 'Lavender',
|
|
2971
|
+
category: 'colors',
|
|
2972
|
+
description: 'Soft lavender painted finish',
|
|
2973
|
+
previewColor: '#c9c2da',
|
|
2974
|
+
preset: {
|
|
2975
|
+
maps: {},
|
|
2976
|
+
mapProperties: {
|
|
2977
|
+
color: '#c9c2da',
|
|
2978
|
+
roughness: 0.9,
|
|
2979
|
+
metalness: 0,
|
|
2980
|
+
repeatX: 1,
|
|
2981
|
+
repeatY: 1,
|
|
2982
|
+
rotation: 0,
|
|
2983
|
+
wrapS: 'Repeat',
|
|
2984
|
+
wrapT: 'Repeat',
|
|
2985
|
+
normalScaleX: 1,
|
|
2986
|
+
normalScaleY: 1,
|
|
2987
|
+
emissiveIntensity: 1,
|
|
2988
|
+
displacementScale: 0.02,
|
|
2989
|
+
transparent: false,
|
|
2990
|
+
flipY: true,
|
|
2991
|
+
bumpScale: 1,
|
|
2992
|
+
emissiveColor: '#000000',
|
|
2993
|
+
aoMapIntensity: 1,
|
|
2994
|
+
side: 0,
|
|
2995
|
+
opacity: 1,
|
|
2996
|
+
lightMapIntensity: 1,
|
|
2997
|
+
},
|
|
2998
|
+
},
|
|
2999
|
+
},
|
|
3000
|
+
{
|
|
3001
|
+
id: 'preset-plum',
|
|
3002
|
+
label: 'Plum',
|
|
3003
|
+
category: 'colors',
|
|
3004
|
+
description: 'Muted plum painted finish',
|
|
3005
|
+
previewColor: '#6d4a63',
|
|
3006
|
+
preset: {
|
|
3007
|
+
maps: {},
|
|
3008
|
+
mapProperties: {
|
|
3009
|
+
color: '#6d4a63',
|
|
3010
|
+
roughness: 0.9,
|
|
3011
|
+
metalness: 0,
|
|
3012
|
+
repeatX: 1,
|
|
3013
|
+
repeatY: 1,
|
|
3014
|
+
rotation: 0,
|
|
3015
|
+
wrapS: 'Repeat',
|
|
3016
|
+
wrapT: 'Repeat',
|
|
3017
|
+
normalScaleX: 1,
|
|
3018
|
+
normalScaleY: 1,
|
|
3019
|
+
emissiveIntensity: 1,
|
|
3020
|
+
displacementScale: 0.02,
|
|
3021
|
+
transparent: false,
|
|
3022
|
+
flipY: true,
|
|
3023
|
+
bumpScale: 1,
|
|
3024
|
+
emissiveColor: '#000000',
|
|
3025
|
+
aoMapIntensity: 1,
|
|
3026
|
+
side: 0,
|
|
3027
|
+
opacity: 1,
|
|
3028
|
+
lightMapIntensity: 1,
|
|
3029
|
+
},
|
|
3030
|
+
},
|
|
3031
|
+
},
|
|
3032
|
+
{
|
|
3033
|
+
id: 'preset-aubergine',
|
|
3034
|
+
label: 'Aubergine',
|
|
3035
|
+
category: 'colors',
|
|
3036
|
+
description: 'Deep aubergine painted finish',
|
|
3037
|
+
previewColor: '#594354',
|
|
3038
|
+
preset: {
|
|
3039
|
+
maps: {},
|
|
3040
|
+
mapProperties: {
|
|
3041
|
+
color: '#594354',
|
|
3042
|
+
roughness: 0.9,
|
|
3043
|
+
metalness: 0,
|
|
3044
|
+
repeatX: 1,
|
|
3045
|
+
repeatY: 1,
|
|
3046
|
+
rotation: 0,
|
|
3047
|
+
wrapS: 'Repeat',
|
|
3048
|
+
wrapT: 'Repeat',
|
|
3049
|
+
normalScaleX: 1,
|
|
3050
|
+
normalScaleY: 1,
|
|
3051
|
+
emissiveIntensity: 1,
|
|
3052
|
+
displacementScale: 0.02,
|
|
3053
|
+
transparent: false,
|
|
3054
|
+
flipY: true,
|
|
3055
|
+
bumpScale: 1,
|
|
3056
|
+
emissiveColor: '#000000',
|
|
3057
|
+
aoMapIntensity: 1,
|
|
3058
|
+
side: 0,
|
|
3059
|
+
opacity: 1,
|
|
3060
|
+
lightMapIntensity: 1,
|
|
3061
|
+
},
|
|
3062
|
+
},
|
|
3063
|
+
},
|
|
3064
|
+
{
|
|
3065
|
+
id: 'preset-petal',
|
|
3066
|
+
label: 'Petal',
|
|
3067
|
+
category: 'colors',
|
|
3068
|
+
description: 'Pale petal pink painted finish',
|
|
3069
|
+
previewColor: '#f0d3da',
|
|
3070
|
+
preset: {
|
|
3071
|
+
maps: {},
|
|
3072
|
+
mapProperties: {
|
|
3073
|
+
color: '#f0d3da',
|
|
3074
|
+
roughness: 0.9,
|
|
3075
|
+
metalness: 0,
|
|
3076
|
+
repeatX: 1,
|
|
3077
|
+
repeatY: 1,
|
|
3078
|
+
rotation: 0,
|
|
3079
|
+
wrapS: 'Repeat',
|
|
3080
|
+
wrapT: 'Repeat',
|
|
3081
|
+
normalScaleX: 1,
|
|
3082
|
+
normalScaleY: 1,
|
|
3083
|
+
emissiveIntensity: 1,
|
|
3084
|
+
displacementScale: 0.02,
|
|
3085
|
+
transparent: false,
|
|
3086
|
+
flipY: true,
|
|
3087
|
+
bumpScale: 1,
|
|
3088
|
+
emissiveColor: '#000000',
|
|
3089
|
+
aoMapIntensity: 1,
|
|
3090
|
+
side: 0,
|
|
3091
|
+
opacity: 1,
|
|
3092
|
+
lightMapIntensity: 1,
|
|
3093
|
+
},
|
|
3094
|
+
},
|
|
3095
|
+
},
|
|
3096
|
+
{
|
|
3097
|
+
id: 'preset-rose',
|
|
3098
|
+
label: 'Rose',
|
|
3099
|
+
category: 'colors',
|
|
3100
|
+
description: 'Muted rose painted finish',
|
|
3101
|
+
previewColor: '#cf8fa6',
|
|
3102
|
+
preset: {
|
|
3103
|
+
maps: {},
|
|
3104
|
+
mapProperties: {
|
|
3105
|
+
color: '#cf8fa6',
|
|
3106
|
+
roughness: 0.9,
|
|
3107
|
+
metalness: 0,
|
|
3108
|
+
repeatX: 1,
|
|
3109
|
+
repeatY: 1,
|
|
3110
|
+
rotation: 0,
|
|
3111
|
+
wrapS: 'Repeat',
|
|
3112
|
+
wrapT: 'Repeat',
|
|
3113
|
+
normalScaleX: 1,
|
|
3114
|
+
normalScaleY: 1,
|
|
3115
|
+
emissiveIntensity: 1,
|
|
3116
|
+
displacementScale: 0.02,
|
|
3117
|
+
transparent: false,
|
|
3118
|
+
flipY: true,
|
|
3119
|
+
bumpScale: 1,
|
|
3120
|
+
emissiveColor: '#000000',
|
|
3121
|
+
aoMapIntensity: 1,
|
|
3122
|
+
side: 0,
|
|
3123
|
+
opacity: 1,
|
|
3124
|
+
lightMapIntensity: 1,
|
|
3125
|
+
},
|
|
3126
|
+
},
|
|
3127
|
+
},
|
|
3128
|
+
{
|
|
3129
|
+
id: 'preset-dustyrose',
|
|
3130
|
+
label: 'Dusty Rose',
|
|
3131
|
+
category: 'colors',
|
|
3132
|
+
description: 'Muted rose painted finish',
|
|
3133
|
+
previewColor: '#c48a8d',
|
|
3134
|
+
preset: {
|
|
3135
|
+
maps: {},
|
|
3136
|
+
mapProperties: {
|
|
3137
|
+
color: '#c48a8d',
|
|
3138
|
+
roughness: 0.9,
|
|
3139
|
+
metalness: 0,
|
|
3140
|
+
repeatX: 1,
|
|
3141
|
+
repeatY: 1,
|
|
3142
|
+
rotation: 0,
|
|
3143
|
+
wrapS: 'Repeat',
|
|
3144
|
+
wrapT: 'Repeat',
|
|
3145
|
+
normalScaleX: 1,
|
|
3146
|
+
normalScaleY: 1,
|
|
3147
|
+
emissiveIntensity: 1,
|
|
3148
|
+
displacementScale: 0.02,
|
|
3149
|
+
transparent: false,
|
|
3150
|
+
flipY: true,
|
|
3151
|
+
bumpScale: 1,
|
|
3152
|
+
emissiveColor: '#000000',
|
|
3153
|
+
aoMapIntensity: 1,
|
|
3154
|
+
side: 0,
|
|
3155
|
+
opacity: 1,
|
|
3156
|
+
lightMapIntensity: 1,
|
|
3157
|
+
},
|
|
3158
|
+
},
|
|
3159
|
+
},
|
|
3160
|
+
{
|
|
3161
|
+
id: 'preset-berry',
|
|
3162
|
+
label: 'Berry',
|
|
3163
|
+
category: 'colors',
|
|
3164
|
+
description: 'Deep berry painted finish',
|
|
3165
|
+
previewColor: '#8f4a5a',
|
|
3166
|
+
preset: {
|
|
3167
|
+
maps: {},
|
|
3168
|
+
mapProperties: {
|
|
3169
|
+
color: '#8f4a5a',
|
|
3170
|
+
roughness: 0.9,
|
|
3171
|
+
metalness: 0,
|
|
3172
|
+
repeatX: 1,
|
|
3173
|
+
repeatY: 1,
|
|
3174
|
+
rotation: 0,
|
|
3175
|
+
wrapS: 'Repeat',
|
|
3176
|
+
wrapT: 'Repeat',
|
|
3177
|
+
normalScaleX: 1,
|
|
3178
|
+
normalScaleY: 1,
|
|
3179
|
+
emissiveIntensity: 1,
|
|
3180
|
+
displacementScale: 0.02,
|
|
3181
|
+
transparent: false,
|
|
3182
|
+
flipY: true,
|
|
3183
|
+
bumpScale: 1,
|
|
3184
|
+
emissiveColor: '#000000',
|
|
3185
|
+
aoMapIntensity: 1,
|
|
3186
|
+
side: 0,
|
|
3187
|
+
opacity: 1,
|
|
3188
|
+
lightMapIntensity: 1,
|
|
3189
|
+
},
|
|
3190
|
+
},
|
|
3191
|
+
},
|
|
3192
|
+
{
|
|
3193
|
+
id: 'preset-sand',
|
|
3194
|
+
label: 'Sand',
|
|
3195
|
+
category: 'colors',
|
|
3196
|
+
description: 'Warm sand painted finish',
|
|
3197
|
+
previewColor: '#ddccae',
|
|
3198
|
+
preset: {
|
|
3199
|
+
maps: {},
|
|
3200
|
+
mapProperties: {
|
|
3201
|
+
color: '#ddccae',
|
|
3202
|
+
roughness: 0.9,
|
|
3203
|
+
metalness: 0,
|
|
3204
|
+
repeatX: 1,
|
|
3205
|
+
repeatY: 1,
|
|
3206
|
+
rotation: 0,
|
|
3207
|
+
wrapS: 'Repeat',
|
|
3208
|
+
wrapT: 'Repeat',
|
|
3209
|
+
normalScaleX: 1,
|
|
3210
|
+
normalScaleY: 1,
|
|
3211
|
+
emissiveIntensity: 1,
|
|
3212
|
+
displacementScale: 0.02,
|
|
3213
|
+
transparent: false,
|
|
3214
|
+
flipY: true,
|
|
3215
|
+
bumpScale: 1,
|
|
3216
|
+
emissiveColor: '#000000',
|
|
3217
|
+
aoMapIntensity: 1,
|
|
3218
|
+
side: 0,
|
|
3219
|
+
opacity: 1,
|
|
3220
|
+
lightMapIntensity: 1,
|
|
3221
|
+
},
|
|
3222
|
+
},
|
|
3223
|
+
},
|
|
3224
|
+
{
|
|
3225
|
+
id: 'preset-tan',
|
|
3226
|
+
label: 'Tan',
|
|
3227
|
+
category: 'colors',
|
|
3228
|
+
description: 'Natural tan painted finish',
|
|
3229
|
+
previewColor: '#c4a87f',
|
|
3230
|
+
preset: {
|
|
3231
|
+
maps: {},
|
|
3232
|
+
mapProperties: {
|
|
3233
|
+
color: '#c4a87f',
|
|
3234
|
+
roughness: 0.9,
|
|
3235
|
+
metalness: 0,
|
|
3236
|
+
repeatX: 1,
|
|
3237
|
+
repeatY: 1,
|
|
3238
|
+
rotation: 0,
|
|
3239
|
+
wrapS: 'Repeat',
|
|
3240
|
+
wrapT: 'Repeat',
|
|
3241
|
+
normalScaleX: 1,
|
|
3242
|
+
normalScaleY: 1,
|
|
3243
|
+
emissiveIntensity: 1,
|
|
3244
|
+
displacementScale: 0.02,
|
|
3245
|
+
transparent: false,
|
|
3246
|
+
flipY: true,
|
|
3247
|
+
bumpScale: 1,
|
|
3248
|
+
emissiveColor: '#000000',
|
|
3249
|
+
aoMapIntensity: 1,
|
|
3250
|
+
side: 0,
|
|
3251
|
+
opacity: 1,
|
|
3252
|
+
lightMapIntensity: 1,
|
|
3253
|
+
},
|
|
3254
|
+
},
|
|
3255
|
+
},
|
|
3256
|
+
{
|
|
3257
|
+
id: 'preset-taupe',
|
|
3258
|
+
label: 'Taupe',
|
|
3259
|
+
category: 'colors',
|
|
3260
|
+
description: 'Earthy taupe painted finish',
|
|
3261
|
+
previewColor: '#8f7a64',
|
|
3262
|
+
preset: {
|
|
3263
|
+
maps: {},
|
|
3264
|
+
mapProperties: {
|
|
3265
|
+
color: '#8f7a64',
|
|
3266
|
+
roughness: 0.9,
|
|
3267
|
+
metalness: 0,
|
|
3268
|
+
repeatX: 1,
|
|
3269
|
+
repeatY: 1,
|
|
3270
|
+
rotation: 0,
|
|
3271
|
+
wrapS: 'Repeat',
|
|
3272
|
+
wrapT: 'Repeat',
|
|
3273
|
+
normalScaleX: 1,
|
|
3274
|
+
normalScaleY: 1,
|
|
3275
|
+
emissiveIntensity: 1,
|
|
3276
|
+
displacementScale: 0.02,
|
|
3277
|
+
transparent: false,
|
|
3278
|
+
flipY: true,
|
|
3279
|
+
bumpScale: 1,
|
|
3280
|
+
emissiveColor: '#000000',
|
|
3281
|
+
aoMapIntensity: 1,
|
|
3282
|
+
side: 0,
|
|
3283
|
+
opacity: 1,
|
|
3284
|
+
lightMapIntensity: 1,
|
|
3285
|
+
},
|
|
3286
|
+
},
|
|
3287
|
+
},
|
|
3288
|
+
{
|
|
3289
|
+
id: 'preset-espresso',
|
|
3290
|
+
label: 'Espresso',
|
|
3291
|
+
category: 'colors',
|
|
3292
|
+
description: 'Dark espresso painted finish',
|
|
3293
|
+
previewColor: '#4a382c',
|
|
3294
|
+
preset: {
|
|
3295
|
+
maps: {},
|
|
3296
|
+
mapProperties: {
|
|
3297
|
+
color: '#4a382c',
|
|
3298
|
+
roughness: 0.9,
|
|
3299
|
+
metalness: 0,
|
|
3300
|
+
repeatX: 1,
|
|
3301
|
+
repeatY: 1,
|
|
3302
|
+
rotation: 0,
|
|
3303
|
+
wrapS: 'Repeat',
|
|
3304
|
+
wrapT: 'Repeat',
|
|
3305
|
+
normalScaleX: 1,
|
|
3306
|
+
normalScaleY: 1,
|
|
3307
|
+
emissiveIntensity: 1,
|
|
3308
|
+
displacementScale: 0.02,
|
|
3309
|
+
transparent: false,
|
|
3310
|
+
flipY: true,
|
|
3311
|
+
bumpScale: 1,
|
|
3312
|
+
emissiveColor: '#000000',
|
|
3313
|
+
aoMapIntensity: 1,
|
|
3314
|
+
side: 0,
|
|
3315
|
+
opacity: 1,
|
|
3316
|
+
lightMapIntensity: 1,
|
|
3317
|
+
},
|
|
3318
|
+
},
|
|
3319
|
+
},
|
|
3320
|
+
{
|
|
3321
|
+
id: 'preset-metal',
|
|
3322
|
+
label: 'Metal',
|
|
3323
|
+
category: 'metal',
|
|
3324
|
+
surfaces: ['furniture', 'wall'],
|
|
3325
|
+
description: 'Brushed metal finish',
|
|
3326
|
+
previewColor: '#c0c0c0',
|
|
3327
|
+
preset: {
|
|
3328
|
+
maps: {},
|
|
3329
|
+
mapProperties: {
|
|
3330
|
+
color: '#c7ccd2',
|
|
3331
|
+
roughness: 0.26,
|
|
3332
|
+
metalness: 0.82,
|
|
3333
|
+
repeatX: 1,
|
|
3334
|
+
repeatY: 1,
|
|
3335
|
+
rotation: 0,
|
|
3336
|
+
wrapS: 'Repeat',
|
|
3337
|
+
wrapT: 'Repeat',
|
|
3338
|
+
normalScaleX: 1,
|
|
3339
|
+
normalScaleY: 1,
|
|
3340
|
+
emissiveIntensity: 1,
|
|
3341
|
+
displacementScale: 0.02,
|
|
3342
|
+
transparent: false,
|
|
3343
|
+
flipY: true,
|
|
3344
|
+
bumpScale: 1,
|
|
3345
|
+
emissiveColor: '#000000',
|
|
3346
|
+
aoMapIntensity: 1,
|
|
3347
|
+
side: 0,
|
|
3348
|
+
opacity: 1,
|
|
3349
|
+
lightMapIntensity: 1,
|
|
3350
|
+
},
|
|
3351
|
+
},
|
|
3352
|
+
},
|
|
3353
|
+
{
|
|
3354
|
+
id: 'preset-glass',
|
|
3355
|
+
label: 'Glass',
|
|
3356
|
+
category: 'glass',
|
|
3357
|
+
description: 'Light glass finish',
|
|
3358
|
+
previewColor: '#87ceeb',
|
|
3359
|
+
preset: {
|
|
3360
|
+
maps: {},
|
|
3361
|
+
mapProperties: {
|
|
3362
|
+
color: '#87ceeb',
|
|
3363
|
+
roughness: 0.1,
|
|
3364
|
+
metalness: 0.1,
|
|
3365
|
+
repeatX: 1,
|
|
3366
|
+
repeatY: 1,
|
|
3367
|
+
rotation: 0,
|
|
3368
|
+
wrapS: 'Repeat',
|
|
3369
|
+
wrapT: 'Repeat',
|
|
3370
|
+
normalScaleX: 1,
|
|
3371
|
+
normalScaleY: 1,
|
|
3372
|
+
emissiveIntensity: 1,
|
|
3373
|
+
displacementScale: 0.02,
|
|
3374
|
+
transparent: true,
|
|
3375
|
+
flipY: true,
|
|
3376
|
+
bumpScale: 1,
|
|
3377
|
+
emissiveColor: '#000000',
|
|
3378
|
+
aoMapIntensity: 1,
|
|
3379
|
+
// FrontSide — DoubleSide on a NodeMaterial poisons the WebGPU MRT scene
|
|
3380
|
+
// pass (window/door glass relies on this). It's the only glass we use.
|
|
3381
|
+
side: 0,
|
|
3382
|
+
opacity: 0.3,
|
|
3383
|
+
lightMapIntensity: 1,
|
|
3384
|
+
},
|
|
3385
|
+
},
|
|
3386
|
+
},
|
|
3387
|
+
{
|
|
3388
|
+
id: 'fabric-linen',
|
|
3389
|
+
label: 'Linen',
|
|
3390
|
+
category: 'fabric',
|
|
3391
|
+
surfaces: ['furniture', 'wall'],
|
|
3392
|
+
description: 'Natural linen weave',
|
|
3393
|
+
previewThumbnailUrl: '/material/fabric/linen_hikari_fabric/linen_hikari_fabric_thumb.webp',
|
|
3394
|
+
preset: {
|
|
3395
|
+
maps: {
|
|
3396
|
+
albedoMap: '/material/fabric/linen_hikari_fabric/linen_hikari_fabric_basecolor_512.ktx2',
|
|
3397
|
+
normalMap: '/material/fabric/linen_hikari_fabric/linen_hikari_fabric_normal_512.ktx2',
|
|
3398
|
+
},
|
|
3399
|
+
mapProperties: {
|
|
3400
|
+
color: '#ffffff',
|
|
3401
|
+
roughness: 0.85,
|
|
3402
|
+
metalness: 0,
|
|
3403
|
+
repeatX: 2,
|
|
3404
|
+
repeatY: 2,
|
|
3405
|
+
rotation: 0,
|
|
3406
|
+
wrapS: 'Repeat',
|
|
3407
|
+
wrapT: 'Repeat',
|
|
3408
|
+
normalScaleX: 1,
|
|
3409
|
+
normalScaleY: 1,
|
|
3410
|
+
emissiveIntensity: 1,
|
|
3411
|
+
displacementScale: 0,
|
|
3412
|
+
transparent: false,
|
|
3413
|
+
flipY: false,
|
|
3414
|
+
bumpScale: 1,
|
|
3415
|
+
emissiveColor: '#000000',
|
|
3416
|
+
aoMapIntensity: 1,
|
|
3417
|
+
side: 0,
|
|
3418
|
+
opacity: 1,
|
|
3419
|
+
lightMapIntensity: 1,
|
|
3420
|
+
},
|
|
3421
|
+
},
|
|
3422
|
+
},
|
|
3423
|
+
{
|
|
3424
|
+
id: 'fabric-cotton',
|
|
3425
|
+
label: 'Cotton',
|
|
3426
|
+
category: 'fabric',
|
|
3427
|
+
surfaces: ['furniture', 'wall'],
|
|
3428
|
+
description: 'Plain cotton weave',
|
|
3429
|
+
previewThumbnailUrl: '/material/fabric/blue_cotton/blue_cotton_thumb.webp',
|
|
3430
|
+
preset: {
|
|
3431
|
+
maps: {
|
|
3432
|
+
albedoMap: '/material/fabric/blue_cotton/blue_cotton_basecolor_512.ktx2',
|
|
3433
|
+
normalMap: '/material/fabric/blue_cotton/blue_cotton_normal_512.ktx2',
|
|
3434
|
+
roughnessMap: '/material/fabric/blue_cotton/blue_cotton_roughness_512.ktx2',
|
|
3435
|
+
aoMap: '/material/fabric/blue_cotton/blue_cotton_ao_512.ktx2',
|
|
3436
|
+
},
|
|
3437
|
+
mapProperties: {
|
|
3438
|
+
color: '#ffffff',
|
|
3439
|
+
roughness: 0.85,
|
|
3440
|
+
metalness: 0,
|
|
3441
|
+
repeatX: 2,
|
|
3442
|
+
repeatY: 2,
|
|
3443
|
+
rotation: 0,
|
|
3444
|
+
wrapS: 'Repeat',
|
|
3445
|
+
wrapT: 'Repeat',
|
|
3446
|
+
normalScaleX: 1,
|
|
3447
|
+
normalScaleY: 1,
|
|
3448
|
+
emissiveIntensity: 1,
|
|
3449
|
+
displacementScale: 0,
|
|
3450
|
+
transparent: false,
|
|
3451
|
+
flipY: false,
|
|
3452
|
+
bumpScale: 1,
|
|
3453
|
+
emissiveColor: '#000000',
|
|
3454
|
+
aoMapIntensity: 1,
|
|
3455
|
+
side: 0,
|
|
3456
|
+
opacity: 1,
|
|
3457
|
+
lightMapIntensity: 1,
|
|
3458
|
+
},
|
|
3459
|
+
},
|
|
3460
|
+
},
|
|
3461
|
+
{
|
|
3462
|
+
id: 'fabric-velvet',
|
|
3463
|
+
label: 'Velvet',
|
|
3464
|
+
category: 'fabric',
|
|
3465
|
+
surfaces: ['furniture'],
|
|
3466
|
+
description: 'Velvet with a soft sheen',
|
|
3467
|
+
previewThumbnailUrl: '/material/fabric/red_velvet/red_velvet_thumb.webp',
|
|
3468
|
+
preset: {
|
|
3469
|
+
maps: {
|
|
3470
|
+
albedoMap: '/material/fabric/red_velvet/red_velvet_basecolor_512.ktx2',
|
|
3471
|
+
normalMap: '/material/fabric/red_velvet/red_velvet_normal_512.ktx2',
|
|
3472
|
+
roughnessMap: '/material/fabric/red_velvet/red_velvet_roughness_512.ktx2',
|
|
3473
|
+
aoMap: '/material/fabric/red_velvet/red_velvet_ao_512.ktx2',
|
|
3474
|
+
},
|
|
3475
|
+
mapProperties: {
|
|
3476
|
+
color: '#ffffff',
|
|
3477
|
+
roughness: 0.6,
|
|
3478
|
+
metalness: 0,
|
|
3479
|
+
repeatX: 2.5,
|
|
3480
|
+
repeatY: 2.5,
|
|
3481
|
+
rotation: 0,
|
|
3482
|
+
wrapS: 'Repeat',
|
|
3483
|
+
wrapT: 'Repeat',
|
|
3484
|
+
normalScaleX: 1,
|
|
3485
|
+
normalScaleY: 1,
|
|
3486
|
+
emissiveIntensity: 1,
|
|
3487
|
+
displacementScale: 0,
|
|
3488
|
+
transparent: false,
|
|
3489
|
+
flipY: false,
|
|
3490
|
+
bumpScale: 1,
|
|
3491
|
+
emissiveColor: '#000000',
|
|
3492
|
+
aoMapIntensity: 1,
|
|
3493
|
+
side: 0,
|
|
3494
|
+
opacity: 1,
|
|
3495
|
+
lightMapIntensity: 1,
|
|
3496
|
+
},
|
|
3497
|
+
},
|
|
3498
|
+
},
|
|
3499
|
+
{
|
|
3500
|
+
id: 'fabric-wool',
|
|
3501
|
+
label: 'Wool',
|
|
3502
|
+
category: 'fabric',
|
|
3503
|
+
surfaces: ['furniture'],
|
|
3504
|
+
description: 'Matte wool felt',
|
|
3505
|
+
previewThumbnailUrl: '/material/fabric/white_wool/white_wool_thumb.webp',
|
|
3506
|
+
preset: {
|
|
3507
|
+
maps: {
|
|
3508
|
+
albedoMap: '/material/fabric/white_wool/white_wool_basecolor_512.ktx2',
|
|
3509
|
+
normalMap: '/material/fabric/white_wool/white_wool_normal_512.ktx2',
|
|
3510
|
+
roughnessMap: '/material/fabric/white_wool/white_wool_roughness_512.ktx2',
|
|
3511
|
+
aoMap: '/material/fabric/white_wool/white_wool_ao_512.ktx2',
|
|
3512
|
+
},
|
|
3513
|
+
mapProperties: {
|
|
3514
|
+
color: '#ffffff',
|
|
3515
|
+
roughness: 0.9,
|
|
3516
|
+
metalness: 0,
|
|
3517
|
+
repeatX: 2.5,
|
|
3518
|
+
repeatY: 2.5,
|
|
3519
|
+
rotation: 0,
|
|
3520
|
+
wrapS: 'Repeat',
|
|
3521
|
+
wrapT: 'Repeat',
|
|
3522
|
+
normalScaleX: 1,
|
|
3523
|
+
normalScaleY: 1,
|
|
3524
|
+
emissiveIntensity: 1,
|
|
3525
|
+
displacementScale: 0,
|
|
3526
|
+
transparent: false,
|
|
3527
|
+
flipY: false,
|
|
3528
|
+
bumpScale: 1,
|
|
3529
|
+
emissiveColor: '#000000',
|
|
3530
|
+
aoMapIntensity: 1,
|
|
3531
|
+
side: 0,
|
|
3532
|
+
opacity: 1,
|
|
3533
|
+
lightMapIntensity: 1,
|
|
3534
|
+
},
|
|
3535
|
+
},
|
|
3536
|
+
},
|
|
3537
|
+
{
|
|
3538
|
+
id: 'fabric-suede',
|
|
3539
|
+
label: 'Suede',
|
|
3540
|
+
category: 'fabric',
|
|
3541
|
+
surfaces: ['furniture'],
|
|
3542
|
+
description: 'Matte suede nap',
|
|
3543
|
+
previewThumbnailUrl: '/material/fabric/suede/suede_thumb.webp',
|
|
3544
|
+
preset: {
|
|
3545
|
+
maps: {
|
|
3546
|
+
albedoMap: '/material/fabric/suede/suede_basecolor_512.ktx2',
|
|
3547
|
+
normalMap: '/material/fabric/suede/suede_normal_512.ktx2',
|
|
3548
|
+
roughnessMap: '/material/fabric/suede/suede_roughness_512.ktx2',
|
|
3549
|
+
aoMap: '/material/fabric/suede/suede_ao_512.ktx2',
|
|
3550
|
+
},
|
|
3551
|
+
mapProperties: {
|
|
3552
|
+
color: '#ffffff',
|
|
3553
|
+
roughness: 0.9,
|
|
3554
|
+
metalness: 0,
|
|
3555
|
+
repeatX: 2,
|
|
3556
|
+
repeatY: 2,
|
|
3557
|
+
rotation: 0,
|
|
3558
|
+
wrapS: 'Repeat',
|
|
3559
|
+
wrapT: 'Repeat',
|
|
3560
|
+
normalScaleX: 1,
|
|
3561
|
+
normalScaleY: 1,
|
|
3562
|
+
emissiveIntensity: 1,
|
|
3563
|
+
displacementScale: 0,
|
|
3564
|
+
transparent: false,
|
|
3565
|
+
flipY: false,
|
|
3566
|
+
bumpScale: 1,
|
|
3567
|
+
emissiveColor: '#000000',
|
|
3568
|
+
aoMapIntensity: 1,
|
|
3569
|
+
side: 0,
|
|
3570
|
+
opacity: 1,
|
|
3571
|
+
lightMapIntensity: 1,
|
|
3572
|
+
},
|
|
3573
|
+
},
|
|
3574
|
+
},
|
|
3575
|
+
{
|
|
3576
|
+
id: 'fabric-boucle',
|
|
3577
|
+
label: 'Bouclé',
|
|
3578
|
+
category: 'fabric',
|
|
3579
|
+
surfaces: ['furniture'],
|
|
3580
|
+
description: 'Looped bouclé upholstery',
|
|
3581
|
+
previewThumbnailUrl: '/material/fabric/wool_boucle/wool_boucle_thumb.webp',
|
|
3582
|
+
preset: {
|
|
3583
|
+
maps: {
|
|
3584
|
+
albedoMap: '/material/fabric/wool_boucle/wool_boucle_basecolor_512.ktx2',
|
|
3585
|
+
normalMap: '/material/fabric/wool_boucle/wool_boucle_normal_512.ktx2',
|
|
3586
|
+
},
|
|
3587
|
+
mapProperties: {
|
|
3588
|
+
color: '#ffffff',
|
|
3589
|
+
roughness: 0.9,
|
|
3590
|
+
metalness: 0,
|
|
3591
|
+
repeatX: 3.3,
|
|
3592
|
+
repeatY: 3.3,
|
|
3593
|
+
rotation: 0,
|
|
3594
|
+
wrapS: 'Repeat',
|
|
3595
|
+
wrapT: 'Repeat',
|
|
3596
|
+
normalScaleX: 1,
|
|
3597
|
+
normalScaleY: 1,
|
|
3598
|
+
emissiveIntensity: 1,
|
|
3599
|
+
displacementScale: 0,
|
|
3600
|
+
transparent: false,
|
|
3601
|
+
flipY: false,
|
|
3602
|
+
bumpScale: 1,
|
|
3603
|
+
emissiveColor: '#000000',
|
|
3604
|
+
aoMapIntensity: 1,
|
|
3605
|
+
side: 0,
|
|
3606
|
+
opacity: 1,
|
|
3607
|
+
lightMapIntensity: 1,
|
|
3608
|
+
},
|
|
3609
|
+
},
|
|
3610
|
+
},
|
|
3611
|
+
{
|
|
3612
|
+
id: 'leather-black',
|
|
3613
|
+
label: 'Black Leather',
|
|
3614
|
+
category: 'leather',
|
|
3615
|
+
surfaces: ['furniture'],
|
|
3616
|
+
description: 'Smooth black leather',
|
|
3617
|
+
previewThumbnailUrl: '/material/leather/black_leather/black_leather_thumb.webp',
|
|
3618
|
+
preset: {
|
|
3619
|
+
maps: {
|
|
3620
|
+
albedoMap: '/material/leather/black_leather/black_leather_basecolor_512.ktx2',
|
|
3621
|
+
normalMap: '/material/leather/black_leather/black_leather_normal_512.ktx2',
|
|
3622
|
+
roughnessMap: '/material/leather/black_leather/black_leather_roughness_512.ktx2',
|
|
3623
|
+
},
|
|
3624
|
+
mapProperties: {
|
|
3625
|
+
color: '#ffffff',
|
|
3626
|
+
roughness: 0.5,
|
|
3627
|
+
metalness: 0,
|
|
3628
|
+
repeatX: 1.67,
|
|
3629
|
+
repeatY: 1.67,
|
|
3630
|
+
rotation: 0,
|
|
3631
|
+
wrapS: 'Repeat',
|
|
3632
|
+
wrapT: 'Repeat',
|
|
3633
|
+
normalScaleX: 1,
|
|
3634
|
+
normalScaleY: 1,
|
|
3635
|
+
emissiveIntensity: 1,
|
|
3636
|
+
displacementScale: 0,
|
|
3637
|
+
transparent: false,
|
|
3638
|
+
flipY: false,
|
|
3639
|
+
bumpScale: 1,
|
|
3640
|
+
emissiveColor: '#000000',
|
|
3641
|
+
aoMapIntensity: 1,
|
|
3642
|
+
side: 0,
|
|
3643
|
+
opacity: 1,
|
|
3644
|
+
lightMapIntensity: 1,
|
|
3645
|
+
},
|
|
3646
|
+
},
|
|
3647
|
+
},
|
|
3648
|
+
{
|
|
3649
|
+
id: 'leather-calf',
|
|
3650
|
+
label: 'Calf Leather',
|
|
3651
|
+
category: 'leather',
|
|
3652
|
+
surfaces: ['furniture'],
|
|
3653
|
+
description: 'Pebbled calf leather',
|
|
3654
|
+
previewThumbnailUrl: '/material/leather/calf_leather/calf_leather_thumb.webp',
|
|
3655
|
+
preset: {
|
|
3656
|
+
maps: {
|
|
3657
|
+
albedoMap: '/material/leather/calf_leather/calf_leather_basecolor_512.ktx2',
|
|
3658
|
+
normalMap: '/material/leather/calf_leather/calf_leather_normal_512.ktx2',
|
|
3659
|
+
roughnessMap: '/material/leather/calf_leather/calf_leather_roughness_512.ktx2',
|
|
3660
|
+
aoMap: '/material/leather/calf_leather/calf_leather_ao_512.ktx2',
|
|
3661
|
+
},
|
|
3662
|
+
mapProperties: {
|
|
3663
|
+
color: '#ffffff',
|
|
3664
|
+
roughness: 0.5,
|
|
3665
|
+
metalness: 0,
|
|
3666
|
+
repeatX: 2,
|
|
3667
|
+
repeatY: 2,
|
|
3668
|
+
rotation: 0,
|
|
3669
|
+
wrapS: 'Repeat',
|
|
3670
|
+
wrapT: 'Repeat',
|
|
3671
|
+
normalScaleX: 1,
|
|
3672
|
+
normalScaleY: 1,
|
|
3673
|
+
emissiveIntensity: 1,
|
|
3674
|
+
displacementScale: 0,
|
|
3675
|
+
transparent: false,
|
|
3676
|
+
flipY: false,
|
|
3677
|
+
bumpScale: 1,
|
|
3678
|
+
emissiveColor: '#000000',
|
|
3679
|
+
aoMapIntensity: 1,
|
|
3680
|
+
side: 0,
|
|
3681
|
+
opacity: 1,
|
|
3682
|
+
lightMapIntensity: 1,
|
|
3683
|
+
},
|
|
3684
|
+
},
|
|
3685
|
+
},
|
|
3686
|
+
{
|
|
3687
|
+
id: 'concrete-plaster',
|
|
3688
|
+
label: 'Painted Plaster',
|
|
3689
|
+
category: 'concrete',
|
|
3690
|
+
surfaces: ['wall', 'ceiling'],
|
|
3691
|
+
description: 'Smooth painted plaster wall',
|
|
3692
|
+
previewThumbnailUrl: '/material/concrete/plaster_painted/plaster_painted_thumb.webp',
|
|
3693
|
+
preset: {
|
|
3694
|
+
maps: {
|
|
3695
|
+
albedoMap: '/material/concrete/plaster_painted/plaster_painted_basecolor_512.ktx2',
|
|
3696
|
+
normalMap: '/material/concrete/plaster_painted/plaster_painted_normal_512.ktx2',
|
|
3697
|
+
roughnessMap: '/material/concrete/plaster_painted/plaster_painted_roughness_512.ktx2',
|
|
3698
|
+
aoMap: '/material/concrete/plaster_painted/plaster_painted_ao_512.ktx2',
|
|
3699
|
+
},
|
|
3700
|
+
mapProperties: {
|
|
3701
|
+
color: '#ffffff',
|
|
3702
|
+
roughness: 0.85,
|
|
3703
|
+
metalness: 0,
|
|
3704
|
+
repeatX: 0.67,
|
|
3705
|
+
repeatY: 0.67,
|
|
3706
|
+
rotation: 0,
|
|
3707
|
+
wrapS: 'Repeat',
|
|
3708
|
+
wrapT: 'Repeat',
|
|
3709
|
+
normalScaleX: 1,
|
|
3710
|
+
normalScaleY: 1,
|
|
3711
|
+
emissiveIntensity: 1,
|
|
3712
|
+
displacementScale: 0,
|
|
3713
|
+
transparent: false,
|
|
3714
|
+
flipY: false,
|
|
3715
|
+
bumpScale: 1,
|
|
3716
|
+
emissiveColor: '#000000',
|
|
3717
|
+
aoMapIntensity: 1,
|
|
3718
|
+
side: 0,
|
|
3719
|
+
opacity: 1,
|
|
3720
|
+
lightMapIntensity: 1,
|
|
3721
|
+
},
|
|
3722
|
+
},
|
|
3723
|
+
},
|
|
3724
|
+
{
|
|
3725
|
+
id: 'concrete-polished',
|
|
3726
|
+
label: 'Polished Concrete',
|
|
3727
|
+
category: 'concrete',
|
|
3728
|
+
surfaces: ['floor', 'wall'],
|
|
3729
|
+
description: 'Polished concrete floor',
|
|
3730
|
+
previewThumbnailUrl: '/material/concrete/concrete_polished/concrete_polished_thumb.webp',
|
|
3731
|
+
preset: {
|
|
3732
|
+
maps: {
|
|
3733
|
+
albedoMap: '/material/concrete/concrete_polished/concrete_polished_basecolor_512.ktx2',
|
|
3734
|
+
normalMap: '/material/concrete/concrete_polished/concrete_polished_normal_512.ktx2',
|
|
3735
|
+
roughnessMap: '/material/concrete/concrete_polished/concrete_polished_roughness_512.ktx2',
|
|
3736
|
+
},
|
|
3737
|
+
mapProperties: {
|
|
3738
|
+
color: '#ffffff',
|
|
3739
|
+
roughness: 0.5,
|
|
3740
|
+
metalness: 0,
|
|
3741
|
+
repeatX: 0.5,
|
|
3742
|
+
repeatY: 0.5,
|
|
3743
|
+
rotation: 0,
|
|
3744
|
+
wrapS: 'Repeat',
|
|
3745
|
+
wrapT: 'Repeat',
|
|
3746
|
+
normalScaleX: 1,
|
|
3747
|
+
normalScaleY: 1,
|
|
3748
|
+
emissiveIntensity: 1,
|
|
3749
|
+
displacementScale: 0,
|
|
3750
|
+
transparent: false,
|
|
3751
|
+
flipY: false,
|
|
3752
|
+
bumpScale: 1,
|
|
3753
|
+
emissiveColor: '#000000',
|
|
3754
|
+
aoMapIntensity: 1,
|
|
3755
|
+
side: 0,
|
|
3756
|
+
opacity: 1,
|
|
3757
|
+
lightMapIntensity: 1,
|
|
3758
|
+
},
|
|
3759
|
+
},
|
|
3760
|
+
},
|
|
3761
|
+
{
|
|
3762
|
+
id: 'concrete-raw',
|
|
3763
|
+
label: 'Raw Concrete',
|
|
3764
|
+
category: 'concrete',
|
|
3765
|
+
surfaces: ['wall', 'floor', 'outdoor'],
|
|
3766
|
+
description: 'Board-formed raw concrete',
|
|
3767
|
+
previewThumbnailUrl: '/material/concrete/concrete_raw/concrete_raw_thumb.webp',
|
|
3768
|
+
preset: {
|
|
3769
|
+
maps: {
|
|
3770
|
+
albedoMap: '/material/concrete/concrete_raw/concrete_raw_basecolor_512.ktx2',
|
|
3771
|
+
normalMap: '/material/concrete/concrete_raw/concrete_raw_normal_512.ktx2',
|
|
3772
|
+
roughnessMap: '/material/concrete/concrete_raw/concrete_raw_roughness_512.ktx2',
|
|
3773
|
+
aoMap: '/material/concrete/concrete_raw/concrete_raw_ao_512.ktx2',
|
|
3774
|
+
},
|
|
3775
|
+
mapProperties: {
|
|
3776
|
+
color: '#ffffff',
|
|
3777
|
+
roughness: 0.8,
|
|
3778
|
+
metalness: 0,
|
|
3779
|
+
repeatX: 0.5,
|
|
3780
|
+
repeatY: 0.5,
|
|
3781
|
+
rotation: 0,
|
|
3782
|
+
wrapS: 'Repeat',
|
|
3783
|
+
wrapT: 'Repeat',
|
|
3784
|
+
normalScaleX: 1,
|
|
3785
|
+
normalScaleY: 1,
|
|
3786
|
+
emissiveIntensity: 1,
|
|
3787
|
+
displacementScale: 0,
|
|
3788
|
+
transparent: false,
|
|
3789
|
+
flipY: false,
|
|
3790
|
+
bumpScale: 1,
|
|
3791
|
+
emissiveColor: '#000000',
|
|
3792
|
+
aoMapIntensity: 1,
|
|
3793
|
+
side: 0,
|
|
3794
|
+
opacity: 1,
|
|
3795
|
+
lightMapIntensity: 1,
|
|
3796
|
+
},
|
|
3797
|
+
},
|
|
3798
|
+
},
|
|
3799
|
+
{
|
|
3800
|
+
id: 'concrete-plate',
|
|
3801
|
+
label: 'Concrete Plate',
|
|
3802
|
+
category: 'concrete',
|
|
3803
|
+
surfaces: ['wall', 'floor'],
|
|
3804
|
+
description: 'Smooth cast concrete plate',
|
|
3805
|
+
previewThumbnailUrl: '/material/concrete/concrete_plate/concrete_plate_thumb.webp',
|
|
3806
|
+
preset: {
|
|
3807
|
+
maps: {
|
|
3808
|
+
albedoMap: '/material/concrete/concrete_plate/concrete_plate_basecolor_512.ktx2',
|
|
3809
|
+
normalMap: '/material/concrete/concrete_plate/concrete_plate_normal_512.ktx2',
|
|
3810
|
+
roughnessMap: '/material/concrete/concrete_plate/concrete_plate_roughness_512.ktx2',
|
|
3811
|
+
aoMap: '/material/concrete/concrete_plate/concrete_plate_ao_512.ktx2',
|
|
3812
|
+
},
|
|
3813
|
+
mapProperties: {
|
|
3814
|
+
color: '#ffffff',
|
|
3815
|
+
roughness: 0.8,
|
|
3816
|
+
metalness: 0,
|
|
3817
|
+
repeatX: 0.5,
|
|
3818
|
+
repeatY: 0.5,
|
|
3819
|
+
rotation: 0,
|
|
3820
|
+
wrapS: 'Repeat',
|
|
3821
|
+
wrapT: 'Repeat',
|
|
3822
|
+
normalScaleX: 1,
|
|
3823
|
+
normalScaleY: 1,
|
|
3824
|
+
emissiveIntensity: 1,
|
|
3825
|
+
displacementScale: 0,
|
|
3826
|
+
transparent: false,
|
|
3827
|
+
flipY: false,
|
|
3828
|
+
bumpScale: 1,
|
|
3829
|
+
emissiveColor: '#000000',
|
|
3830
|
+
aoMapIntensity: 1,
|
|
3831
|
+
side: 0,
|
|
3832
|
+
opacity: 1,
|
|
3833
|
+
lightMapIntensity: 1,
|
|
3834
|
+
},
|
|
3835
|
+
},
|
|
3836
|
+
},
|
|
3837
|
+
{
|
|
3838
|
+
id: 'concrete-stucco',
|
|
3839
|
+
label: 'White Stucco',
|
|
3840
|
+
category: 'concrete',
|
|
3841
|
+
surfaces: ['wall', 'outdoor'],
|
|
3842
|
+
description: 'Exterior stucco render',
|
|
3843
|
+
previewThumbnailUrl: '/material/concrete/white_stucco/white_stucco_thumb.webp',
|
|
3844
|
+
preset: {
|
|
3845
|
+
maps: {
|
|
3846
|
+
albedoMap: '/material/concrete/white_stucco/white_stucco_basecolor_512.ktx2',
|
|
3847
|
+
normalMap: '/material/concrete/white_stucco/white_stucco_normal_512.ktx2',
|
|
3848
|
+
roughnessMap: '/material/concrete/white_stucco/white_stucco_roughness_512.ktx2',
|
|
3849
|
+
aoMap: '/material/concrete/white_stucco/white_stucco_ao_512.ktx2',
|
|
3850
|
+
},
|
|
3851
|
+
mapProperties: {
|
|
3852
|
+
color: '#ffffff',
|
|
3853
|
+
roughness: 0.9,
|
|
3854
|
+
metalness: 0,
|
|
3855
|
+
repeatX: 1,
|
|
3856
|
+
repeatY: 1,
|
|
3857
|
+
rotation: 0,
|
|
3858
|
+
wrapS: 'Repeat',
|
|
3859
|
+
wrapT: 'Repeat',
|
|
3860
|
+
normalScaleX: 1,
|
|
3861
|
+
normalScaleY: 1,
|
|
3862
|
+
emissiveIntensity: 1,
|
|
3863
|
+
displacementScale: 0,
|
|
3864
|
+
transparent: false,
|
|
3865
|
+
flipY: false,
|
|
3866
|
+
bumpScale: 1,
|
|
3867
|
+
emissiveColor: '#000000',
|
|
3868
|
+
aoMapIntensity: 1,
|
|
3869
|
+
side: 0,
|
|
3870
|
+
opacity: 1,
|
|
3871
|
+
lightMapIntensity: 1,
|
|
3872
|
+
},
|
|
3873
|
+
},
|
|
3874
|
+
},
|
|
3875
|
+
{
|
|
3876
|
+
id: 'concrete-drywall',
|
|
3877
|
+
label: 'Prepared Drywall',
|
|
3878
|
+
category: 'concrete',
|
|
3879
|
+
surfaces: ['wall', 'ceiling'],
|
|
3880
|
+
description: 'Smooth prepared drywall ready for paint',
|
|
3881
|
+
previewThumbnailUrl: '/material/concrete/prepared_drywall/prepared_drywall_thumb.webp',
|
|
3882
|
+
preset: {
|
|
3883
|
+
maps: {
|
|
3884
|
+
albedoMap: '/material/concrete/prepared_drywall/prepared_drywall_basecolor_512.ktx2',
|
|
3885
|
+
normalMap: '/material/concrete/prepared_drywall/prepared_drywall_normal_512.ktx2',
|
|
3886
|
+
roughnessMap: '/material/concrete/prepared_drywall/prepared_drywall_roughness_512.ktx2',
|
|
3887
|
+
aoMap: '/material/concrete/prepared_drywall/prepared_drywall_ao_512.ktx2',
|
|
3888
|
+
},
|
|
3889
|
+
mapProperties: {
|
|
3890
|
+
color: '#ffffff',
|
|
3891
|
+
roughness: 0.9,
|
|
3892
|
+
metalness: 0,
|
|
3893
|
+
repeatX: 0.5,
|
|
3894
|
+
repeatY: 0.5,
|
|
3895
|
+
rotation: 0,
|
|
3896
|
+
wrapS: 'Repeat',
|
|
3897
|
+
wrapT: 'Repeat',
|
|
3898
|
+
normalScaleX: 1,
|
|
3899
|
+
normalScaleY: 1,
|
|
3900
|
+
emissiveIntensity: 1,
|
|
3901
|
+
displacementScale: 0,
|
|
3902
|
+
transparent: false,
|
|
3903
|
+
flipY: false,
|
|
3904
|
+
bumpScale: 1,
|
|
3905
|
+
emissiveColor: '#000000',
|
|
3906
|
+
aoMapIntensity: 1,
|
|
3907
|
+
side: 0,
|
|
3908
|
+
opacity: 1,
|
|
3909
|
+
lightMapIntensity: 1,
|
|
3910
|
+
},
|
|
3911
|
+
},
|
|
3912
|
+
},
|
|
3913
|
+
{
|
|
3914
|
+
id: 'metal-copper',
|
|
3915
|
+
label: 'Copper',
|
|
3916
|
+
category: 'metal',
|
|
3917
|
+
surfaces: ['furniture', 'wall'],
|
|
3918
|
+
description: 'Warm copper',
|
|
3919
|
+
previewThumbnailUrl: '/material/metal/copper_metal/copper_metal_thumb.webp',
|
|
3920
|
+
preset: {
|
|
3921
|
+
maps: {
|
|
3922
|
+
albedoMap: '/material/metal/copper_metal/copper_metal_basecolor_512.ktx2',
|
|
3923
|
+
normalMap: '/material/metal/copper_metal/copper_metal_normal_512.ktx2',
|
|
3924
|
+
roughnessMap: '/material/metal/copper_metal/copper_metal_roughness_512.ktx2',
|
|
3925
|
+
metalnessMap: '/material/metal/copper_metal/copper_metal_metallic_512.ktx2',
|
|
3926
|
+
},
|
|
3927
|
+
mapProperties: {
|
|
3928
|
+
color: '#ffffff',
|
|
3929
|
+
roughness: 0.4,
|
|
3930
|
+
metalness: 0.6,
|
|
3931
|
+
repeatX: 1,
|
|
3932
|
+
repeatY: 1,
|
|
3933
|
+
rotation: 0,
|
|
3934
|
+
wrapS: 'Repeat',
|
|
3935
|
+
wrapT: 'Repeat',
|
|
3936
|
+
normalScaleX: 1,
|
|
3937
|
+
normalScaleY: 1,
|
|
3938
|
+
emissiveIntensity: 1,
|
|
3939
|
+
displacementScale: 0,
|
|
3940
|
+
transparent: false,
|
|
3941
|
+
flipY: false,
|
|
3942
|
+
bumpScale: 1,
|
|
3943
|
+
emissiveColor: '#000000',
|
|
3944
|
+
aoMapIntensity: 1,
|
|
3945
|
+
side: 0,
|
|
3946
|
+
opacity: 1,
|
|
3947
|
+
lightMapIntensity: 1,
|
|
3948
|
+
},
|
|
3949
|
+
},
|
|
3950
|
+
},
|
|
3951
|
+
{
|
|
3952
|
+
id: 'metal-polished',
|
|
3953
|
+
label: 'Polished Metal',
|
|
3954
|
+
category: 'metal',
|
|
3955
|
+
surfaces: ['furniture', 'wall'],
|
|
3956
|
+
description: 'Polished stainless steel',
|
|
3957
|
+
previewThumbnailUrl: '/material/metal/polished_metal/polished_metal_thumb.webp',
|
|
3958
|
+
preset: {
|
|
3959
|
+
maps: {
|
|
3960
|
+
albedoMap: '/material/metal/polished_metal/polished_metal_basecolor_512.ktx2',
|
|
3961
|
+
normalMap: '/material/metal/polished_metal/polished_metal_normal_512.ktx2',
|
|
3962
|
+
roughnessMap: '/material/metal/polished_metal/polished_metal_roughness_512.ktx2',
|
|
3963
|
+
aoMap: '/material/metal/polished_metal/polished_metal_ao_512.ktx2',
|
|
3964
|
+
metalnessMap: '/material/metal/polished_metal/polished_metal_metallic_512.ktx2',
|
|
3965
|
+
},
|
|
3966
|
+
mapProperties: {
|
|
3967
|
+
color: '#ffffff',
|
|
3968
|
+
roughness: 0.3,
|
|
3969
|
+
metalness: 0.6,
|
|
3970
|
+
repeatX: 1,
|
|
3971
|
+
repeatY: 1,
|
|
3972
|
+
rotation: 0,
|
|
3973
|
+
wrapS: 'Repeat',
|
|
3974
|
+
wrapT: 'Repeat',
|
|
3975
|
+
normalScaleX: 1,
|
|
3976
|
+
normalScaleY: 1,
|
|
3977
|
+
emissiveIntensity: 1,
|
|
3978
|
+
displacementScale: 0,
|
|
3979
|
+
transparent: false,
|
|
3980
|
+
flipY: false,
|
|
3981
|
+
bumpScale: 1,
|
|
3982
|
+
emissiveColor: '#000000',
|
|
3983
|
+
aoMapIntensity: 1,
|
|
3984
|
+
side: 0,
|
|
3985
|
+
opacity: 1,
|
|
3986
|
+
lightMapIntensity: 1,
|
|
3987
|
+
},
|
|
3988
|
+
},
|
|
3989
|
+
},
|
|
3990
|
+
{
|
|
3991
|
+
id: 'metal-steel',
|
|
3992
|
+
label: 'Brushed Steel',
|
|
3993
|
+
category: 'metal',
|
|
3994
|
+
surfaces: ['furniture', 'wall'],
|
|
3995
|
+
description: 'Brushed stainless steel',
|
|
3996
|
+
previewThumbnailUrl: '/material/metal/stainless_steel_brushed/stainless_steel_brushed_thumb.webp',
|
|
3997
|
+
preset: {
|
|
3998
|
+
maps: {
|
|
3999
|
+
albedoMap: '/material/metal/stainless_steel_brushed/stainless_steel_brushed_basecolor_512.ktx2',
|
|
4000
|
+
normalMap: '/material/metal/stainless_steel_brushed/stainless_steel_brushed_normal_512.ktx2',
|
|
4001
|
+
roughnessMap: '/material/metal/stainless_steel_brushed/stainless_steel_brushed_roughness_512.ktx2',
|
|
4002
|
+
},
|
|
4003
|
+
mapProperties: {
|
|
4004
|
+
color: '#ffffff',
|
|
4005
|
+
roughness: 0.45,
|
|
4006
|
+
metalness: 0.6,
|
|
4007
|
+
repeatX: 1,
|
|
4008
|
+
repeatY: 1,
|
|
4009
|
+
rotation: 0,
|
|
4010
|
+
wrapS: 'Repeat',
|
|
4011
|
+
wrapT: 'Repeat',
|
|
4012
|
+
normalScaleX: 1,
|
|
4013
|
+
normalScaleY: 1,
|
|
4014
|
+
emissiveIntensity: 1,
|
|
4015
|
+
displacementScale: 0,
|
|
4016
|
+
transparent: false,
|
|
4017
|
+
flipY: false,
|
|
4018
|
+
bumpScale: 1,
|
|
4019
|
+
emissiveColor: '#000000',
|
|
4020
|
+
aoMapIntensity: 1,
|
|
4021
|
+
side: 0,
|
|
4022
|
+
opacity: 1,
|
|
4023
|
+
lightMapIntensity: 1,
|
|
4024
|
+
},
|
|
4025
|
+
},
|
|
4026
|
+
},
|
|
4027
|
+
{
|
|
4028
|
+
// Parameter-only metal (no texture maps) — a worked example of a non-PBR
|
|
4029
|
+
// catalog finish driven purely by three.js material settings.
|
|
4030
|
+
id: 'metal-brass',
|
|
4031
|
+
label: 'Brass',
|
|
4032
|
+
category: 'metal',
|
|
4033
|
+
surfaces: ['furniture', 'wall'],
|
|
4034
|
+
description: 'Polished brass (flat metal, no maps)',
|
|
4035
|
+
previewColor: '#b08d57',
|
|
4036
|
+
preset: {
|
|
4037
|
+
maps: {},
|
|
4038
|
+
mapProperties: {
|
|
4039
|
+
color: '#b08d57',
|
|
4040
|
+
roughness: 0.35,
|
|
4041
|
+
metalness: 0.9,
|
|
4042
|
+
repeatX: 1,
|
|
4043
|
+
repeatY: 1,
|
|
4044
|
+
rotation: 0,
|
|
4045
|
+
wrapS: 'Repeat',
|
|
4046
|
+
wrapT: 'Repeat',
|
|
4047
|
+
normalScaleX: 1,
|
|
4048
|
+
normalScaleY: 1,
|
|
4049
|
+
emissiveIntensity: 1,
|
|
4050
|
+
displacementScale: 0,
|
|
4051
|
+
transparent: false,
|
|
4052
|
+
flipY: false,
|
|
4053
|
+
bumpScale: 1,
|
|
4054
|
+
emissiveColor: '#000000',
|
|
4055
|
+
aoMapIntensity: 1,
|
|
4056
|
+
side: 0,
|
|
4057
|
+
opacity: 1,
|
|
4058
|
+
lightMapIntensity: 1,
|
|
4059
|
+
},
|
|
4060
|
+
},
|
|
4061
|
+
},
|
|
4062
|
+
{
|
|
4063
|
+
// Parameter-only chrome (no texture maps) — moderate metalness so it reads
|
|
4064
|
+
// as bright metal under direct/ambient light without needing an env map.
|
|
4065
|
+
id: 'metal-chrome',
|
|
4066
|
+
label: 'Chrome',
|
|
4067
|
+
category: 'metal',
|
|
4068
|
+
surfaces: ['furniture', 'wall'],
|
|
4069
|
+
description: 'Polished chrome (flat metal, no maps)',
|
|
4070
|
+
previewColor: '#c8ccce',
|
|
4071
|
+
preset: {
|
|
4072
|
+
maps: {},
|
|
4073
|
+
mapProperties: {
|
|
4074
|
+
color: '#c8ccce',
|
|
4075
|
+
roughness: 0.2,
|
|
4076
|
+
metalness: 0.6,
|
|
4077
|
+
repeatX: 1,
|
|
4078
|
+
repeatY: 1,
|
|
4079
|
+
rotation: 0,
|
|
4080
|
+
wrapS: 'Repeat',
|
|
4081
|
+
wrapT: 'Repeat',
|
|
4082
|
+
normalScaleX: 1,
|
|
4083
|
+
normalScaleY: 1,
|
|
4084
|
+
emissiveIntensity: 1,
|
|
4085
|
+
displacementScale: 0,
|
|
4086
|
+
transparent: false,
|
|
4087
|
+
flipY: false,
|
|
4088
|
+
bumpScale: 1,
|
|
4089
|
+
emissiveColor: '#000000',
|
|
4090
|
+
aoMapIntensity: 1,
|
|
4091
|
+
side: 0,
|
|
4092
|
+
opacity: 1,
|
|
4093
|
+
lightMapIntensity: 1,
|
|
4094
|
+
},
|
|
4095
|
+
},
|
|
4096
|
+
},
|
|
4097
|
+
];
|
|
4098
|
+
const STATIC_CATALOG_IDS = new Set(MATERIAL_CATALOG.map((item) => item.id));
|
|
4099
|
+
// Embedder-registered library materials (user/community/workspace). Core stays
|
|
4100
|
+
// passive: hosts push entries in; nothing here fetches. Static catalog entries
|
|
4101
|
+
// win on id collision so a registration can never shadow a built-in.
|
|
4102
|
+
const dynamicLibraryMaterials = new Map();
|
|
4103
|
+
const dynamicLibraryListeners = new Set();
|
|
4104
|
+
let dynamicLibraryVersion = 0;
|
|
4105
|
+
function notifyDynamicLibraryChange() {
|
|
4106
|
+
dynamicLibraryVersion += 1;
|
|
4107
|
+
for (const listener of [...dynamicLibraryListeners]) {
|
|
4108
|
+
listener();
|
|
4109
|
+
}
|
|
4110
|
+
}
|
|
4111
|
+
export function registerLibraryMaterials(items) {
|
|
4112
|
+
if (items.length === 0)
|
|
4113
|
+
return;
|
|
4114
|
+
for (const item of items) {
|
|
4115
|
+
dynamicLibraryMaterials.set(item.id, item);
|
|
4116
|
+
}
|
|
4117
|
+
notifyDynamicLibraryChange();
|
|
4118
|
+
}
|
|
4119
|
+
export function unregisterLibraryMaterials(ids) {
|
|
4120
|
+
let changed = false;
|
|
4121
|
+
for (const id of ids) {
|
|
4122
|
+
changed = dynamicLibraryMaterials.delete(id) || changed;
|
|
4123
|
+
}
|
|
4124
|
+
if (changed)
|
|
4125
|
+
notifyDynamicLibraryChange();
|
|
4126
|
+
}
|
|
4127
|
+
export function getDynamicLibraryMaterials() {
|
|
4128
|
+
return [...dynamicLibraryMaterials.values()];
|
|
4129
|
+
}
|
|
4130
|
+
export function subscribeLibraryMaterials(listener) {
|
|
4131
|
+
dynamicLibraryListeners.add(listener);
|
|
4132
|
+
return () => {
|
|
4133
|
+
dynamicLibraryListeners.delete(listener);
|
|
4134
|
+
};
|
|
4135
|
+
}
|
|
4136
|
+
export function getLibraryMaterialsVersion() {
|
|
4137
|
+
return dynamicLibraryVersion;
|
|
4138
|
+
}
|
|
4139
|
+
export function getMaterialsForCategory(category) {
|
|
4140
|
+
const items = MATERIAL_CATALOG.filter((item) => item.category === category);
|
|
4141
|
+
for (const item of dynamicLibraryMaterials.values()) {
|
|
4142
|
+
if (item.category === category && !STATIC_CATALOG_IDS.has(item.id))
|
|
4143
|
+
items.push(item);
|
|
4144
|
+
}
|
|
4145
|
+
return items;
|
|
4146
|
+
}
|
|
4147
|
+
export function getCatalogMaterialById(id) {
|
|
4148
|
+
if (!id)
|
|
4149
|
+
return undefined;
|
|
4150
|
+
return MATERIAL_CATALOG.find((item) => item.id === id) ?? dynamicLibraryMaterials.get(id);
|
|
4151
|
+
}
|
|
4152
|
+
export const LIBRARY_MATERIAL_REF_PREFIX = 'library:';
|
|
4153
|
+
export const SCENE_MATERIAL_REF_PREFIX = 'scene:';
|
|
4154
|
+
export function toLibraryMaterialRef(id) {
|
|
4155
|
+
return `${LIBRARY_MATERIAL_REF_PREFIX}${id}`;
|
|
4156
|
+
}
|
|
4157
|
+
export function toSceneMaterialRef(id) {
|
|
4158
|
+
return `${SCENE_MATERIAL_REF_PREFIX}${id}`;
|
|
4159
|
+
}
|
|
4160
|
+
export function getLibraryMaterialIdFromRef(materialRef) {
|
|
4161
|
+
if (typeof materialRef !== 'string')
|
|
4162
|
+
return null;
|
|
4163
|
+
if (!materialRef.startsWith(LIBRARY_MATERIAL_REF_PREFIX))
|
|
4164
|
+
return null;
|
|
4165
|
+
return materialRef.slice(LIBRARY_MATERIAL_REF_PREFIX.length);
|
|
4166
|
+
}
|
|
4167
|
+
export function getSceneMaterialIdFromRef(materialRef) {
|
|
4168
|
+
if (typeof materialRef !== 'string')
|
|
4169
|
+
return null;
|
|
4170
|
+
if (!materialRef.startsWith(SCENE_MATERIAL_REF_PREFIX))
|
|
4171
|
+
return null;
|
|
4172
|
+
return materialRef.slice(SCENE_MATERIAL_REF_PREFIX.length);
|
|
4173
|
+
}
|
|
4174
|
+
export function parseMaterialRef(ref) {
|
|
4175
|
+
const lib = getLibraryMaterialIdFromRef(ref);
|
|
4176
|
+
if (lib)
|
|
4177
|
+
return { kind: 'library', id: lib };
|
|
4178
|
+
const scene = getSceneMaterialIdFromRef(ref);
|
|
4179
|
+
if (scene)
|
|
4180
|
+
return { kind: 'scene', id: scene };
|
|
4181
|
+
return null;
|
|
2390
4182
|
}
|
|
2391
4183
|
export function getMaterialPresetByRef(materialRef) {
|
|
2392
4184
|
const materialId = getLibraryMaterialIdFromRef(materialRef);
|