{"data":{"id":"113","slug":"clothing-rail-and-wardrobe","title":"Clothing Rail and Wardrobe","summary":"Walk a 9 by 6 metre clothing shop: five rails and two wall runs of hung garments, four bays of folded stock, three fitting rooms, mannequin forms in the window and a homeware corner with a wardrobe, drawers and a mirror.","url":"https://3dassets.dev/demos/clothing-rail-and-wardrobe","coverUrl":"https://cdn.3dassets.dev/media/clothing-rail-and-wardrobe-demo.png","featured":true,"pack":{"slug":"clothing-rail-and-wardrobe","title":"Clothing Rail and Wardrobe","url":"https://3dassets.dev/packs/clothing-rail-and-wardrobe","summary":"Clothes and the fixtures they live on: folded tees, shirts, jumpers and jeans with their stacks, garments hung on wooden, wire, velvet and clip hangers, and the rails, stands, stock bays, wardrobe, drawers, cubicles, mirror and mannequin forms that carry them.","assetCount":49,"totalBytes":3820824,"starterScene":{"slug":"clothing-rail-and-wardrobe-clothing-rail-d260b08c-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/35480/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-clothing-rail-d260b08c-starter-scene","fileSize":1783564}},"placementCount":177,"assetCount":48,"spawn":{"position":[0.35,0.02,2.6],"yaw":180},"publishedAt":"2026-09-11T15:38:41.610Z","updatedAt":"2026-09-11T15:38:41.610Z","description":"## What is placed\n\nAll 48 of the pack's models, 177 placements, on the pack's own 1.5 m floor tiles under the room preset with the downlights set at 3.6 m. You start inside the door facing the shop floor. Ahead of you are five straight rails and two wall length runs carrying every hung garment in the pack: shirts in two colours, a blouse, a t shirt, a jumper, a hoodie, a jacket, a coat, a dress, a long dress, clipped trousers and a suit under its cover, with wooden, wire and velvet hangers left spare on the bars. Two round rails and a four way display stand break up the middle of the floor.\n\nThe back wall is three fitting room cubicles and four shelving bays stocked shelf by shelf with the folded range: tees in three colours, a polo, a collar band shirt, a jumper, a hoodie, jeans, shorts, rolled socks, an underwear multipack, a scarf, a bath towel and two ready made stacks. The right hand wall is the homeware corner: a wardrobe with hanging space, a chest of drawers topped with price tags and size cubes, a full length mirror, a shoe rack and a laundry basket. The entrance corner has the accessory display table with its stock, a second mirror, two full mannequin forms, two torso stands, a window bracket rail and a garment steamer parked by the fitting rooms.\n\n## What moves\n\nSeven of the placed models carry rigid node clips. The fitting room cubicles, the wardrobe, the chest of drawers, the accessory table drawer and the laundry basket lid all open and close, the round rails spin their bars, and the garment steamer rolls on its castors. Clips play as you walk up to a model.\n\n## What does not move, and why\n\nEvery garment is static geometry in a settled pose: a folded tee is a rectangular prism with a collar notch, a hung shirt is a shaped shell on its hanger, because this library has no cloth simulation. The mannequins ship undressed, since fitting a garment to a form needs skinning and this library has no path for it. There are no shoppers and no staff, because nothing here is skinned. No real clothing brand appears anywhere in the pack.","scene":{"version":1,"spawn":{"position":[0.35,0.02,2.6],"yaw":180},"ground":{"style":"none"},"environment":{"preset":"room","wallHeight":4,"lampHeight":3.6,"shadows":true},"placements":[{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-3.75,0,-2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-3.75,0,-0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-3.75,0,0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-3.75,0,2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-2.25,0,-2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-2.25,0,-0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-2.25,0,0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-2.25,0,2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-0.75,0,-2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-0.75,0,-0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-0.75,0,0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[-0.75,0,2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[0.75,0,-2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[0.75,0,-0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[0.75,0,0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[0.75,0,2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[2.25,0,-2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[2.25,0,-0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[2.25,0,0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[2.25,0,2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[3.75,0,-2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[3.75,0,-0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[3.75,0,0.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","position":[3.75,0,2.25],"rotation":0},{"asset":"clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","position":[-3,0.02,-1],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-on-hanger-c0e0e17d","position":[-3.48,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-962569c5","position":[-3.24,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-blue-de94ebc7","position":[-3,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-blouse-on-hanger-63527161","position":[-2.76,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-jumper-on-hanger-35cf7f37","position":[-2.52,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","position":[-1.8,0.02,-1],"rotation":0},{"asset":"clothing-rail-and-wardrobe-hoodie-on-hanger-8ed88c32","position":[-2.2800000000000002,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-jacket-on-hanger-6b9e72e2","position":[-2.04,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-coat-on-hanger-b22d8dff","position":[-1.8,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-8356864f","position":[-1.56,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-long-5d844a11","position":[-1.32,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","position":[-0.6,0.02,-1],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-962569c5","position":[-1.08,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-wooden-hanger-empty-c055f3a1","position":[-0.84,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-blouse-on-hanger-63527161","position":[-0.6,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-jacket-on-hanger-6b9e72e2","position":[-0.36,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-8356864f","position":[-0.12,1.59,-1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","position":[-3,0.02,0.7],"rotation":0},{"asset":"clothing-rail-and-wardrobe-trousers-on-clip-hanger-2660f67f","position":[-3.48,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-suit-on-hanger-with-cover-56b00009","position":[-3.24,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-tshirt-on-hanger-c0e0e17d","position":[-3,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-962569c5","position":[-2.76,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-blue-de94ebc7","position":[-2.52,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","position":[-1.8,0.02,0.7],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jumper-on-hanger-35cf7f37","position":[-2.2800000000000002,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-hoodie-on-hanger-8ed88c32","position":[-2.04,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-wire-hanger-empty-7ddfa34c","position":[-1.8,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-coat-on-hanger-b22d8dff","position":[-1.56,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-tshirt-on-hanger-c0e0e17d","position":[-1.32,1.59,0.7],"rotation":90},{"asset":"clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","position":[-4.15,0.02,-1.9],"rotation":90},{"asset":"clothing-rail-and-wardrobe-blouse-on-hanger-63527161","position":[-4.15,1.59,-2.38],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jumper-on-hanger-35cf7f37","position":[-4.15,1.59,-2.1399999999999997],"rotation":0},{"asset":"clothing-rail-and-wardrobe-hoodie-on-hanger-8ed88c32","position":[-4.15,1.59,-1.9],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jacket-on-hanger-6b9e72e2","position":[-4.15,1.59,-1.66],"rotation":0},{"asset":"clothing-rail-and-wardrobe-coat-on-hanger-b22d8dff","position":[-4.15,1.59,-1.42],"rotation":0},{"asset":"clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","position":[-4.15,0.02,-0.55],"rotation":90},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-8356864f","position":[-4.15,1.59,-1.03],"rotation":0},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-long-5d844a11","position":[-4.15,1.59,-0.79],"rotation":0},{"asset":"clothing-rail-and-wardrobe-trousers-on-clip-hanger-2660f67f","position":[-4.15,1.59,-0.55],"rotation":0},{"asset":"clothing-rail-and-wardrobe-suit-on-hanger-with-cover-56b00009","position":[-4.15,1.59,-0.31000000000000005],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-on-hanger-c0e0e17d","position":[-4.15,1.59,-0.07000000000000006],"rotation":0},{"asset":"clothing-rail-and-wardrobe-round-clothing-rail-9a401f56","position":[2.7,0.02,0.3],"rotation":0},{"asset":"clothing-rail-and-wardrobe-velvet-hanger-empty-166b4f0e","position":[2.7,1.49,0.7],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-962569c5","position":[2.983,1.49,0.583],"rotation":45},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-blue-de94ebc7","position":[3.1,1.49,0.3],"rotation":90},{"asset":"clothing-rail-and-wardrobe-blouse-on-hanger-63527161","position":[2.983,1.49,0.017],"rotation":135},{"asset":"clothing-rail-and-wardrobe-jumper-on-hanger-35cf7f37","position":[2.7,1.49,-0.1],"rotation":180},{"asset":"clothing-rail-and-wardrobe-hoodie-on-hanger-8ed88c32","position":[2.417,1.49,0.017],"rotation":225},{"asset":"clothing-rail-and-wardrobe-jacket-on-hanger-6b9e72e2","position":[2.3,1.49,0.3],"rotation":270},{"asset":"clothing-rail-and-wardrobe-coat-on-hanger-b22d8dff","position":[2.417,1.49,0.583],"rotation":315},{"asset":"clothing-rail-and-wardrobe-round-clothing-rail-9a401f56","position":[2.6,0.02,2.1],"rotation":0},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-8356864f","position":[2.6,1.49,2.5],"rotation":0},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-long-5d844a11","position":[2.883,1.49,2.383],"rotation":45},{"asset":"clothing-rail-and-wardrobe-trousers-on-clip-hanger-2660f67f","position":[3,1.49,2.1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-suit-on-hanger-with-cover-56b00009","position":[2.883,1.49,1.817],"rotation":135},{"asset":"clothing-rail-and-wardrobe-tshirt-on-hanger-c0e0e17d","position":[2.6,1.49,1.7],"rotation":180},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-962569c5","position":[2.317,1.49,1.817],"rotation":225},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-blue-de94ebc7","position":[2.2,1.49,2.1],"rotation":270},{"asset":"clothing-rail-and-wardrobe-blouse-on-hanger-63527161","position":[2.317,1.49,2.383],"rotation":315},{"asset":"clothing-rail-and-wardrobe-four-way-display-stand-380ad13e","position":[0.9,0.02,1.4],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jumper-on-hanger-35cf7f37","position":[1.09,1.53,1.4],"rotation":90},{"asset":"clothing-rail-and-wardrobe-hoodie-on-hanger-8ed88c32","position":[1.24,1.37,1.4],"rotation":90},{"asset":"clothing-rail-and-wardrobe-jacket-on-hanger-6b9e72e2","position":[0.71,1.53,1.4],"rotation":90},{"asset":"clothing-rail-and-wardrobe-coat-on-hanger-b22d8dff","position":[0.56,1.37,1.4],"rotation":90},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-8356864f","position":[0.9,1.53,1.59],"rotation":0},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-long-5d844a11","position":[0.9,1.37,1.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-trousers-on-clip-hanger-2660f67f","position":[0.9,1.53,1.21],"rotation":0},{"asset":"clothing-rail-and-wardrobe-suit-on-hanger-with-cover-56b00009","position":[0.9,1.37,1.06],"rotation":0},{"asset":"clothing-rail-and-wardrobe-wall-mounted-rail-bracket-18b51856","position":[-0.3,1.32,-2.95],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-on-hanger-c0e0e17d","position":[-0.54,1.45,-2.68],"rotation":90},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-962569c5","position":[-0.3,1.45,-2.68],"rotation":90},{"asset":"clothing-rail-and-wardrobe-shirt-on-hanger-blue-de94ebc7","position":[-0.06,1.45,-2.68],"rotation":90},{"asset":"clothing-rail-and-wardrobe-wall-mounted-rail-bracket-18b51856","position":[-2.1,1.32,2.95],"rotation":180},{"asset":"clothing-rail-and-wardrobe-blouse-on-hanger-63527161","position":[-2.34,1.45,2.68],"rotation":90},{"asset":"clothing-rail-and-wardrobe-jumper-on-hanger-35cf7f37","position":[-2.1,1.45,2.68],"rotation":90},{"asset":"clothing-rail-and-wardrobe-hoodie-on-hanger-8ed88c32","position":[-1.86,1.45,2.68],"rotation":90},{"asset":"clothing-rail-and-wardrobe-wall-mounted-rail-bracket-18b51856","position":[-1,1.32,2.95],"rotation":180},{"asset":"clothing-rail-and-wardrobe-jacket-on-hanger-6b9e72e2","position":[-1.24,1.45,2.68],"rotation":90},{"asset":"clothing-rail-and-wardrobe-coat-on-hanger-b22d8dff","position":[-1,1.45,2.68],"rotation":90},{"asset":"clothing-rail-and-wardrobe-dress-on-hanger-8356864f","position":[-0.76,1.45,2.68],"rotation":90},{"asset":"clothing-rail-and-wardrobe-fitting-room-cubicle-57625304","position":[-3.2,0.02,-2.45],"rotation":0},{"asset":"clothing-rail-and-wardrobe-fitting-room-cubicle-57625304","position":[-2.2,0.02,-2.45],"rotation":0},{"asset":"clothing-rail-and-wardrobe-fitting-room-cubicle-57625304","position":[-1.2,0.02,-2.45],"rotation":0},{"asset":"clothing-rail-and-wardrobe-folded-stock-shelving-bay-df39e5c8","position":[0.5,0.02,-2.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-folded-a3a7c296","position":[0.28,0.25,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-folded-navy-6c7584f9","position":[0.72,0.25,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-folded-ochre-6c903435","position":[0.28,0.6,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-polo-shirt-folded-06e26250","position":[0.72,0.6,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shirt-folded-16a055a2","position":[0.28,0.95,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jumper-folded-8bbd99f8","position":[0.72,0.95,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-hoodie-folded-09036d1a","position":[0.28,1.3,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jeans-folded-b1b8698f","position":[0.72,1.3,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shorts-folded-db8c3b29","position":[0.28,1.65,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-folded-tee-stack-83a30c41","position":[0.72,1.65,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-folded-stock-shelving-bay-df39e5c8","position":[1.5,0.02,-2.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-folded-jumper-stack-c2eaa64a","position":[1.28,0.25,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-socks-pair-rolled-19ba2865","position":[1.72,0.25,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-underwear-pack-2ea294f6","position":[1.28,0.6,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-scarf-folded-0b2eb18b","position":[1.72,0.6,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-towel-folded-1df928cc","position":[1.28,0.95,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-folded-a3a7c296","position":[1.72,0.95,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-folded-navy-6c7584f9","position":[1.28,1.3,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-folded-ochre-6c903435","position":[1.72,1.3,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-polo-shirt-folded-06e26250","position":[1.28,1.65,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shirt-folded-16a055a2","position":[1.72,1.65,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-folded-stock-shelving-bay-df39e5c8","position":[2.5,0.02,-2.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jumper-folded-8bbd99f8","position":[2.28,0.25,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-hoodie-folded-09036d1a","position":[2.72,0.25,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jeans-folded-b1b8698f","position":[2.28,0.6,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shorts-folded-db8c3b29","position":[2.72,0.6,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-folded-tee-stack-83a30c41","position":[2.28,0.95,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-folded-jumper-stack-c2eaa64a","position":[2.72,0.95,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-socks-pair-rolled-19ba2865","position":[2.28,1.3,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-underwear-pack-2ea294f6","position":[2.72,1.3,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-scarf-folded-0b2eb18b","position":[2.28,1.65,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-towel-folded-1df928cc","position":[2.72,1.65,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-folded-stock-shelving-bay-df39e5c8","position":[3.5,0.02,-2.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-folded-a3a7c296","position":[3.28,0.25,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-folded-navy-6c7584f9","position":[3.72,0.25,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-tshirt-folded-ochre-6c903435","position":[3.28,0.6,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-polo-shirt-folded-06e26250","position":[3.72,0.6,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shirt-folded-16a055a2","position":[3.28,0.95,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jumper-folded-8bbd99f8","position":[3.72,0.95,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-hoodie-folded-09036d1a","position":[3.28,1.3,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-jeans-folded-b1b8698f","position":[3.72,1.3,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shorts-folded-db8c3b29","position":[3.28,1.65,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-folded-tee-stack-83a30c41","position":[3.72,1.65,-2.74],"rotation":0},{"asset":"clothing-rail-and-wardrobe-wardrobe-with-hanging-space-14e38811","position":[4.15,0.02,-1.55],"rotation":90},{"asset":"clothing-rail-and-wardrobe-chest-of-drawers-3333eaf7","position":[4.22,0.02,-0.2],"rotation":90},{"asset":"clothing-rail-and-wardrobe-price-tag-set-a62e3b54","position":[4.15,0.91,-0.35],"rotation":0},{"asset":"clothing-rail-and-wardrobe-size-cube-set-aed858e7","position":[4.15,0.91,0],"rotation":0},{"asset":"clothing-rail-and-wardrobe-full-length-mirror-6e192a47","position":[4.22,0.02,1],"rotation":90},{"asset":"clothing-rail-and-wardrobe-laundry-basket-ee3faaa1","position":[4.2,0.02,2],"rotation":0},{"asset":"clothing-rail-and-wardrobe-shoe-rack-with-shoes-9f718b49","position":[3.5,0.02,2.6],"rotation":348.5},{"asset":"clothing-rail-and-wardrobe-folded-tee-stack-83a30c41","position":[4.15,0.91,0.15],"rotation":0},{"asset":"clothing-rail-and-wardrobe-accessory-display-table-71db13b4","position":[-3.3,0.02,1.85],"rotation":0},{"asset":"clothing-rail-and-wardrobe-scarf-folded-0b2eb18b","position":[-3.62,0.8,1.95],"rotation":0},{"asset":"clothing-rail-and-wardrobe-size-cube-set-aed858e7","position":[-3.3,0.8,2.05],"rotation":0},{"asset":"clothing-rail-and-wardrobe-underwear-pack-2ea294f6","position":[-3.3,0.8,1.7],"rotation":0},{"asset":"clothing-rail-and-wardrobe-socks-pair-rolled-19ba2865","position":[-3,0.8,2],"rotation":0},{"asset":"clothing-rail-and-wardrobe-price-tag-set-a62e3b54","position":[-2.98,0.8,1.7],"rotation":0},{"asset":"clothing-rail-and-wardrobe-towel-folded-1df928cc","position":[-3.6,0.8,1.7],"rotation":0},{"asset":"clothing-rail-and-wardrobe-full-length-mirror-6e192a47","position":[-4.2,0.02,0.8],"rotation":90},{"asset":"clothing-rail-and-wardrobe-laundry-basket-ee3faaa1","position":[-4.15,0.02,2.5],"rotation":0},{"asset":"clothing-rail-and-wardrobe-mannequin-full-form-e937795f","position":[-1.1,0.02,2.5],"rotation":22.9},{"asset":"clothing-rail-and-wardrobe-mannequin-torso-on-stand-3dd24adf","position":[-0.35,0.02,2.15],"rotation":342.8},{"asset":"clothing-rail-and-wardrobe-mannequin-torso-on-stand-3dd24adf","position":[1.5,0.02,2.6],"rotation":14.3},{"asset":"clothing-rail-and-wardrobe-mannequin-full-form-e937795f","position":[-0.25,0.02,-2.45],"rotation":200},{"asset":"clothing-rail-and-wardrobe-garment-steamer-aa0e2929","position":[0.95,0.02,-2.1],"rotation":28.7},{"asset":"clothing-rail-and-wardrobe-laundry-basket-ee3faaa1","position":[-4.2,0.02,-2.75],"rotation":0},{"asset":"clothing-rail-and-wardrobe-price-tag-set-a62e3b54","position":[-1.5,0.02,0],"rotation":0},{"asset":"clothing-rail-and-wardrobe-wooden-hanger-empty-c055f3a1","position":[-3.35,0.82,1.7],"rotation":12}],"points":[{"position":[-1.8,0.6,-0.1],"title":"The rails","text":"Five floor rails and two wall runs carry twelve hung garments: shirts, blouses, jumpers, a jacket, a coat, two dresses, clipped trousers and a suit under its cover, plus spare wooden, wire and velvet hangers.","asset":"clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268"},{"position":[2,0.6,-2.1],"title":"Folded stock","text":"Four shelving bays hold the folded range: tees in three colours, a polo, a collar band shirt, a jumper, a hoodie, jeans, shorts, socks, a multipack, a scarf, a towel and two ready made stacks.","asset":"clothing-rail-and-wardrobe-folded-stock-shelving-bay-df39e5c8"},{"position":[-0.8,0.6,2.2],"title":"Forms and the window","text":"Two full mannequin forms and two torso stands hold the front of the shop, with a bracket rail of garments hung in the window behind them.","asset":"clothing-rail-and-wardrobe-mannequin-full-form-e937795f"},{"position":[-2.2,0.6,-1.75],"title":"Fitting rooms","text":"Three cubicles line the back wall. Each one opens and closes its curtain rail door as you walk up to it.","asset":"clothing-rail-and-wardrobe-fitting-room-cubicle-57625304"},{"position":[3.5,0.6,-1],"title":"Wardrobe and drawers","text":"The homeware corner: a wardrobe with hanging space, a chest of drawers under price tags and size cubes, a shoe rack and a laundry basket. All four open.","asset":"clothing-rail-and-wardrobe-wardrobe-with-hanging-space-14e38811"},{"position":[-3.3,0.6,1.1],"title":"Accessories and mirror","text":"The accessory table takes scarves, socks, a multipack, size cubes and tags in its drawer, with a full length mirror beside it and a second in the homeware corner.","asset":"clothing-rail-and-wardrobe-accessory-display-table-71db13b4"}],"poster":{"position":[-3.4,1.6,2.2],"lookAt":[-0.5,0.8,-1.3]}},"bounds":{"min":[-6.5,0,-5],"max":[6.519987192735315,4.221201419607381,5.0224013874046705]},"assets":[{"id":"35478","slug":"clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","title":"Shop floor tile (Clothing Rail and Wardrobe)","summary":"A 1.5 m square of pale board flooring with proud joints and staggered end butts, so a field of tiles reads as laid boards rather than as one flat plane.","description":"A 1.5 m square of pale board flooring with proud joints and staggered end butts, so a field of tiles reads as laid boards rather than as one flat plane. Dimensions 1.50 by 0.02 by 1.50 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Connectors: tile-left, tile-right, tile-front, tile-back (type shop-floor). Couple the tiles on any of their four edges and a run repeats without a transition piece. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","cdnUrl":"https://cdn.3dassets.dev/assets/35478/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-shop-floor-tile-162f9b7b","thumbnailUrl":"https://cdn.3dassets.dev/assets/35478/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35478/v1/poster.webp","blurhash":"U8DcO3x[00bI%MaxRjof00M|~qV[9Goft7Rj","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"modular","title":"Modular"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":10348,"triangles":196,"vertices":450,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.75,0.000020447177831499352,-0.75],"max":[0.75,0.0239873652434798,0.75]},"sizeMeters":[1.5,0.024,1.5],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":1,"publishedAt":"2026-09-11T15:21:12.375Z","updatedAt":"2026-09-11T16:25:54.945Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35478/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShopFloorTileClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35478/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35478/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35478/v1/model.glb\" alt=\"Shop floor tile (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35478/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35478/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35462","slug":"clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","title":"Straight clothing rail on legs (Clothing Rail and Wardrobe)","summary":"A 1.2 m shop rail: a chrome top tube at 1.55 m between two braced chrome uprights on grey feet, with a lower stock bar for boxed or folded stock under the hanging garments.","description":"A 1.2 m shop rail: a chrome top tube at 1.55 m between two braced chrome uprights on grey feet, with a lower stock bar for boxed or folded stock under the hanging garments. Dimensions 1.23 by 1.57 by 0.56 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Connectors: rail-left, rail-right (type garment-rail). Couple the rails tube end to tube end on their ports and a run repeats without a transition piece. Hang garments at 1.566 m, the top of the tube. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","cdnUrl":"https://cdn.3dassets.dev/assets/35462/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-straight-clothing-rail-c3bbc268","thumbnailUrl":"https://cdn.3dassets.dev/assets/35462/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35462/v1/poster.webp","blurhash":"U69tM,xu00oz00%M-;9F00IA-;-;~qt7D%V@","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"modular","title":"Modular"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":35792,"triangles":800,"vertices":1758,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.614026046748433,-0.00001824984333950643,-0.2799641029109385],"max":[0.614026046748433,1.5679999589920044,0.2799641029109385]},"sizeMeters":[1.228,1.568,0.56],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:00.572Z","updatedAt":"2026-09-11T15:21:00.711Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35462/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StraightClothingRailOnLegsClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35462/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35462/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35462/v1/model.glb\" alt=\"Straight clothing rail on legs (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35462/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35462/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35447","slug":"clothing-rail-and-wardrobe-tshirt-on-hanger-c0e0e17d","title":"T shirt on a hanger (Clothing Rail and Wardrobe)","summary":"A terracotta t shirt hanging on a slim velvet hanger: a shaped shell with shoulders, a slight body taper, short sleeves with turned cuffs and a ribbed crew neck, in the settled shape a jersey tee takes on a rail.","description":"A terracotta t shirt hanging on a slim velvet hanger: a shaped shell with shoulders, a slight body taper, short sleeves with turned cuffs and a ribbed crew neck, in the settled shape a jersey tee takes on a rail. Dimensions 0.57 by 0.73 by 0.14 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-tshirt-on-hanger-c0e0e17d","cdnUrl":"https://cdn.3dassets.dev/assets/35447/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-tshirt-on-hanger-c0e0e17d","thumbnailUrl":"https://cdn.3dassets.dev/assets/35447/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35447/v1/poster.webp","blurhash":"UDEBsm-U00E2S$xaslIp0MR+}@xGM|WVt6af","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":44892,"triangles":1012,"vertices":2197,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.28558826628937933,-0.7239999771118164,-0.06998489247172572],"max":[0.28558826628937933,0.007262674160301685,0.06998489247172572]},"sizeMeters":[0.571,0.731,0.14],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:48.860Z","updatedAt":"2026-09-11T15:20:49.053Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35447/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TShirtOnAHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35447/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35447/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35447/v1/model.glb\" alt=\"T shirt on a hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35447/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35447/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35448","slug":"clothing-rail-and-wardrobe-shirt-on-hanger-962569c5","title":"Shirt on a hanger (Clothing Rail and Wardrobe)","summary":"An off white cotton shirt on a shaped beech hanger: shoulders, a straight body, long sleeves with cuffs, a stand collar and a buttoned placket down the front with five modelled buttons.","description":"An off white cotton shirt on a shaped beech hanger: shoulders, a straight body, long sleeves with cuffs, a stand collar and a buttoned placket down the front with five modelled buttons. Dimensions 0.62 by 0.85 by 0.15 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-shirt-on-hanger-962569c5","cdnUrl":"https://cdn.3dassets.dev/assets/35448/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-shirt-on-hanger-962569c5","thumbnailUrl":"https://cdn.3dassets.dev/assets/35448/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35448/v1/poster.webp","blurhash":"UED]o9%M00D%IUt7xuIU00Rj~qt7WBRjt7t7","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":59520,"triangles":1364,"vertices":2980,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.3118241924636659,-0.843999981880188,-0.07505796488783643],"max":[0.3118241924636659,0.007262674160301685,0.07505796488783643]},"sizeMeters":[0.624,0.851,0.15],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:51.344Z","updatedAt":"2026-09-11T15:20:51.473Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35448/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShirtOnAHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35448/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35448/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35448/v1/model.glb\" alt=\"Shirt on a hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35448/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35448/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35450","slug":"clothing-rail-and-wardrobe-shirt-on-hanger-blue-de94ebc7","title":"Shirt on a hanger, blue (Clothing Rail and Wardrobe)","summary":"The same shirt in navy with an off white collar and placket, so a rail of shirts is not one colour. Geometry and hanger are identical to the off white shirt.","description":"The same shirt in navy with an off white collar and placket, so a rail of shirts is not one colour. Geometry and hanger are identical to the off white shirt. Dimensions 0.62 by 0.85 by 0.15 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-shirt-on-hanger-blue-de94ebc7","cdnUrl":"https://cdn.3dassets.dev/assets/35450/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-shirt-on-hanger-blue-de94ebc7","thumbnailUrl":"https://cdn.3dassets.dev/assets/35450/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35450/v1/poster.webp","blurhash":"U67e3ix^00I9t2ozRkM_8wRP.AxvaeoMt8W-","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":59572,"triangles":1364,"vertices":2980,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.3118241924636659,-0.843999981880188,-0.07505796488783643],"max":[0.3118241924636659,0.007262674160301685,0.07505796488783643]},"sizeMeters":[0.624,0.851,0.15],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:51.685Z","updatedAt":"2026-09-11T15:20:51.804Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35450/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShirtOnAHangerBlueClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35450/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35450/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35450/v1/model.glb\" alt=\"Shirt on a hanger, blue (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35450/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35450/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35449","slug":"clothing-rail-and-wardrobe-blouse-on-hanger-63527161","title":"Blouse on a hanger (Clothing Rail and Wardrobe)","summary":"A chambray blouse in indigo on a velvet hanger: the shirt shell cut narrower at the shoulder and flared through the hem, with an off white collar, cuffs and placket.","description":"A chambray blouse in indigo on a velvet hanger: the shirt shell cut narrower at the shoulder and flared through the hem, with an off white collar, cuffs and placket. Dimensions 0.56 by 0.79 by 0.14 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-blouse-on-hanger-63527161","cdnUrl":"https://cdn.3dassets.dev/assets/35449/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-blouse-on-hanger-63527161","thumbnailUrl":"https://cdn.3dassets.dev/assets/35449/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35449/v1/poster.webp","blurhash":"UAAT.wx]00IAROt8bcMx00M_?w%Mjcoet7az","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":57724,"triangles":1300,"vertices":2841,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.28250536326413683,-0.7839999794960022,-0.06921288634392872],"max":[0.28250536326413683,0.007262674160301685,0.06921288634392872]},"sizeMeters":[0.565,0.791,0.138],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:51.656Z","updatedAt":"2026-09-11T15:20:51.788Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35449/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BlouseOnAHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35449/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35449/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35449/v1/model.glb\" alt=\"Blouse on a hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35449/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35449/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35451","slug":"clothing-rail-and-wardrobe-jumper-on-hanger-35cf7f37","title":"Jumper on a hanger (Clothing Rail and Wardrobe)","summary":"A mustard knitted jumper on a beech hanger: a broader, deeper shell than a shirt makes, with long sleeves, ribbed cuffs and a ribbed crew neck.","description":"A mustard knitted jumper on a beech hanger: a broader, deeper shell than a shirt makes, with long sleeves, ribbed cuffs and a ribbed crew neck. Dimensions 0.65 by 0.77 by 0.16 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-jumper-on-hanger-35cf7f37","cdnUrl":"https://cdn.3dassets.dev/assets/35451/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-jumper-on-hanger-35cf7f37","thumbnailUrl":"https://cdn.3dassets.dev/assets/35451/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35451/v1/poster.webp","blurhash":"UEEoo5%200E2NKxZt3Iq01NG~Ut6jFRkoft6","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":46928,"triangles":1076,"vertices":2351,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.3269970912953468,-0.7639999985694885,-0.08000937158341745],"max":[0.3269970912953468,0.007262674160301685,0.08000937158341745]},"sizeMeters":[0.654,0.771,0.16],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:51.820Z","updatedAt":"2026-09-11T15:20:51.953Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35451/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function JumperOnAHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35451/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35451/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35451/v1/model.glb\" alt=\"Jumper on a hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35451/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35451/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35452","slug":"clothing-rail-and-wardrobe-hoodie-on-hanger-8ed88c32","title":"Hoodie on a hanger (Clothing Rail and Wardrobe)","summary":"The jumper shell in sage with a hood standing behind the shoulders and off white cuffs, which is the same fixture load with a different silhouette on the rail.","description":"The jumper shell in sage with a hood standing behind the shoulders and off white cuffs, which is the same fixture load with a different silhouette on the rail. Dimensions 0.68 by 0.81 by 0.20 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-hoodie-on-hanger-8ed88c32","cdnUrl":"https://cdn.3dassets.dev/assets/35452/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-hoodie-on-hanger-8ed88c32","thumbnailUrl":"https://cdn.3dassets.dev/assets/35452/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35452/v1/poster.webp","blurhash":"U9DJbM.7008{tQxuM{IU00IU_MxvkCRjoLt7","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":45824,"triangles":1028,"vertices":2247,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.3424000144004822,-0.8040000200271606,-0.11050686141072491],"max":[0.3424000144004822,0.007262674160301685,0.08500686188756207]},"sizeMeters":[0.685,0.811,0.196],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:54.331Z","updatedAt":"2026-09-11T15:20:54.459Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35452/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HoodieOnAHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35452/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35452/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35452/v1/model.glb\" alt=\"Hoodie on a hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35452/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35452/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35454","slug":"clothing-rail-and-wardrobe-jacket-on-hanger-6b9e72e2","title":"Jacket on a hanger (Clothing Rail and Wardrobe)","summary":"A navy jacket on a beech hanger with open lapels, a full length zip with a modelled pull and two patch pockets, cut a little fuller than a shirt so it reads as outerwear on a rail.","description":"A navy jacket on a beech hanger with open lapels, a full length zip with a modelled pull and two patch pockets, cut a little fuller than a shirt so it reads as outerwear on a rail. Dimensions 0.67 by 0.83 by 0.17 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-jacket-on-hanger-6b9e72e2","cdnUrl":"https://cdn.3dassets.dev/assets/35454/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-jacket-on-hanger-6b9e72e2","thumbnailUrl":"https://cdn.3dassets.dev/assets/35454/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35454/v1/poster.webp","blurhash":"U67xI7x^00Dioft8M{M_4TM_.A%MS4Wm%Lxb","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":52992,"triangles":1188,"vertices":2635,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.33320000767707825,-0.8240000009536743,-0.08000245588320082],"max":[0.33320000767707825,0.007262674160301685,0.09401148014058089]},"sizeMeters":[0.666,0.831,0.174],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:54.479Z","updatedAt":"2026-09-11T15:20:54.593Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35454/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function JacketOnAHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35454/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35454/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35454/v1/model.glb\" alt=\"Jacket on a hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35454/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35454/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35453","slug":"clothing-rail-and-wardrobe-coat-on-hanger-b22d8dff","title":"Coat on a hanger (Clothing Rail and Wardrobe)","summary":"A terracotta knee length coat on a beech hanger: a long flared shell with lapels, a double row of six buttons and a belt across the back, the tallest garment on a shop rail.","description":"A terracotta knee length coat on a beech hanger: a long flared shell with lapels, a double row of six buttons and a belt across the back, the tallest garment on a shop rail. Dimensions 0.68 by 1.18 by 0.17 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-coat-on-hanger-b22d8dff","cdnUrl":"https://cdn.3dassets.dev/assets/35453/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-coat-on-hanger-b22d8dff","thumbnailUrl":"https://cdn.3dassets.dev/assets/35453/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35453/v1/poster.webp","blurhash":"UADk[B-o0057S4ocn$Rn0LRj~Axta#j]s:WA","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":54260,"triangles":1236,"vertices":2699,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.3424013874046708,-1.1740000247955322,-0.0849789136875013],"max":[0.3424013874046708,0.007262674160301685,0.09001108179515845]},"sizeMeters":[0.685,1.181,0.175],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:54.460Z","updatedAt":"2026-09-11T15:20:54.584Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35453/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CoatOnAHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35453/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35453/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35453/v1/model.glb\" alt=\"Coat on a hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35453/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35453/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35455","slug":"clothing-rail-and-wardrobe-dress-on-hanger-8356864f","title":"Dress on a hanger (Clothing Rail and Wardrobe)","summary":"A terracotta knee length dress on a velvet hanger: a sleeveless shell flared from a corded waist seam, on two shoulder straps, in the settled shape a light dress takes hanging.","description":"A terracotta knee length dress on a velvet hanger: a sleeveless shell flared from a corded waist seam, on two shoulder straps, in the settled shape a light dress takes hanging. Dimensions 0.46 by 1.00 by 0.13 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-dress-on-hanger-8356864f","cdnUrl":"https://cdn.3dassets.dev/assets/35455/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-dress-on-hanger-8356864f","thumbnailUrl":"https://cdn.3dassets.dev/assets/35455/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35455/v1/poster.webp","blurhash":"UACP6H%1009u9^ju-SWU0MRk~A%1ozbHjYn$","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":37148,"triangles":780,"vertices":1751,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.22950107356283916,-0.9900000095367432,-0.06600998101059226],"max":[0.22950107356283916,0.007262674160301685,0.06600998101059226]},"sizeMeters":[0.459,0.997,0.132],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:54.624Z","updatedAt":"2026-09-11T15:20:54.852Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35455/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DressOnAHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35455/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35455/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35455/v1/model.glb\" alt=\"Dress on a hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35455/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35455/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35456","slug":"clothing-rail-and-wardrobe-dress-on-hanger-long-5d844a11","title":"Long dress on a hanger (Clothing Rail and Wardrobe)","summary":"The same dress cut to the floor in navy, with a wider skirt flare, for the long end of a rail or a fitting room hook. It needs a rail at least 1.4 m clear of the floor.","description":"The same dress cut to the floor in navy, with a wider skirt flare, for the long end of a rail or a fitting room hook. It needs a rail at least 1.4 m clear of the floor. Dimensions 0.54 by 1.30 by 0.13 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-dress-on-hanger-long-5d844a11","cdnUrl":"https://cdn.3dassets.dev/assets/35456/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-dress-on-hanger-long-5d844a11","thumbnailUrl":"https://cdn.3dassets.dev/assets/35456/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35456/v1/poster.webp","blurhash":"U35}?q%N00DhDzbY%OaL4TRP?wyD%Lt8RkRO","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":36396,"triangles":780,"vertices":1751,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.27196575813346735,-1.2899999618530273,-0.06598946109296318],"max":[0.27196575813346735,0.007262674160301685,0.06598946109296318]},"sizeMeters":[0.544,1.297,0.132],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:57.085Z","updatedAt":"2026-09-11T15:20:57.190Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35456/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LongDressOnAHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35456/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35456/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35456/v1/model.glb\" alt=\"Long dress on a hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35456/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35456/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35459","slug":"clothing-rail-and-wardrobe-wooden-hanger-empty-c055f3a1","title":"Wooden hanger (Clothing Rail and Wardrobe)","summary":"An empty shaped beech hanger with a chrome hook, a trouser bar under the shoulder line and a blank swing ticket on a thread, for stocking a rail or filling a wardrobe.","description":"An empty shaped beech hanger with a chrome hook, a trouser bar under the shoulder line and a blank swing ticket on a thread, for stocking a rail or filling a wardrobe. Dimensions 0.42 by 0.20 by 0.02 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-wooden-hanger-empty-c055f3a1","cdnUrl":"https://cdn.3dassets.dev/assets/35459/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-wooden-hanger-empty-c055f3a1","thumbnailUrl":"https://cdn.3dassets.dev/assets/35459/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35459/v1/poster.webp","blurhash":"UAC?ZGRR9F%M01~Vt6M{004o-:Rj_24:D*xu","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":25828,"triangles":516,"vertices":1186,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.20999999344348907,-0.19598931481517565,-0.007511215317721159],"max":[0.20999999344348907,0.007262674160301685,0.014969569138641857]},"sizeMeters":[0.42,0.203,0.022],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:57.610Z","updatedAt":"2026-09-11T15:20:57.736Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35459/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WoodenHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35459/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35459/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35459/v1/model.glb\" alt=\"Wooden hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35459/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35459/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35457","slug":"clothing-rail-and-wardrobe-trousers-on-clip-hanger-2660f67f","title":"Trousers on a clip hanger (Clothing Rail and Wardrobe)","summary":"A pair of navy trousers hung upside down from a beech clip hanger: two sprung clips with rubber pads on the hems, two tapered legs with a pressed crease each and the waistband and belt at the bottom.","description":"A pair of navy trousers hung upside down from a beech clip hanger: two sprung clips with rubber pads on the hems, two tapered legs with a pressed crease each and the waistband and belt at the bottom. Dimensions 0.36 by 0.91 by 0.12 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. The clips are modelled closed and do not open. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-trousers-on-clip-hanger-2660f67f","cdnUrl":"https://cdn.3dassets.dev/assets/35457/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-trousers-on-clip-hanger-2660f67f","thumbnailUrl":"https://cdn.3dassets.dev/assets/35457/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35457/v1/poster.webp","blurhash":"U26b4K.A0000}}xt5cD+HqacyGX9I9oKx^NH","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":57256,"triangles":1304,"vertices":2857,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.18000000715255737,-0.8999999761581421,-0.060007017056135134],"max":[0.18000000715255737,0.0072662242030881175,0.060007017056135134]},"sizeMeters":[0.36,0.907,0.12],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:57.414Z","updatedAt":"2026-09-11T15:20:57.520Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35457/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrousersOnAClipHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35457/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35457/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35457/v1/model.glb\" alt=\"Trousers on a clip hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35457/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35457/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35458","slug":"clothing-rail-and-wardrobe-suit-on-hanger-with-cover-56b00009","title":"Suit on a hanger under a cover (Clothing Rail and Wardrobe)","summary":"A navy suit jacket on a beech hanger inside a clear polythene garment cover, open at the hem, with a blank card panel on the front: how a shop or a wardrobe keeps tailoring.","description":"A navy suit jacket on a beech hanger inside a clear polythene garment cover, open at the hem, with a blank card panel on the front: how a shop or a wardrobe keeps tailoring. Dimensions 0.67 by 0.95 by 0.28 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. The cover is a fixed shell around the garment and does not lift off. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-suit-on-hanger-with-cover-56b00009","cdnUrl":"https://cdn.3dassets.dev/assets/35458/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-suit-on-hanger-with-cover-56b00009","thumbnailUrl":"https://cdn.3dassets.dev/assets/35458/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35458/v1/poster.webp","blurhash":"U6BWuk-;00Di9YkCxuV?00M{.Axu9Zof_2j?","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":53036,"triangles":1190,"vertices":2579,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.33320000767707825,-0.9399999976158142,-0.13998840280046812],"max":[0.33320000767707825,0.007262674160301685,0.14299697330616665]},"sizeMeters":[0.666,0.947,0.283],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:57.494Z","updatedAt":"2026-09-11T15:20:57.629Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35458/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SuitOnAHangerUnderACoverClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35458/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35458/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35458/v1/model.glb\" alt=\"Suit on a hanger under a cover (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35458/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35458/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35460","slug":"clothing-rail-and-wardrobe-wire-hanger-empty-7ddfa34c","title":"Wire hanger (Clothing Rail and Wardrobe)","summary":"The drawn wire hanger a dry cleaner returns a shirt on: one continuous wire from the hook through the shoulder line and the bottom bar, with no ticket.","description":"The drawn wire hanger a dry cleaner returns a shirt on: one continuous wire from the hook through the shoulder line and the bottom bar, with no ticket. Dimensions 0.42 by 0.19 by 0.01 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-wire-hanger-empty-7ddfa34c","cdnUrl":"https://cdn.3dassets.dev/assets/35460/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-wire-hanger-empty-7ddfa34c","thumbnailUrl":"https://cdn.3dassets.dev/assets/35460/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35460/v1/poster.webp","blurhash":"U26kYMD$00x]00_4IURi004n_3M{~qITWBt8","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":10832,"triangles":216,"vertices":518,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.21061858534812927,-0.18725581764538485,-0.0031562808002001492],"max":[0.2122516632080078,0.007266819656982004,0.0035028899586415736]},"sizeMeters":[0.423,0.195,0.007],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:59.884Z","updatedAt":"2026-09-11T15:21:00.057Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35460/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WireHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35460/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35460/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35460/v1/model.glb\" alt=\"Wire hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35460/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35460/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35463","slug":"clothing-rail-and-wardrobe-round-clothing-rail-9a401f56","title":"Round clothing rail (Clothing Rail and Wardrobe)","summary":"A 0.9 m diameter round rail on a weighted grey column: a chrome ring on four spokes and a hub, at 1.44 m, the fixture a shop puts a promotion or a size run on.","description":"A 0.9 m diameter round rail on a weighted grey column: a chrome ring on four spokes and a hub, at 1.44 m, the fixture a shop puts a promotion or a size run on. Dimensions 0.93 by 1.47 by 0.93 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Named pivoted nodes: rail-spin. The ring, its spokes and the hub are one node and turn together on the column. Hang garments at 1.456 m, the top of the ring. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Rigid node-transform clips: spin. No skinning. No collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-round-clothing-rail-9a401f56","cdnUrl":"https://cdn.3dassets.dev/assets/35463/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-round-clothing-rail-9a401f56","thumbnailUrl":"https://cdn.3dassets.dev/assets/35463/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35463/v1/poster.webp","blurhash":"U18;Y~?v0000~WRPf,.8kVWB-;xa~q%M004n","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"animated","title":"Animated"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":38376,"triangles":892,"vertices":1864,"meshes":3,"materials":2,"textures":0,"animations":["spin"],"boundingBox":{"min":[-0.4659999907016754,0,-0.4634400981779076],"max":[0.4659999907016754,1.469973167100852,0.4634400981779076]},"sizeMeters":[0.932,1.47,0.927],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:00.575Z","updatedAt":"2026-09-11T15:21:00.742Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35463/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function RoundClothingRailClothingRailAndWardrobe(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/35463/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35463/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35463/v1/model.glb\" alt=\"Round clothing rail (Clothing Rail and Wardrobe)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35463/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35463/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"35461","slug":"clothing-rail-and-wardrobe-velvet-hanger-empty-166b4f0e","title":"Velvet hanger (Clothing Rail and Wardrobe)","summary":"The slim flocked hanger a wardrobe is filled with: a thin navy flocked bar with a moulded shoulder notch each side to stop a strap sliding off, on a chrome hook.","description":"The slim flocked hanger a wardrobe is filled with: a thin navy flocked bar with a moulded shoulder notch each side to stop a strap sliding off, on a chrome hook. Dimensions 0.42 by 0.15 by 0.01 m (X by Y by Z). Metre units, +Y up, front toward +Z. The origin is free and sits at the point where the hook rests down on a rail, so placing it at a rail top hangs it on the rail. It hangs on its hanger: the whole model, garment and hanger together, sits below the origin, so dropping it at a rail top puts it on the rail. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-velvet-hanger-empty-166b4f0e","cdnUrl":"https://cdn.3dassets.dev/assets/35461/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-velvet-hanger-empty-166b4f0e","thumbnailUrl":"https://cdn.3dassets.dev/assets/35461/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35461/v1/poster.webp","blurhash":"U36H_%RO4U%N8^?wROM{008^?wjD%iIAMwxw","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":18348,"triangles":364,"vertices":831,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.20999999344348907,-0.13900822376876193,-0.007506088341443355],"max":[0.20999999344348907,0.007262674160301685,0.007506088341443355]},"sizeMeters":[0.42,0.146,0.015],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:00.291Z","updatedAt":"2026-09-11T15:21:00.417Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35461/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function VelvetHangerClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35461/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35461/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35461/v1/model.glb\" alt=\"Velvet hanger (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35461/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35461/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35465","slug":"clothing-rail-and-wardrobe-four-way-display-stand-380ad13e","title":"Four way display stand (Clothing Rail and Wardrobe)","summary":"The stand that faces four ways at once: a chrome post on a four arm grey cross base, with two pairs of straight arms at 1.34 m and 1.5 m, each with an upturned end stop, under a blank sign panel.","description":"The stand that faces four ways at once: a chrome post on a four arm grey cross base, with two pairs of straight arms at 1.34 m and 1.5 m, each with an upturned end stop, under a blank sign panel. Dimensions 0.96 by 1.74 by 0.95 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Hang garments at 1.352 m and 1.512 m, the tops of the arms. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-four-way-display-stand-380ad13e","cdnUrl":"https://cdn.3dassets.dev/assets/35465/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-four-way-display-stand-380ad13e","thumbnailUrl":"https://cdn.3dassets.dev/assets/35465/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35465/v1/poster.webp","blurhash":"U27BDv%M009FDioftSM{~qxu00IUV@ofxuWB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":51956,"triangles":1280,"vertices":2536,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.4780352115224661,-0.0000010080719735306928,-0.47714529179887477],"max":[0.4780352115224661,1.7400082197323068,0.47714529179887477]},"sizeMeters":[0.956,1.74,0.954],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:03.208Z","updatedAt":"2026-09-11T15:21:03.318Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35465/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FourWayDisplayStandClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35465/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35465/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35465/v1/model.glb\" alt=\"Four way display stand (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35465/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35465/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35464","slug":"clothing-rail-and-wardrobe-wall-mounted-rail-bracket-18b51856","title":"Wall mounted rail bracket (Clothing Rail and Wardrobe)","summary":"A 0.7 m grey backplate on six fixings carrying two braced arms and a 0.66 m chrome tube 270 mm off the wall, for a shop wall, a stock room or a bedroom alcove.","description":"A 0.7 m grey backplate on six fixings carrying two braced arms and a 0.66 m chrome tube 270 mm off the wall, for a shop wall, a stock room or a bedroom alcove. Dimensions 0.71 by 0.24 by 0.28 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The model rests on the bottom edge of its backplate at y=0; mount it by placing the plate against a wall at about 1.3 m. The tube sits 0.12 m above the plate foot. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-wall-mounted-rail-bracket-18b51856","cdnUrl":"https://cdn.3dassets.dev/assets/35464/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-wall-mounted-rail-bracket-18b51856","thumbnailUrl":"https://cdn.3dassets.dev/assets/35464/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35464/v1/poster.webp","blurhash":"U8BzIMD%00t7_4%ND%D$00%MM{M{00RQ%Mt7","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":33280,"triangles":768,"vertices":1659,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.3619999885559082,6.106213177592412e-7,-0.00999022517878545],"max":[0.3499999940395355,0.2399993840142642,0.2699902361311389]},"sizeMeters":[0.712,0.24,0.28],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:02.872Z","updatedAt":"2026-09-11T15:21:03.004Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35464/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WallMountedRailBracketClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35464/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35464/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35464/v1/model.glb\" alt=\"Wall mounted rail bracket (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35464/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35464/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35475","slug":"clothing-rail-and-wardrobe-fitting-room-cubicle-57625304","title":"Fitting room cubicle (Clothing Rail and Wardrobe)","summary":"A 1 m by 2.2 m fitting room: two painted side panels and a back panel, a louvred oak door on a real hinge, a mirror, a hook rail, a bench and a chrome head rail carrying six curtain rings.","description":"A 1 m by 2.2 m fitting room: two painted side panels and a back panel, a louvred oak door on a real hinge, a mirror, a hook rail, a bench and a chrome head rail carrying six curtain rings. Dimensions 1.00 by 2.20 by 1.06 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Named pivoted nodes: cubicle-door. Connectors: cubicle-left, cubicle-right (type fitting-cubicle). Couple the cubicles side panel to side panel on their ports and a run repeats without a transition piece. The head rail carries its rings and no curtain, because draped cloth is not modelled in this library. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Rigid node-transform clips: open and close. No skinning. No collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-fitting-room-cubicle-57625304","cdnUrl":"https://cdn.3dassets.dev/assets/35475/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-fitting-room-cubicle-57625304","thumbnailUrl":"https://cdn.3dassets.dev/assets/35475/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35475/v1/poster.webp","blurhash":"UAF$R;RO00%h~qj@9FWB01M|-:%1?bWBE1j]","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"modular","title":"Modular"},{"slug":"animated","title":"Animated"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":96572,"triangles":2240,"vertices":4820,"meshes":6,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.4999633886250432,0,-0.524939737321547],"max":[0.4999633886250432,2.20120141960738,0.5332601951186641]},"sizeMeters":[1,2.201,1.058],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:09.522Z","updatedAt":"2026-09-11T15:21:09.627Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35475/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function FittingRoomCubicleClothingRailAndWardrobe(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/35475/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35475/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35475/v1/model.glb\" alt=\"Fitting room cubicle (Clothing Rail and Wardrobe)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35475/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35475/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"35467","slug":"clothing-rail-and-wardrobe-folded-stock-shelving-bay-df39e5c8","title":"Shelving bay for folded stock (Clothing Rail and Wardrobe)","summary":"A 1 m by 2 m stock bay on slotted grey uprights: five oak decks at 0.35 m centres over a kick plinth, a painted backing panel and a blank header board, which is what folded garments are merchandised on.","description":"A 1 m by 2 m stock bay on slotted grey uprights: five oak decks at 0.35 m centres over a kick plinth, a painted backing panel and a blank header board, which is what folded garments are merchandised on. Dimensions 1.00 by 2.00 by 0.45 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Connectors: bay-left, bay-right (type stock-bay). Couple the bays on their uprights and a run repeats without a transition piece. Deck tops are at 0.23, 0.58, 0.93, 1.28 and 1.63 m. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-folded-stock-shelving-bay-df39e5c8","cdnUrl":"https://cdn.3dassets.dev/assets/35467/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-folded-stock-shelving-bay-df39e5c8","thumbnailUrl":"https://cdn.3dassets.dev/assets/35467/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35467/v1/poster.webp","blurhash":"U4ECqK~V0001_3%MD$9F01R-^$r;-;%MM{9F","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"modular","title":"Modular"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":55792,"triangles":1232,"vertices":2794,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.50007629627369,0,-0.2249824518570513],"max":[0.50007629627369,2,0.2249824518570513]},"sizeMeters":[1,2,0.45],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:03.461Z","updatedAt":"2026-09-11T15:21:03.556Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35467/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShelvingBayForFoldedStockClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35467/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35467/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35467/v1/model.glb\" alt=\"Shelving bay for folded stock (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35467/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35467/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35435","slug":"clothing-rail-and-wardrobe-tshirt-folded-a3a7c296","title":"Folded t shirt (Clothing Rail and Wardrobe)","summary":"A t shirt folded the way a shop folds one for a shelf: a soft off white block with the sleeves turned in, a fold edge across the top, a ribbed crew collar notch at the back and a blank neck label.","description":"A t shirt folded the way a shop folds one for a shelf: a soft off white block with the sleeves turned in, a fold edge across the top, a ribbed crew collar notch at the back and a blank neck label. Dimensions 0.30 by 0.07 by 0.26 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-tshirt-folded-a3a7c296","cdnUrl":"https://cdn.3dassets.dev/assets/35435/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-tshirt-folded-a3a7c296","thumbnailUrl":"https://cdn.3dassets.dev/assets/35435/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35435/v1/poster.webp","blurhash":"UAFYx]-;00jF-;tQR*V@00IU~qRk4.MyjZkC","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":21404,"triangles":518,"vertices":1016,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.15000000596046448,0.00000702976058584992,-0.1300042777572323],"max":[0.15000000596046448,0.06651296825338739,0.1300042777572323]},"sizeMeters":[0.3,0.067,0.26],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:39.897Z","updatedAt":"2026-09-11T15:20:39.995Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35435/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedTShirtClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35435/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35435/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35435/v1/model.glb\" alt=\"Folded t shirt (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35435/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35435/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35432","slug":"clothing-rail-and-wardrobe-tshirt-folded-navy-6c7584f9","title":"Folded t shirt, navy (Clothing Rail and Wardrobe)","summary":"The same folded tee in navy with an off white collar rib, for stacking a shelf in more than one colour. Geometry is identical to the off white tee.","description":"The same folded tee in navy with an off white collar rib, for stacking a shelf in more than one colour. Geometry is identical to the off white tee. Dimensions 0.30 by 0.07 by 0.26 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-tshirt-folded-navy-6c7584f9","cdnUrl":"https://cdn.3dassets.dev/assets/35432/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-tshirt-folded-navy-6c7584f9","thumbnailUrl":"https://cdn.3dassets.dev/assets/35432/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35432/v1/poster.webp","blurhash":"U47_Wu%h00s:yDogRit500Mw.ANFDhR%xbIV","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":21436,"triangles":518,"vertices":1016,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.15000000596046448,0.00000702976058584992,-0.1300042777572323],"max":[0.15000000596046448,0.06651296825338739,0.1300042777572323]},"sizeMeters":[0.3,0.067,0.26],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:39.682Z","updatedAt":"2026-09-11T15:20:39.803Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35432/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedTShirtNavyClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35432/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35432/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35432/v1/model.glb\" alt=\"Folded t shirt, navy (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35432/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35432/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35434","slug":"clothing-rail-and-wardrobe-tshirt-folded-ochre-6c903435","title":"Folded t shirt, mustard (Clothing Rail and Wardrobe)","summary":"The same folded tee in mustard with an off white collar rib, the third colourway in the range. Geometry is identical to the off white tee.","description":"The same folded tee in mustard with an off white collar rib, the third colourway in the range. Geometry is identical to the off white tee. Dimensions 0.30 by 0.07 by 0.26 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-tshirt-folded-ochre-6c903435","cdnUrl":"https://cdn.3dassets.dev/assets/35434/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-tshirt-folded-ochre-6c903435","thumbnailUrl":"https://cdn.3dassets.dev/assets/35434/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35434/v1/poster.webp","blurhash":"UAF5+.-:00f5-ot5RkWF00IV~UR*9aM}ofad","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":21444,"triangles":518,"vertices":1016,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.15000000596046448,0.00000702976058584992,-0.1300042777572323],"max":[0.15000000596046448,0.06651296825338739,0.1300042777572323]},"sizeMeters":[0.3,0.067,0.26],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:39.814Z","updatedAt":"2026-09-11T15:20:39.943Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35434/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedTShirtMustardClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35434/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35434/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35434/v1/model.glb\" alt=\"Folded t shirt, mustard (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35434/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35434/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35433","slug":"clothing-rail-and-wardrobe-polo-shirt-folded-06e26250","title":"Folded polo shirt (Clothing Rail and Wardrobe)","summary":"The folded tee with a polo collar band and a three button placket lying on the front, in mustard with an off white trim, so a shelf can carry two garment types without a second block.","description":"The folded tee with a polo collar band and a three button placket lying on the front, in mustard with an off white trim, so a shelf can carry two garment types without a second block. Dimensions 0.30 by 0.08 by 0.26 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-polo-shirt-folded-06e26250","cdnUrl":"https://cdn.3dassets.dev/assets/35433/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-polo-shirt-folded-06e26250","thumbnailUrl":"https://cdn.3dassets.dev/assets/35433/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35433/v1/poster.webp","blurhash":"U8Fh|e?G00jZ-pxYV@S500E2~oNG4.ItoyaJ","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":30944,"triangles":742,"vertices":1527,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.15000000596046448,0.000012185631710008582,-0.1300042777572323],"max":[0.15000000596046448,0.07660305578425669,0.1300042777572323]},"sizeMeters":[0.3,0.077,0.26],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:39.831Z","updatedAt":"2026-09-11T15:20:39.954Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35433/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedPoloShirtClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35433/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35433/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35433/v1/model.glb\" alt=\"Folded polo shirt (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35433/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35433/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35436","slug":"clothing-rail-and-wardrobe-shirt-folded-16a055a2","title":"Folded shirt with a collar band (Clothing Rail and Wardrobe)","summary":"A dress shirt folded flat over its board: a low off white block with the collar stood up in a navy band, two blank presentation clips on the front and a fold edge across the middle.","description":"A dress shirt folded flat over its board: a low off white block with the collar stood up in a navy band, two blank presentation clips on the front and a fold edge across the middle. Dimensions 0.31 by 0.06 by 0.24 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. The board and the collar band are modelled, the pins are not. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-shirt-folded-16a055a2","cdnUrl":"https://cdn.3dassets.dev/assets/35436/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-shirt-folded-16a055a2","thumbnailUrl":"https://cdn.3dassets.dev/assets/35436/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35436/v1/poster.webp","blurhash":"U9EfTj?b00IVxv%Mt6IU00D*~qt5IT9FE1-:","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":31592,"triangles":762,"vertices":1561,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.1550000011920929,0.000007095192995774241,-0.11999527055390546],"max":[0.1550000011920929,0.059504347448369264,0.11999527055390546]},"sizeMeters":[0.31,0.059,0.24],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:42.750Z","updatedAt":"2026-09-11T15:20:42.890Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35436/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedShirtWithACollarBandClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35436/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35436/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35436/v1/model.glb\" alt=\"Folded shirt with a collar band (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35436/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35436/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35438","slug":"clothing-rail-and-wardrobe-jumper-folded-8bbd99f8","title":"Folded jumper (Clothing Rail and Wardrobe)","summary":"A knitted jumper folded into a deeper, softer navy block than a tee makes, with ribs running across the top face, a crew collar notch and a blank neck label.","description":"A knitted jumper folded into a deeper, softer navy block than a tee makes, with ribs running across the top face, a crew collar notch and a blank neck label. Dimensions 0.32 by 0.10 by 0.28 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-jumper-folded-8bbd99f8","cdnUrl":"https://cdn.3dassets.dev/assets/35438/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-jumper-folded-8bbd99f8","thumbnailUrl":"https://cdn.3dassets.dev/assets/35438/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35438/v1/poster.webp","blurhash":"U47_Z*.A00m+%NozRPWV00IS%PNZISWVj]RP","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":40556,"triangles":966,"vertices":2045,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.1599999964237213,-0.000006407024201557365,-0.13999938650058028],"max":[0.1599999964237213,0.10000640851431768,0.13999938650058028]},"sizeMeters":[0.32,0.1,0.28],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:42.772Z","updatedAt":"2026-09-11T15:20:42.924Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35438/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedJumperClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35438/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35438/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35438/v1/model.glb\" alt=\"Folded jumper (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35438/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35438/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35439","slug":"clothing-rail-and-wardrobe-hoodie-folded-09036d1a","title":"Folded hoodie (Clothing Rail and Wardrobe)","summary":"The folded jumper block in sage with the hood folded back over the top of it and the two drawcords lying loose across the front, which is what makes a folded hoodie read as a hoodie.","description":"The folded jumper block in sage with the hood folded back over the top of it and the two drawcords lying loose across the front, which is what makes a folded hoodie read as a hoodie. Dimensions 0.32 by 0.16 by 0.28 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-hoodie-folded-09036d1a","cdnUrl":"https://cdn.3dassets.dev/assets/35439/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-hoodie-folded-09036d1a","thumbnailUrl":"https://cdn.3dassets.dev/assets/35439/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35439/v1/poster.webp","blurhash":"U4E:C?_N00x@ogNFM{%M004n~pjHE0xu%MD%","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":24036,"triangles":570,"vertices":1160,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.1599999964237213,-0.000003296744007799668,-0.13999938650058028],"max":[0.1599999964237213,0.1554630774163658,0.13999938650058028]},"sizeMeters":[0.32,0.155,0.28],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:42.777Z","updatedAt":"2026-09-11T15:20:42.926Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35439/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedHoodieClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35439/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35439/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35439/v1/model.glb\" alt=\"Folded hoodie (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35439/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35439/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35437","slug":"clothing-rail-and-wardrobe-jeans-folded-b1b8698f","title":"Folded jeans (Clothing Rail and Wardrobe)","summary":"A pair of indigo jeans folded in half and then in three: the waistband and four belt loops stand along the back edge, the fly seam and two back pockets are picked out in ochre stitching, and the waistband carries a blank patch.","description":"A pair of indigo jeans folded in half and then in three: the waistband and four belt loops stand along the back edge, the fly seam and two back pockets are picked out in ochre stitching, and the waistband carries a blank patch. Dimensions 0.34 by 0.10 by 0.26 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-jeans-folded-b1b8698f","cdnUrl":"https://cdn.3dassets.dev/assets/35437/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-jeans-folded-b1b8698f","thumbnailUrl":"https://cdn.3dassets.dev/assets/35437/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35437/v1/poster.webp","blurhash":"U4BzkI.800t7_NoNIoNF00IT_4My00tOr:R6","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":35384,"triangles":826,"vertices":1725,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.17000000178813934,0.0000010876649375740621,-0.1320003965220886],"max":[0.17000000178813934,0.10389891278805773,0.13000976729053573]},"sizeMeters":[0.34,0.104,0.262],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:42.753Z","updatedAt":"2026-09-11T15:20:42.911Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35437/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedJeansClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35437/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35437/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35437/v1/model.glb\" alt=\"Folded jeans (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35437/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35437/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35440","slug":"clothing-rail-and-wardrobe-shorts-folded-db8c3b29","title":"Folded shorts (Clothing Rail and Wardrobe)","summary":"The same fold in a shallower, shorter block for denim shorts, with the same waistband, belt loops, ochre stitching and blank patch, for the summer end of a folded stock bay.","description":"The same fold in a shallower, shorter block for denim shorts, with the same waistband, belt loops, ochre stitching and blank patch, for the summer end of a folded stock bay. Dimensions 0.34 by 0.08 by 0.20 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-shorts-folded-db8c3b29","cdnUrl":"https://cdn.3dassets.dev/assets/35440/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-shorts-folded-db8c3b29","thumbnailUrl":"https://cdn.3dassets.dev/assets/35440/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35440/v1/poster.webp","blurhash":"U6BgPb-;00oH-;%NRkIT00RP_NMy4.D$s*tR","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":35392,"triangles":826,"vertices":1725,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.17000000178813934,0.000006373337536134949,-0.10200039532999569],"max":[0.17000000178813934,0.07824362505313845,0.09999633883067104]},"sizeMeters":[0.34,0.078,0.202],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:45.621Z","updatedAt":"2026-09-11T15:20:45.741Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35440/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedShortsClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35440/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35440/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35440/v1/model.glb\" alt=\"Folded shorts (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35440/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35440/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35441","slug":"clothing-rail-and-wardrobe-folded-tee-stack-83a30c41","title":"Stack of five folded t shirts (Clothing Rail and Wardrobe)","summary":"Five folded tees stacked the way a shop stacks a size run, in off white, terracotta, navy, sage and mustard, each sitting a few millimetres out of line so the stack reads as cloth rather than as a solid block.","description":"Five folded tees stacked the way a shop stacks a size run, in off white, terracotta, navy, sage and mustard, each sitting a few millimetres out of line so the stack reads as cloth rather than as a solid block. Dimensions 0.31 by 0.30 by 0.27 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-folded-tee-stack-83a30c41","cdnUrl":"https://cdn.3dassets.dev/assets/35441/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-folded-tee-stack-83a30c41","thumbnailUrl":"https://cdn.3dassets.dev/assets/35441/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35441/v1/poster.webp","blurhash":"UCI59._200NG~Jt6E7a#00IUD*jvI1sm%KM|","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":56348,"triangles":2358,"vertices":4568,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.15600000321865082,0.000006969636717452099,-0.1340042784128834],"max":[0.15600000321865082,0.29963296638060943,0.1340042784128834]},"sizeMeters":[0.312,0.3,0.268],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:45.689Z","updatedAt":"2026-09-11T15:20:45.887Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35441/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StackOfFiveFoldedTShirtsClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35441/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35441/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35441/v1/model.glb\" alt=\"Stack of five folded t shirts (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35441/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35441/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35443","slug":"clothing-rail-and-wardrobe-folded-jumper-stack-c2eaa64a","title":"Stack of three folded jumpers (Clothing Rail and Wardrobe)","summary":"The same stack built from the deeper knitwear fold, three jumpers high in navy, terracotta and sage, which is as tall as a shop stacks knitwear between two shelves at 350 mm centres.","description":"The same stack built from the deeper knitwear fold, three jumpers high in navy, terracotta and sage, which is as tall as a shop stacks knitwear between two shelves at 350 mm centres. Dimensions 0.33 by 0.27 by 0.29 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-folded-jumper-stack-c2eaa64a","cdnUrl":"https://cdn.3dassets.dev/assets/35443/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-folded-jumper-stack-c2eaa64a","thumbnailUrl":"https://cdn.3dassets.dev/assets/35443/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35443/v1/poster.webp","blurhash":"ULGIcW%M01M{_LocMya~01NGobe:H@j]NyWE","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":45276,"triangles":1438,"vertices":2792,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.16599999368190765,0.00000227096024971174,-0.14399937970565077],"max":[0.16599999368190765,0.26828258516617165,0.14399937970565077]},"sizeMeters":[0.332,0.268,0.288],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:45.878Z","updatedAt":"2026-09-11T15:20:46.013Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35443/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StackOfThreeFoldedJumpersClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35443/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35443/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35443/v1/model.glb\" alt=\"Stack of three folded jumpers (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35443/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35443/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35442","slug":"clothing-rail-and-wardrobe-socks-pair-rolled-19ba2865","title":"Rolled pair of socks (Clothing Rail and Wardrobe)","summary":"A pair of navy socks rolled into each other with the off white cuff turned back over the roll, on a blank card band: the small unit a sock display is built from.","description":"A pair of navy socks rolled into each other with the off white cuff turned back over the roll, on a blank card band: the small unit a sock display is built from. Dimensions 0.14 by 0.09 by 0.09 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-socks-pair-rolled-19ba2865","cdnUrl":"https://cdn.3dassets.dev/assets/35442/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-socks-pair-rolled-19ba2865","thumbnailUrl":"https://cdn.3dassets.dev/assets/35442/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35442/v1/poster.webp","blurhash":"UAE3MD0100~V%i?cD%9F00~oxv9Gw?I9M|t7","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":24608,"triangles":602,"vertices":1182,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.0560000017285347,6.533463057720179e-7,-0.04699934504436882],"max":[0.0860000029206276,0.0939993434350434,0.04699934504436882]},"sizeMeters":[0.142,0.094,0.094],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:45.724Z","updatedAt":"2026-09-11T15:20:45.914Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35442/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RolledPairOfSocksClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35442/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35442/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35442/v1/model.glb\" alt=\"Rolled pair of socks (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35442/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35442/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35444","slug":"clothing-rail-and-wardrobe-underwear-pack-2ea294f6","title":"Blank underwear multipack (Clothing Rail and Wardrobe)","summary":"A three piece multipack on a card backer under a clear polythene sleeve, with a blank header panel across the back. The packaging is the model: no brand, print or wording anywhere on it.","description":"A three piece multipack on a card backer under a clear polythene sleeve, with a blank header panel across the back. The packaging is the model: no brand, print or wording anywhere on it. Dimensions 0.20 by 0.28 by 0.06 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-underwear-pack-2ea294f6","cdnUrl":"https://cdn.3dassets.dev/assets/35444/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-underwear-pack-2ea294f6","thumbnailUrl":"https://cdn.3dassets.dev/assets/35444/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35444/v1/poster.webp","blurhash":"UFDm5Wx]00s,~q%M9FD%DhRjkYWCofjsM{Rj","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":28968,"triangles":674,"vertices":1275,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.10000427301709229,0,-0.031003097175303952],"max":[0.10000427301709229,0.2800000011920929,0.03299154808613078]},"sizeMeters":[0.2,0.28,0.064],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:48.536Z","updatedAt":"2026-09-11T15:20:48.658Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35444/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BlankUnderwearMultipackClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35444/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35444/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35444/v1/model.glb\" alt=\"Blank underwear multipack (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35444/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35444/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35446","slug":"clothing-rail-and-wardrobe-scarf-folded-0b2eb18b","title":"Folded scarf (Clothing Rail and Wardrobe)","summary":"A wool scarf folded into three courses, terracotta over off white over terracotta, with a knotted fringe at each end and a blank paper band round the middle.","description":"A wool scarf folded into three courses, terracotta over off white over terracotta, with a knotted fringe at each end and a blank paper band round the middle. Dimensions 0.40 by 0.07 by 0.13 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. The fringe is modelled as short rigid strands. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-scarf-folded-0b2eb18b","cdnUrl":"https://cdn.3dassets.dev/assets/35446/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-scarf-folded-0b2eb18b","thumbnailUrl":"https://cdn.3dassets.dev/assets/35446/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35446/v1/poster.webp","blurhash":"UBE2Rh$%01bHxD?Gj[EL00Na~BR*JB0fWA-o","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":31896,"triangles":802,"vertices":1566,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.2003934681415558,-8.762829367542357e-7,-0.06501095760063987],"max":[0.20043709874153137,0.06600264015225508,0.06501095760063987]},"sizeMeters":[0.401,0.066,0.13],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:48.689Z","updatedAt":"2026-09-11T15:20:48.820Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35446/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedScarfClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35446/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35446/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35446/v1/model.glb\" alt=\"Folded scarf (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35446/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35446/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35445","slug":"clothing-rail-and-wardrobe-towel-folded-1df928cc","title":"Folded bath towel (Clothing Rail and Wardrobe)","summary":"An off white bath towel folded in two courses with a woven sage border band on each face, for a homeware shelf or a fitting room bench.","description":"An off white bath towel folded in two courses with a woven sage border band on each face, for a homeware shelf or a fitting room bench. Dimensions 0.34 by 0.10 by 0.24 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The fabric is static geometry in a settled pose: there is no cloth simulation and no skinning in this library, so nothing here drapes, swings or creases at runtime. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-towel-folded-1df928cc","cdnUrl":"https://cdn.3dassets.dev/assets/35445/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-towel-folded-1df928cc","thumbnailUrl":"https://cdn.3dassets.dev/assets/35445/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35445/v1/poster.webp","blurhash":"U5EMai_300I:?b.7t7IV00D%~qRk008{IUWB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":15300,"triangles":384,"vertices":736,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.17000000178813934,-0.000005920678554510728,-0.12000183237280383],"max":[0.17000000178813934,0.09600592151301954,0.12000183237280383]},"sizeMeters":[0.34,0.096,0.24],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:20:48.671Z","updatedAt":"2026-09-11T15:20:48.804Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35445/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoldedBathTowelClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35445/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35445/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35445/v1/model.glb\" alt=\"Folded bath towel (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35445/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35445/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35466","slug":"clothing-rail-and-wardrobe-wardrobe-with-hanging-space-14e38811","title":"Wardrobe with hanging space (Clothing Rail and Wardrobe)","summary":"A 1.2 m double wardrobe on a recessed plinth: two shaker oak doors on real hinges with chrome bar handles, a top shelf, a chrome hanging rail with three empty hangers on it and a base shelf inside.","description":"A 1.2 m double wardrobe on a recessed plinth: two shaker oak doors on real hinges with chrome bar handles, a top shelf, a chrome hanging rail with three empty hangers on it and a base shelf inside. Dimensions 1.20 by 2.05 by 0.63 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Named pivoted nodes: wardrobe-door-left, wardrobe-door-right. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Rigid node-transform clips: open and close. No skinning. No collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-wardrobe-with-hanging-space-14e38811","cdnUrl":"https://cdn.3dassets.dev/assets/35466/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-wardrobe-with-hanging-space-14e38811","thumbnailUrl":"https://cdn.3dassets.dev/assets/35466/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35466/v1/poster.webp","blurhash":"U9GbeiR300cH~qxu9FIU0MtS-ORO?bxuD%IU","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"animated","title":"Animated"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":94420,"triangles":2332,"vertices":5171,"meshes":8,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.6000170746730246,0.000027924437280148207,-0.2999487210595037],"max":[0.6000170746730246,2.049999952316284,0.3279972390138302]},"sizeMeters":[1.2,2.05,0.628],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:03.413Z","updatedAt":"2026-09-11T15:21:03.529Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35466/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function WardrobeWithHangingSpaceClothingRailAndWardrobe(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/35466/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35466/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35466/v1/model.glb\" alt=\"Wardrobe with hanging space (Clothing Rail and Wardrobe)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35466/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35466/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"35468","slug":"clothing-rail-and-wardrobe-chest-of-drawers-3333eaf7","title":"Chest of drawers (Clothing Rail and Wardrobe)","summary":"A four drawer chest on a recessed plinth with an oak bullnose top: the drawers are graduated, shallowest at the top, each on a chrome bar handle and each rigged to pull out.","description":"A four drawer chest on a recessed plinth with an oak bullnose top: the drawers are graduated, shallowest at the top, each on a chrome bar handle and each rigged to pull out. Dimensions 0.95 by 0.89 by 0.50 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Named pivoted nodes: drawer-0, drawer-1, drawer-2, drawer-3. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Rigid node-transform clips: open and close. No skinning. No collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-chest-of-drawers-3333eaf7","cdnUrl":"https://cdn.3dassets.dev/assets/35468/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-chest-of-drawers-3333eaf7","thumbnailUrl":"https://cdn.3dassets.dev/assets/35468/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35468/v1/poster.webp","blurhash":"UAIEz*x900I^~T?aIq9G00x^%0V?%M%2NHIV","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"animated","title":"Animated"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":41356,"triangles":1208,"vertices":2669,"meshes":11,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.4749999940395355,0.000018309486326334445,-0.24002959994221712],"max":[0.4749999940395355,0.8859886734168821,0.25599846486786054]},"sizeMeters":[0.95,0.886,0.496],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:05.852Z","updatedAt":"2026-09-11T15:21:05.958Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35468/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function ChestOfDrawersClothingRailAndWardrobe(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/35468/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35468/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35468/v1/model.glb\" alt=\"Chest of drawers (Clothing Rail and Wardrobe)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35468/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35468/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"35477","slug":"clothing-rail-and-wardrobe-price-tag-set-a62e3b54","title":"Price tag set (Clothing Rail and Wardrobe)","summary":"Blank shop signage in one model: a chrome ticket stand hung with four wordless swing tickets on threads, and a raked card counter sign in an oak foot. Every face is blank, so a project writes its own.","description":"Blank shop signage in one model: a chrome ticket stand hung with four wordless swing tickets on threads, and a raked card counter sign in an oak foot. Every face is blank, so a project writes its own. Dimensions 0.18 by 0.28 by 0.16 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-price-tag-set-a62e3b54","cdnUrl":"https://cdn.3dassets.dev/assets/35477/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-price-tag-set-a62e3b54","thumbnailUrl":"https://cdn.3dassets.dev/assets/35477/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35477/v1/poster.webp","blurhash":"UCCsdS~q00004oM{-o%100IU?b-;-;%MRjD%","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":31264,"triangles":656,"vertices":1479,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.08999212917094955,0,-0.07799664551761294],"max":[0.08999212917094955,0.2840000092983246,0.08000045697561387]},"sizeMeters":[0.18,0.284,0.158],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:11.792Z","updatedAt":"2026-09-11T15:21:12.139Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35477/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PriceTagSetClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35477/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35477/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35477/v1/model.glb\" alt=\"Price tag set (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35477/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35477/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35479","slug":"clothing-rail-and-wardrobe-size-cube-set-aed858e7","title":"Size cube set (Clothing Rail and Wardrobe)","summary":"Five oak size cubes turned at slightly different angles on an oak tray, each with a blank card face front and back, the markers a folded stock bay is sized with. No letters or numbers are modelled.","description":"Five oak size cubes turned at slightly different angles on an oak tray, each with a blank card face front and back, the markers a folded stock bay is sized with. No letters or numbers are modelled. Dimensions 0.34 by 0.07 by 0.16 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-size-cube-set-aed858e7","cdnUrl":"https://cdn.3dassets.dev/assets/35479/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-size-cube-set-aed858e7","thumbnailUrl":"https://cdn.3dassets.dev/assets/35479/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35479/v1/poster.webp","blurhash":"U9DvN0-;00RQIo?axa9a00D*~pt6-:01M|?a","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":44340,"triangles":1028,"vertices":2258,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.17000000178813934,-0.000005739408227400933,-0.0800064097285347],"max":[0.17000000178813934,0.07200573630878587,0.0800064097285347]},"sizeMeters":[0.34,0.072,0.16],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:12.386Z","updatedAt":"2026-09-11T15:21:12.599Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35479/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SizeCubeSetClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35479/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35479/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35479/v1/model.glb\" alt=\"Size cube set (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35479/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35479/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35471","slug":"clothing-rail-and-wardrobe-full-length-mirror-6e192a47","title":"Full length mirror (Clothing Rail and Wardrobe)","summary":"A 1.9 m oak framed cheval mirror raked back on splayed feet with rubber pads, carrying a full height mirror pane: the fixture a shop floor and a bedroom both need.","description":"A 1.9 m oak framed cheval mirror raked back on splayed feet with rubber pads, carrying a full height mirror pane: the fixture a shop floor and a bedroom both need. Dimensions 0.62 by 1.88 by 0.52 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-full-length-mirror-6e192a47","cdnUrl":"https://cdn.3dassets.dev/assets/35471/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-full-length-mirror-6e192a47","thumbnailUrl":"https://cdn.3dassets.dev/assets/35471/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35471/v1/poster.webp","blurhash":"U3B3sS~q0000oa%1Rk9axDRiNI%3tKV@M}oz","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":30676,"triangles":672,"vertices":1485,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.31003207126200594,0,-0.21998717962229375],"max":[0.31003207126200594,1.8762251138687134,0.2999871927353156]},"sizeMeters":[0.62,1.876,0.52],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:06.517Z","updatedAt":"2026-09-11T15:21:06.634Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35471/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FullLengthMirrorClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35471/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35471/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35471/v1/model.glb\" alt=\"Full length mirror (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35471/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35471/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35474","slug":"clothing-rail-and-wardrobe-laundry-basket-ee3faaa1","title":"Laundry basket (Clothing Rail and Wardrobe)","summary":"A 0.6 m tapered laundry basket with a woven off white banding up the sides, a rolled oak rim and a lipped lid on a hinge along the back edge, for a fitting room, a stock room or a bedroom.","description":"A 0.6 m tapered laundry basket with a woven off white banding up the sides, a rolled oak rim and a lipped lid on a hinge along the back edge, for a fitting room, a stock room or a bedroom. Dimensions 0.54 by 0.63 by 0.44 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Named pivoted nodes: basket-lid. The weave is modelled as banding rather than as individual canes. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Rigid node-transform clips: open and close. No skinning. No collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-laundry-basket-ee3faaa1","cdnUrl":"https://cdn.3dassets.dev/assets/35474/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-laundry-basket-ee3faaa1","thumbnailUrl":"https://cdn.3dassets.dev/assets/35474/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35474/v1/poster.webp","blurhash":"UBEooN?a004.%Kt6s:WW00M{~VxbD*jus:Rk","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"animated","title":"Animated"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":31540,"triangles":712,"vertices":1482,"meshes":3,"materials":2,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.27200171019457103,0,-0.22199530109468005],"max":[0.27200171019457103,0.6320051397095122,0.22199530109468005]},"sizeMeters":[0.544,0.632,0.444],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:09.469Z","updatedAt":"2026-09-11T15:21:09.578Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35474/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function LaundryBasketClothingRailAndWardrobe(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/35474/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35474/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35474/v1/model.glb\" alt=\"Laundry basket (Clothing Rail and Wardrobe)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35474/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35474/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"35469","slug":"clothing-rail-and-wardrobe-shoe-rack-with-shoes-9f718b49","title":"Shoe rack with shoes (Clothing Rail and Wardrobe)","summary":"A 0.82 m grey framed shoe rack with three raked oak decks and retaining bars, holding six plain shoe forms in charcoal, terracotta and off white, two to a deck.","description":"A 0.82 m grey framed shoe rack with three raked oak decks and retaining bars, holding six plain shoe forms in charcoal, terracotta and off white, two to a deck. Dimensions 0.79 by 0.74 by 0.31 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The shoes are simple soled forms with no laces, eyelets or branding: a lace is not modelled anywhere in this pack. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-shoe-rack-with-shoes-9f718b49","cdnUrl":"https://cdn.3dassets.dev/assets/35469/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-shoe-rack-with-shoes-9f718b49","thumbnailUrl":"https://cdn.3dassets.dev/assets/35469/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35469/v1/poster.webp","blurhash":"UBEoxu?b00xu~q?bIU9G00Rj?FIU9aWXxajE","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":109700,"triangles":2752,"vertices":5538,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.39399999380111694,4.988858016696796e-7,-0.1540191632007357],"max":[0.39399999380111694,0.7440813183784485,0.1540191632007357]},"sizeMeters":[0.788,0.744,0.308],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:06.032Z","updatedAt":"2026-09-11T15:21:06.137Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35469/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShoeRackWithShoesClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35469/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35469/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35469/v1/model.glb\" alt=\"Shoe rack with shoes (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35469/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35469/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35470","slug":"clothing-rail-and-wardrobe-accessory-display-table-71db13b4","title":"Accessory display table (Clothing Rail and Wardrobe)","summary":"A 1.1 m oak display table on tapered legs with a boxed apron, a knobbed drawer that pulls out and an oak tray of blank swing tickets on the top, for accessories by a till or a fitting room.","description":"A 1.1 m oak display table on tapered legs with a boxed apron, a knobbed drawer that pulls out and an oak tray of blank swing tickets on the top, for accessories by a till or a fitting room. Dimensions 1.10 by 0.78 by 0.62 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Named pivoted nodes: drawer-table. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Rigid node-transform clips: open and close. No skinning. No collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-accessory-display-table-71db13b4","cdnUrl":"https://cdn.3dassets.dev/assets/35470/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-accessory-display-table-71db13b4","thumbnailUrl":"https://cdn.3dassets.dev/assets/35470/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35470/v1/poster.webp","blurhash":"UNGR;kt64:t7~V%LIoM|0Lt7RkM|9Zoft7M|","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"animated","title":"Animated"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":62856,"triangles":1380,"vertices":3080,"meshes":5,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.550000011920929,0.000020223910361716335,-0.3100222852314694],"max":[0.550000011920929,0.781476182246858,0.3100222852314694]},"sizeMeters":[1.1,0.781,0.62],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:06.366Z","updatedAt":"2026-09-11T15:21:06.482Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35470/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function AccessoryDisplayTableClothingRailAndWardrobe(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/35470/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35470/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35470/v1/model.glb\" alt=\"Accessory display table (Clothing Rail and Wardrobe)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35470/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35470/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"35473","slug":"clothing-rail-and-wardrobe-mannequin-full-form-e937795f","title":"Full mannequin form (Clothing Rail and Wardrobe)","summary":"The full length shop form, 1.78 m on a weighted charcoal disc base: legs, torso, two plain arms and a featureless head, all in the same matt off white. It is a display form, not a person, and carries no face, features or skin tone.","description":"The full length shop form, 1.78 m on a weighted charcoal disc base: legs, torso, two plain arms and a featureless head, all in the same matt off white. It is a display form, not a person, and carries no face, features or skin tone. Dimensions 0.62 by 1.76 by 0.48 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The form ships undressed and is static: there is no skinning in this library, so it cannot be posed or fitted with a garment. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-mannequin-full-form-e937795f","cdnUrl":"https://cdn.3dassets.dev/assets/35473/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-mannequin-full-form-e937795f","thumbnailUrl":"https://cdn.3dassets.dev/assets/35473/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35473/v1/poster.webp","blurhash":"U7B3.^%M004n?bt79GM{00Rj~qxu00Rj?bxu","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":71928,"triangles":1848,"vertices":3674,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.3118935190451007,-0.00001060471614457853,-0.23999999463558197],"max":[0.3118935190451007,1.7599999904632568,0.23999999463558197]},"sizeMeters":[0.624,1.76,0.48],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:08.973Z","updatedAt":"2026-09-11T15:21:09.083Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35473/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FullMannequinFormClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35473/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35473/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35473/v1/model.glb\" alt=\"Full mannequin form (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35473/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35473/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35472","slug":"clothing-rail-and-wardrobe-mannequin-torso-on-stand-3dd24adf","title":"Mannequin torso on a stand (Clothing Rail and Wardrobe)","summary":"A shop torso form on a chrome stem and a weighted charcoal disc base, 1.36 m to the neck. It is a plain matt display form and not a person: no face, no features, no skin tone and no hands.","description":"A shop torso form on a chrome stem and a weighted charcoal disc base, 1.36 m to the neck. It is a plain matt display form and not a person: no face, no features, no skin tone and no hands. Dimensions 0.40 by 1.42 by 0.40 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. The form ships undressed; there is no skinning in this library, so a garment is hung beside it rather than fitted onto it. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-mannequin-torso-on-stand-3dd24adf","cdnUrl":"https://cdn.3dassets.dev/assets/35472/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-mannequin-torso-on-stand-3dd24adf","thumbnailUrl":"https://cdn.3dassets.dev/assets/35472/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35472/v1/poster.webp","blurhash":"UB9@O}xu00D%~qof4nRjM{j[xuay4nWB?bt7","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":31528,"triangles":768,"vertices":1503,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.20000000298023224,-7.62962748267898e-7,-0.20000000298023224],"max":[0.20000000298023224,1.4199999570846558,0.20000000298023224]},"sizeMeters":[0.4,1.42,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:08.687Z","updatedAt":"2026-09-11T15:21:08.799Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35472/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MannequinTorsoOnAStandClothingRailAndWardrobe(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/35472/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35472/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35472/v1/model.glb\" alt=\"Mannequin torso on a stand (Clothing Rail and Wardrobe)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35472/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35472/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"35476","slug":"clothing-rail-and-wardrobe-garment-steamer-aa0e2929","title":"Garment steamer (Clothing Rail and Wardrobe)","summary":"An upright steamer on a wheeled charcoal foot: a painted boiler with a blank control panel, a clear water tank, a chrome pole with a hanging bar at 1.55 m and a steam head on its hose.","description":"An upright steamer on a wheeled charcoal foot: a painted boiler with a blank control panel, a clear water tank, a chrome pole with a hanging bar at 1.55 m and a steam head on its hose. Dimensions 0.34 by 1.58 by 0.40 m (X by Y by Z). Metre units, +Y up, customer side toward +Z, resting on y=0. Named pivoted nodes: wheel-0, wheel-1. The hose is static geometry: a flexible line is not reachable with one rigid node transform. The two wheels are rigged to roll. Every swing ticket, size cube face, neck label and sign panel is blank: no clothing brand, retailer or trade dress anywhere in this pack. Rigid node-transform clips: roll. No skinning. No collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/clothing-rail-and-wardrobe-garment-steamer-aa0e2929","cdnUrl":"https://cdn.3dassets.dev/assets/35476/v1/model.glb","downloadUrl":"https://3dassets.dev/download/clothing-rail-and-wardrobe-garment-steamer-aa0e2929","thumbnailUrl":"https://cdn.3dassets.dev/assets/35476/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/35476/v1/poster.webp","blurhash":"UA8z.Gt800IU4oWB?bt7E1R*%Mxu~qt74nM{","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"animated","title":"Animated"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":40396,"triangles":944,"vertices":2020,"meshes":7,"materials":5,"textures":0,"animations":["roll"],"boundingBox":{"min":[-0.17119775771688625,-2.8312206259983874e-9,-0.2000393766757379],"max":[0.16999419768353308,1.5779999494552612,0.2000393766757379]},"sizeMeters":[0.341,1.578,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-11T15:21:11.601Z","updatedAt":"2026-09-11T15:21:11.709Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/35476/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function GarmentSteamerClothingRailAndWardrobe(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/35476/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/35476/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/35476/v1/model.glb\" alt=\"Garment steamer (Clothing Rail and Wardrobe)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/35476/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/35476/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}}]}}