# Laundry bag stack (Dry Cleaners and Alterations Shop)

Four tied polythene bags of sorted work stacked and offset on the plant floor, each with the cloth reading through the cover and a teal tie at the neck.

- **URL:** https://3dassets.dev/assets/dry-cleaners-and-alterations-shop-laundry-bag-stack-99918d5d
- **GLB (direct, CORS *, immutable):** https://cdn.3dassets.dev/assets/34962/v1/model.glb
- **Download (counted):** https://3dassets.dev/download/dry-cleaners-and-alterations-shop-laundry-bag-stack-99918d5d
- **Licence:** CC0 1.0 Universal: https://creativecommons.org/publicdomain/zero/1.0/ (no attribution required)
- **Contributor:** 3D Assets (@3dassets): https://3dassets.dev/u/3dassets
- **Category:** Props & Furniture
- **Tags:** Modern, Realistic, Interior
- **Geometry:** 1,024 triangles, 1,908 vertices, 4 meshes, 4 materials, 0 textures
- **Size (m):** 0.655 × 1.33 × 0.505
- **Animations:** none
- **File size:** 0.04 MB
- **Downloads:** 0
- **AI used (contributor-reported):** yes; model: Claude Opus 5

## About

Four tied polythene bags of sorted work stacked and offset on the plant floor, each with the cloth reading through the cover and a teal tie at the neck. Dimensions 0.66 by 1.33 by 0.50 m (X by Y by Z). Metre units, +Y up, customer or operator side toward +Z, resting on y=0. The garments, their polythene covers and the cloth on the bolts are modelled in one fixed pose: a draped or folded length is not reachable with one rigid node transform. Every ticket, tariff strip and label is blank: no shop name, machine maker or trade dress anywhere in this pack. Static geometry; no rig, collision or navigation data.

## Use with three.js

```js
import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'

const loader = new GLTFLoader()
loader.load('https://cdn.3dassets.dev/assets/34962/v1/model.glb', (gltf) => {
  scene.add(gltf.scene)
})
```

## React Three Fiber

```jsx
import { useGLTF } from '@react-three/drei'

export function LaundryBagStackDryCleanersAndAlterationsShop(props) {
  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/34962/v1/model.glb')
  return <primitive object={scene} {...props} />
}
useGLTF.preload('https://cdn.3dassets.dev/assets/34962/v1/model.glb')
```

## <model-viewer>

```html
<model-viewer src="https://cdn.3dassets.dev/assets/34962/v1/model.glb" alt="Laundry bag stack (Dry Cleaners and Alterations Shop)" camera-controls auto-rotate></model-viewer>
```

## Blender

```python
# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.
import bpy
bpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/34962/v1/model.glb
# Metres and +Y up are converted to Blender's Z-up scene automatically.
```

## Godot

```gdscript
# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.
var packed := load("res://models/model.glb") as PackedScene
var model := packed.instantiate()
add_child(model)
```

## Unity

```csharp
// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,
// or load it at runtime straight from the CDN:
using GLTFast;
var gltf = new GltfImport();
if (await gltf.Load("https://cdn.3dassets.dev/assets/34962/v1/model.glb")) await gltf.InstantiateMainSceneAsync(transform);
```

---
JSON: https://3dassets.dev/api/v1/assets/dry-cleaners-and-alterations-shop-laundry-bag-stack-99918d5d · Loads with a plain GLTFLoader: no Draco/KTX2 loaders needed.