{"data":{"id":116,"slug":"trench-line-1917","title":"WW1 Trench Line 1917","summary":"Modular period earthworks, dugouts, no man’s land, trench kit and rear-area transport.","description":"Trench line 1917 in the trench realistic family. Thirty modular trench pieces on a 3.0 m bay — fire bays, traverses, communication runs, junctions, three revetment styles, duckboards, fire steps, parapet and parados, sumps, ladders and a ramp exit; twelve dugouts and shelters; eighteen no man’s land pieces including craters, wire belts on a 6.0 m bay and a derelict early tank; twenty-two pieces of period kit; and twelve rear-area items including a light rail on a 1.1 m panel, horse-drawn carts and period vehicles. All designs are original with generic markings only — no national insignia, regimental marks or real model names, and every notice, label and map is blank. Two composed demonstrations. Static CC0 geometry prepared for human review; no rigs or animation.","url":"https://3dassets.dev/packs/trench-line-1917","coverUrl":"https://cdn.3dassets.dev/assets/24130/v1/poster.webp","assetCount":97,"aiGenerated":true,"aiGeneratedAssetCount":97,"aiModels":["Claude Fable 5.1"],"aiModelUnspecifiedCount":0,"featured":true,"licenseLabel":"CC0 1.0 Universal","totalBytes":4418116,"totalTriangles":92568,"starterScene":{"id":"24130","slug":"trench-line-1917-front-line-sector-1c315986-starter-scene","title":"Front Line Sector (WW1 Trench Line 1917)","summary":"Front-line sector demonstration: four fire bays stepped by traverses with a fire step, duckboards and sandbag parapet, a communication trench running back to an officer dugout entrance and aid post, ladders and a ramp exit, and a wire belt across cratered ground in front....","description":"Front-line sector demonstration: four fire bays stepped by traverses with a fire step, duckboards and sandbag parapet, a communication trench running back to an officer dugout entrance and aid post, ladders and a ramp exit, and a wire belt across cratered ground in front. Static layout of pack instances; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-front-line-sector-1c315986-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/24130/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-front-line-sector-1c315986-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/24130/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24130/v1/poster.webp","blurhash":"U584b+?b00t3xuM|M{xt009F~pohE1%L-:IV","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"}],"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":767104,"triangles":19454,"vertices":39791,"meshes":84,"materials":8,"textures":0,"animations":[],"boundingBox":{"min":[-12.700000047683716,-2.1,-18.33000011444092],"max":[15.562549352645874,4.215499401092529,20.174999952316284]},"sizeMeters":[28.263,6.315,38.505],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":24,"publishedAt":"2026-09-07T20:19:45.254Z","updatedAt":"2026-10-12T04:48:01.481Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24130/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FrontLineSectorWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24130/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24130/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24130/v1/model.glb\" alt=\"Front Line Sector (WW1 Trench Line 1917)\" 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/24130/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/24130/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},"assets":[{"id":"24036","slug":"trench-line-1917-fire-bay-straight-3f35b777","title":"Fire Bay Straight (WW1 Trench Line 1917)","summary":"Front-line fire bay with a fire step, revetted cheeks and a sandbag parapet.","description":"Fire bay 3.0 m long: a 1.2 m cut 2.1 m deep with corrugated revetment, duckboards, a chalk fire step at 0.55 m and two courses of parapet sandbags. Dimensions 3.00 x 3.05 x 3.51 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-fire-bay-straight-3f35b777","cdnUrl":"https://cdn.3dassets.dev/assets/24036/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-fire-bay-straight-3f35b777","thumbnailUrl":"https://cdn.3dassets.dev/assets/24036/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24036/v1/poster.webp","blurhash":"U5E{Rl^,00RO_4%g%f%000IU%L%g009FM{WB","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":70716,"triangles":1368,"vertices":4104,"meshes":8,"materials":8,"textures":0,"animations":[],"boundingBox":{"min":[-1.5,-0.0000064219707252011204,-1.5499244666890468],"max":[1.5011999607086182,3.050001247159751,1.9600290323422849]},"sizeMeters":[3.001,3.05,3.51],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:23.667Z","updatedAt":"2026-10-25T12:01:38.099Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24036/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FireBayStraightWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24036/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24036/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24036/v1/model.glb\" alt=\"Fire Bay Straight (WW1 Trench Line 1917)\" 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/24036/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/24036/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24039","slug":"trench-line-1917-traverse-corner-f55dcce6","title":"Traverse Corner (WW1 Trench Line 1917)","summary":"Right-angle traverse where the trench steps to break enfilade.","description":"Traverse corner turning 90 degrees with a solid earth traverse block, revetted cheeks, duckboards and a sandbag parapet. Dimensions 4.00 x 2.85 x 4.21 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-traverse-corner-f55dcce6","cdnUrl":"https://cdn.3dassets.dev/assets/24039/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-traverse-corner-f55dcce6","thumbnailUrl":"https://cdn.3dassets.dev/assets/24039/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24039/v1/poster.webp","blurhash":"U7DvJ]s+00%M~q4oIA_2009ZnhxtIo%MRiRj","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":68448,"triangles":1332,"vertices":3996,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-1.7999999523162842,0,-2.009872728991298],"max":[2.200000047683716,2.8498931862151258,2.200000047683716]},"sizeMeters":[4,2.85,4.21],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:23.719Z","updatedAt":"2026-10-25T12:14:33.947Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24039/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TraverseCornerWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24039/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24039/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24039/v1/model.glb\" alt=\"Traverse Corner (WW1 Trench Line 1917)\" 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/24039/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/24039/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24035","slug":"trench-line-1917-communication-trench-810ad87b","title":"Communication Trench (WW1 Trench Line 1917)","summary":"Narrower zig-free communication run with hurdle revetment.","description":"Communication trench 3.0 m long: a 1.0 m cut 1.8 m deep with woven hurdle revetment, duckboards and low earth lips. Dimensions 3.00 x 2.40 x 2.60 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-communication-trench-810ad87b","cdnUrl":"https://cdn.3dassets.dev/assets/24035/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-communication-trench-810ad87b","thumbnailUrl":"https://cdn.3dassets.dev/assets/24035/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24035/v1/poster.webp","blurhash":"U9FO=R-;00%L~pxuRkS100IVIVWVR*s:IpIo","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":71220,"triangles":1404,"vertices":4212,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-1.5,-0.00006761097087992773,-1.3000427259132663],"max":[1.5,2.4000504091848156,1.3000427259132663]},"sizeMeters":[3,2.4,2.6],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:24.683Z","updatedAt":"2026-10-05T21:15:02.805Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24035/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CommunicationTrenchWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24035/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24035/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24035/v1/model.glb\" alt=\"Communication Trench (WW1 Trench Line 1917)\" 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/24035/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/24035/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24040","slug":"trench-line-1917-sap-end-09f8e150","title":"Sap End (WW1 Trench Line 1917)","summary":"Blind end of a sap with a firing loophole plate.","description":"Sap end 3.0 m long closing a trench run, with frame revetment, duckboards, a sandbagged head and an iron loophole plate. Dimensions 3.71 x 3.05 x 3.10 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-sap-end-09f8e150","cdnUrl":"https://cdn.3dassets.dev/assets/24040/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-sap-end-09f8e150","thumbnailUrl":"https://cdn.3dassets.dev/assets/24040/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24040/v1/poster.webp","blurhash":"UDFFTx~V00%0%Mf+WCog009aNLR.D%f4xYM{","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":52720,"triangles":1008,"vertices":3024,"meshes":7,"materials":7,"textures":0,"animations":[],"boundingBox":{"min":[-1.5125000476837158,-0.00006414666896037424,-1.5499748405940321],"max":[2.200000047683716,3.0500378683320837,1.5499389450996546]},"sizeMeters":[3.713,3.05,3.1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":12,"publishedAt":"2026-09-07T20:19:23.742Z","updatedAt":"2026-10-13T00:23:40.077Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24040/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SapEndWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24040/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24040/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24040/v1/model.glb\" alt=\"Sap End (WW1 Trench Line 1917)\" 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/24040/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/24040/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24037","slug":"trench-line-1917-trench-junction-t-f16d5ed9","title":"Trench Junction T (WW1 Trench Line 1917)","summary":"Three-way trench junction where a spur meets a straight run.","description":"Trench junction T joining a 3.0 m straight to a perpendicular spur, revetted with duckboards throughout. Dimensions 3.60 x 2.10 x 3.60 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-trench-junction-t-f16d5ed9","cdnUrl":"https://cdn.3dassets.dev/assets/24037/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-trench-junction-t-f16d5ed9","thumbnailUrl":"https://cdn.3dassets.dev/assets/24037/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24037/v1/poster.webp","blurhash":"U5DlsA~q00tR^*tQE2oJ00IAoLMyS1WBRPRk","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":87940,"triangles":1752,"vertices":5256,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-1.7999999523162842,-0.0000064219707252011204,-1.7999999523162842],"max":[1.7999999523162842,2.101191327023882,1.7999999523162842]},"sizeMeters":[3.6,2.101,3.6],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:23.663Z","updatedAt":"2026-10-25T06:55:13.357Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24037/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrenchJunctionTWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24037/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24037/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24037/v1/model.glb\" alt=\"Trench Junction T (WW1 Trench Line 1917)\" 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/24037/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/24037/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24042","slug":"trench-line-1917-trench-junction-cross-4d29fcd8","title":"Trench Junction Cross (WW1 Trench Line 1917)","summary":"Four-way trench crossing with revetted cheeks all round.","description":"Trench junction cross joining four 3.0 m runs, revetted with duckboards on both axes. Dimensions 3.60 x 2.10 x 3.60 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-trench-junction-cross-4d29fcd8","cdnUrl":"https://cdn.3dassets.dev/assets/24042/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-trench-junction-cross-4d29fcd8","thumbnailUrl":"https://cdn.3dassets.dev/assets/24042/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24042/v1/poster.webp","blurhash":"U5DlvH~p00Nf~oR,IVt700D%RkRPE2xZRRNG","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":111604,"triangles":2244,"vertices":6732,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-1.7999999523162842,-0.0000064219707252011204,-1.7999999523162842],"max":[1.7999999523162842,2.101191327023882,1.7999999523162842]},"sizeMeters":[3.6,2.101,3.6],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:23.872Z","updatedAt":"2026-10-25T08:39:21.410Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24042/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrenchJunctionCrossWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24042/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24042/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24042/v1/model.glb\" alt=\"Trench Junction Cross (WW1 Trench Line 1917)\" 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/24042/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/24042/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24038","slug":"trench-line-1917-revetment-corrugated-21661948","title":"Revetment Wall (Corrugated Iron) (WW1 Trench Line 1917)","summary":"Standalone revetment panel in rusted corrugated iron sheets behind driven stakes.","description":"Revetment wall panel 3.0 m long and 2.10 m tall in rusted corrugated iron sheets behind driven stakes; lines one cheek of a trench bay. Dimensions 2.96 x 2.10 x 0.17 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-revetment-corrugated-21661948","cdnUrl":"https://cdn.3dassets.dev/assets/24038/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-revetment-corrugated-21661948","thumbnailUrl":"https://cdn.3dassets.dev/assets/24038/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24038/v1/poster.webp","blurhash":"U7EV4u^j00xY=|~Bnl5701Rk^%R%tQ%LS1IU","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":17976,"triangles":336,"vertices":1008,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.4774999618530273,0.000008677200783901995,-0.724910739352808],"max":[1.4774999618530273,2.1011616490732328,-0.5537812549259445]},"sizeMeters":[2.955,2.101,0.171],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:23.679Z","updatedAt":"2026-10-25T14:04:41.600Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24038/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RevetmentWallCorrugatedIronWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24038/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24038/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24038/v1/model.glb\" alt=\"Revetment Wall (Corrugated Iron) (WW1 Trench Line 1917)\" 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/24038/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/24038/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24041","slug":"trench-line-1917-revetment-hurdle-7317dc11","title":"Revetment Wall (Woven Hurdle) (WW1 Trench Line 1917)","summary":"Standalone revetment panel in woven hazel hurdles behind driven stakes.","description":"Revetment wall panel 3.0 m long and 2.10 m tall in woven hazel hurdles behind driven stakes; lines one cheek of a trench bay. Dimensions 2.97 x 2.10 x 0.14 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-revetment-hurdle-7317dc11","cdnUrl":"https://cdn.3dassets.dev/assets/24041/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-revetment-hurdle-7317dc11","thumbnailUrl":"https://cdn.3dassets.dev/assets/24041/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24041/v1/poster.webp","blurhash":"UBF=py%g00a%-=~Vof9a00t7_2RjW-kCWURj","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":22560,"triangles":432,"vertices":1296,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.4850000143051147,0.00003835515143268964,-0.6899111878492828],"max":[1.4850000143051147,2.0999615494811357,-0.5537812549259445]},"sizeMeters":[2.97,2.1,0.136],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:23.788Z","updatedAt":"2026-10-25T12:20:53.001Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24041/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RevetmentWallWovenHurdleWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24041/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24041/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24041/v1/model.glb\" alt=\"Revetment Wall (Woven Hurdle) (WW1 Trench Line 1917)\" 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/24041/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/24041/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24043","slug":"trench-line-1917-revetment-frame-bb3ce1e0","title":"Revetment Wall (Timber Frame) (WW1 Trench Line 1917)","summary":"Standalone revetment panel in sawn boards on a timber frame with corner posts.","description":"Revetment wall panel 3.0 m long and 2.10 m tall in sawn boards on a timber frame with corner posts; lines one cheek of a trench bay. Dimensions 3.00 x 2.10 x 0.21 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-revetment-frame-bb3ce1e0","cdnUrl":"https://cdn.3dassets.dev/assets/24043/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-revetment-frame-bb3ce1e0","thumbnailUrl":"https://cdn.3dassets.dev/assets/24043/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24043/v1/poster.webp","blurhash":"UCG8.Wod00jqxt~WWB9a00oz?GjZozs.j?M{","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":11052,"triangles":192,"vertices":576,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.5125000476837158,-0.00006414666896037424,-0.7599495263072675],"max":[1.4850000143051147,2.1012467478398826,-0.553758838656264]},"sizeMeters":[2.998,2.101,0.206],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":11,"publishedAt":"2026-09-07T20:19:25.395Z","updatedAt":"2026-10-12T14:16:17.153Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24043/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RevetmentWallTimberFrameWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24043/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24043/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24043/v1/model.glb\" alt=\"Revetment Wall (Timber Frame) (WW1 Trench Line 1917)\" 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/24043/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/24043/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24044","slug":"trench-line-1917-duckboard-floor-d7429842","title":"Duckboard Floor (WW1 Trench Line 1917)","summary":"Slatted duckboard run on bearers.","description":"Duckboard floor 3.0 m long and 1.14 m wide: slatted boards on two timber bearers, standing 0.26 m proud of the trench floor. Dimensions 2.95 x 0.18 x 1.14 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-duckboard-floor-d7429842","cdnUrl":"https://cdn.3dassets.dev/assets/24044/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-duckboard-floor-d7429842","thumbnailUrl":"https://cdn.3dassets.dev/assets/24044/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24044/v1/poster.webp","blurhash":"U7C6lY%f00t7-;^*jYD*00WC~VIV4n01SL?Z","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":24812,"triangles":480,"vertices":1440,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.4759999513626099,0.0000897878445858813,-0.5699584150087315],"max":[1.4759999513626099,0.18502278260325722,0.5699584150087315]},"sizeMeters":[2.952,0.185,1.14],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":6,"publishedAt":"2026-09-07T20:19:25.384Z","updatedAt":"2026-10-05T21:15:09.959Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24044/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DuckboardFloorWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24044/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24044/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24044/v1/model.glb\" alt=\"Duckboard Floor (WW1 Trench Line 1917)\" 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/24044/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/24044/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24045","slug":"trench-line-1917-fire-step-1a2f9ea1","title":"Fire Step (WW1 Trench Line 1917)","summary":"Cut and boarded fire step for a trench cheek.","description":"Fire step 3.0 m long, 0.55 m tall and 0.56 m deep: a chalk cut faced with boards on four driven stakes. Dimensions 3.00 x 0.55 x 0.56 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-fire-step-1a2f9ea1","cdnUrl":"https://cdn.3dassets.dev/assets/24045/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-fire-step-1a2f9ea1","thumbnailUrl":"https://cdn.3dassets.dev/assets/24045/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24045/v1/poster.webp","blurhash":"UCE33X%L4:t7xt~pt7M{00WA^+WCM}00M{xu","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":7692,"triangles":120,"vertices":360,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1.5,-0.000043494836467788955,-0.2799768059327982],"max":[1.5,0.5511412281277457,0.2799768059327982]},"sizeMeters":[3,0.551,0.56],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:25.408Z","updatedAt":"2026-10-05T21:15:08.217Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24045/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FireStepWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24045/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24045/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24045/v1/model.glb\" alt=\"Fire Step (WW1 Trench Line 1917)\" 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/24045/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/24045/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24046","slug":"trench-line-1917-parapet-sandbags-3e08455c","title":"Parapet Sandbags (WW1 Trench Line 1917)","summary":"Three staggered courses of parapet sandbags.","description":"Parapet sandbag run 3.0 m long and 0.60 m tall in three staggered courses of alternating tone. Dimensions 3.10 x 0.60 x 0.62 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-parapet-sandbags-3e08455c","cdnUrl":"https://cdn.3dassets.dev/assets/24046/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-parapet-sandbags-3e08455c","thumbnailUrl":"https://cdn.3dassets.dev/assets/24046/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24046/v1/poster.webp","blurhash":"UAD]h.?b01xv?b~pxuIU00af_3Rj9Z00M|%M","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":12136,"triangles":216,"vertices":648,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.6299999952316284,0.00009583854062639174,-0.3100289941347016],"max":[1.4700000286102295,0.5999041853012315,0.3100289941347016]},"sizeMeters":[3.1,0.6,0.62],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:25.459Z","updatedAt":"2026-10-25T08:54:29.353Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24046/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ParapetSandbagsWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24046/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24046/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24046/v1/model.glb\" alt=\"Parapet Sandbags (WW1 Trench Line 1917)\" 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/24046/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/24046/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24047","slug":"trench-line-1917-parados-10b89050","title":"Parados (WW1 Trench Line 1917)","summary":"Rear bank of a trench with a sandbag crest.","description":"Parados 3.0 m long, 1.3 m thick and 1.10 m tall: an earth bank behind a trench with a sandbag crest and chalk spoil. Dimensions 3.00 x 1.10 x 1.30 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-parados-10b89050","cdnUrl":"https://cdn.3dassets.dev/assets/24047/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-parados-10b89050","thumbnailUrl":"https://cdn.3dassets.dev/assets/24047/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24047/v1/poster.webp","blurhash":"U6EVmC?b00jD?c~pRiD%00Ip.8IU4T9GxuM|","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":26516,"triangles":504,"vertices":1512,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1.5,0.00005034361970640555,-0.6499069185460982],"max":[1.5,1.100000611920889,0.6499069185460982]},"sizeMeters":[3,1.1,1.3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:25.471Z","updatedAt":"2026-10-12T13:02:38.257Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24047/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ParadosWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24047/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24047/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24047/v1/model.glb\" alt=\"Parados (WW1 Trench Line 1917)\" 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/24047/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/24047/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24048","slug":"trench-line-1917-drainage-sump-4ab18607","title":"Drainage Sump (WW1 Trench Line 1917)","summary":"Boarded drainage sump under a lifting grating.","description":"Drainage sump 1.2 m square and 0.5 m deep, boarded and part filled with water, under a slatted lifting grating. Dimensions 1.20 x 0.55 x 1.20 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-drainage-sump-4ab18607","cdnUrl":"https://cdn.3dassets.dev/assets/24048/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-drainage-sump-4ab18607","thumbnailUrl":"https://cdn.3dassets.dev/assets/24048/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24048/v1/poster.webp","blurhash":"U8Ef7w_200Rj~pRjD*xt00D*xZae01xuxtIo","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":8932,"triangles":144,"vertices":432,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.6000000238418579,-0.000011903539738355312,-0.6000000238418579],"max":[0.6000000238418579,0.5500282295153421,0.6000000238418579]},"sizeMeters":[1.2,0.55,1.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:25.480Z","updatedAt":"2026-10-25T05:55:57.745Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24048/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DrainageSumpWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24048/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24048/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24048/v1/model.glb\" alt=\"Drainage Sump (WW1 Trench Line 1917)\" 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/24048/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/24048/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24049","slug":"trench-line-1917-trench-ladder-54733b86","title":"Trench Ladder (WW1 Trench Line 1917)","summary":"Timber scaling ladder for a trench parapet.","description":"Trench ladder 2.4 m long and 0.5 m wide with eight rungs, leaned against a parapet. Dimensions 0.55 x 2.39 x 0.70 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-trench-ladder-54733b86","cdnUrl":"https://cdn.3dassets.dev/assets/24049/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-trench-ladder-54733b86","thumbnailUrl":"https://cdn.3dassets.dev/assets/24049/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24049/v1/poster.webp","blurhash":"U49@3A%L004:~Ujc9aX39ZNH-p%1E4RlxWxW","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":13364,"triangles":256,"vertices":768,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.2750353066344306,0,-0.3794262833725265],"max":[0.2750353066344306,2.390472650527954,0.32421178890574487]},"sizeMeters":[0.55,2.39,0.704],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":11,"publishedAt":"2026-09-07T20:19:26.681Z","updatedAt":"2026-10-25T08:33:21.765Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24049/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrenchLadderWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24049/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24049/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24049/v1/model.glb\" alt=\"Trench Ladder (WW1 Trench Line 1917)\" 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/24049/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/24049/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24050","slug":"trench-line-1917-ramp-exit-af67834d","title":"Ramp Exit (WW1 Trench Line 1917)","summary":"Boarded ramp climbing out of a trench to ground level.","description":"Ramp exit 4.2 m long: nine boarded steps climbing 2.0 m from the trench floor to ground level between revetted cheeks. Dimensions 4.26 x 2.26 x 3.30 m (X x Y x Z). Ramp bay: origin centred at ground level, 4.2 m long; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-ramp-exit-af67834d","cdnUrl":"https://cdn.3dassets.dev/assets/24050/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-ramp-exit-af67834d","thumbnailUrl":"https://cdn.3dassets.dev/assets/24050/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24050/v1/poster.webp","blurhash":"U6D+*l~W00WV-:xvWVWT00IU%MIVIUs*WCMy","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":21532,"triangles":384,"vertices":1152,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-2.130000114440918,-0.00016022216747280105,-1.6519615650177002],"max":[2.130000114440918,2.259983574007065,1.6519615650177002]},"sizeMeters":[4.26,2.26,3.304],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:27.349Z","updatedAt":"2026-10-12T10:00:50.417Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24050/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RampExitWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24050/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24050/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24050/v1/model.glb\" alt=\"Ramp Exit (WW1 Trench Line 1917)\" 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/24050/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/24050/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24055","slug":"trench-line-1917-ammunition-shelf-6baafa7d","title":"Ammunition Shelf (WW1 Trench Line 1917)","summary":"Timber shelf cut into a trench cheek holding ammunition tins.","description":"Ammunition shelf 0.9 m wide at 1.10 m on two posts, holding three rusted tins. Dimensions 0.90 x 1.46 x 0.34 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-ammunition-shelf-6baafa7d","cdnUrl":"https://cdn.3dassets.dev/assets/24055/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-ammunition-shelf-6baafa7d","thumbnailUrl":"https://cdn.3dassets.dev/assets/24055/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24055/v1/poster.webp","blurhash":"U7Cijb~T00D+^+%29t9a04E5j^s,SdxtsmIW","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":5932,"triangles":72,"vertices":216,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.44999998807907104,0,-0.16997741180012396],"max":[0.44999998807907104,1.460016789799822,0.16997741180012396]},"sizeMeters":[0.9,1.46,0.34],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":7,"publishedAt":"2026-09-07T20:19:27.248Z","updatedAt":"2026-10-25T11:14:41.430Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24055/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function AmmunitionShelfWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24055/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24055/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24055/v1/model.glb\" alt=\"Ammunition Shelf (WW1 Trench Line 1917)\" 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/24055/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/24055/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24051","slug":"trench-line-1917-orders-board-b3fba1df","title":"Orders Board (WW1 Trench Line 1917)","summary":"Small timber notice board with blank paper sheets.","description":"Orders board 0.62 m wide and 0.96 m tall on a trench post, carrying three blank sheets. Dimensions 0.62 x 0.96 x 0.21 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-orders-board-b3fba1df","cdnUrl":"https://cdn.3dassets.dev/assets/24051/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-orders-board-b3fba1df","thumbnailUrl":"https://cdn.3dassets.dev/assets/24051/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24051/v1/poster.webp","blurhash":"UAFO_e~n0000-:%LM_D*00D+?v-;n$s.WXNK","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":4648,"triangles":60,"vertices":180,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.30999968788587207,0,-0.09996398592444906],"max":[0.30999968788587207,0.9599999785423279,0.11001983839554313]},"sizeMeters":[0.62,0.96,0.21],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:27.077Z","updatedAt":"2026-10-12T08:10:16.662Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24051/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function OrdersBoardWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24051/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24051/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24051/v1/model.glb\" alt=\"Orders Board (WW1 Trench Line 1917)\" 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/24051/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/24051/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24056","slug":"trench-line-1917-water-butt-dd959f73","title":"Water Butt (WW1 Trench Line 1917)","summary":"Rusted iron water butt with a wire handle.","description":"Water butt 0.60 m across and 0.66 m tall in rusted iron, part filled, with a hoop and wire handle. Dimensions 0.65 x 0.75 x 0.65 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-water-butt-dd959f73","cdnUrl":"https://cdn.3dassets.dev/assets/24056/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-water-butt-dd959f73","thumbnailUrl":"https://cdn.3dassets.dev/assets/24056/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24056/v1/poster.webp","blurhash":"U697FVS~00wI~pt79FM{01t7^*IVIAofx]ax","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":17424,"triangles":312,"vertices":936,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.32499998807907104,0,-0.32499998807907104],"max":[0.32499998807907104,0.7459992588732384,0.32499998807907104]},"sizeMeters":[0.65,0.746,0.65],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:27.395Z","updatedAt":"2026-10-25T10:04:50.232Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24056/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WaterButtWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24056/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24056/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24056/v1/model.glb\" alt=\"Water Butt (WW1 Trench Line 1917)\" 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/24056/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/24056/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24052","slug":"trench-line-1917-drying-rack-a708f4f1","title":"Drying Rack (WW1 Trench Line 1917)","summary":"Improvised rack of stakes hung with wet kit.","description":"Drying rack 1.3 m wide and 1.9 m tall: four driven stakes under a cross bar hung with six pieces of wet kit. Dimensions 1.30 x 1.91 x 0.12 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-drying-rack-a708f4f1","cdnUrl":"https://cdn.3dassets.dev/assets/24052/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-drying-rack-a708f4f1","thumbnailUrl":"https://cdn.3dassets.dev/assets/24052/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24052/v1/poster.webp","blurhash":"U6CG3.?G009G~o-:D*9G4pbE-oaiMxxbt8IU","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":10400,"triangles":180,"vertices":540,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6500280035037955,0,-0.05629660082237399],"max":[0.6500280035037955,1.905651569366455,0.06497634778789604]},"sizeMeters":[1.3,1.906,0.121],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:27.151Z","updatedAt":"2026-10-05T21:15:16.079Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24052/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DryingRackWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24052/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24052/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24052/v1/model.glb\" alt=\"Drying Rack (WW1 Trench Line 1917)\" 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/24052/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/24052/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24054","slug":"trench-line-1917-brazier-6e5ae93a","title":"Brazier (WW1 Trench Line 1917)","summary":"Small trench brazier on a timber block.","description":"Brazier 0.36 m across and 0.55 m tall: a rusted iron pot on a timber block with a grate and poker. Dimensions 0.36 x 0.94 x 0.36 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-brazier-6e5ae93a","cdnUrl":"https://cdn.3dassets.dev/assets/24054/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-brazier-6e5ae93a","thumbnailUrl":"https://cdn.3dassets.dev/assets/24054/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24054/v1/poster.webp","blurhash":"U69@6J-o009Z01Ip~U-:4ojY?HS5?Ft6NeR+","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":10020,"triangles":144,"vertices":432,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.18000000715255737,0.000005497714457930458,-0.18000000715255737],"max":[0.18000000715255737,0.9399999976158142,0.18000000715255737]},"sizeMeters":[0.36,0.94,0.36],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:27.176Z","updatedAt":"2026-10-05T21:15:17.310Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24054/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BrazierWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24054/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24054/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24054/v1/model.glb\" alt=\"Brazier (WW1 Trench Line 1917)\" 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/24054/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/24054/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24053","slug":"trench-line-1917-trench-frame-e513f8cf","title":"Trench Frame (WW1 Trench Line 1917)","summary":"A-frame timber set supporting a trench roof or revetment.","description":"Trench frame 1.5 m wide and 2.36 m tall: two posts under a head beam with knee braces. Dimensions 1.50 x 2.28 x 0.56 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-trench-frame-e513f8cf","cdnUrl":"https://cdn.3dassets.dev/assets/24053/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-trench-frame-e513f8cf","thumbnailUrl":"https://cdn.3dassets.dev/assets/24053/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24053/v1/poster.webp","blurhash":"U5Av,z-:00RQ~p-:9G4:ELn,xHR%R+%1r@9a","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":5472,"triangles":92,"vertices":276,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.7500265416916512,0,-0.2799987757460993],"max":[0.7500265416916512,2.2799999713897705,0.2799987757460993]},"sizeMeters":[1.5,2.28,0.56],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:27.162Z","updatedAt":"2026-10-25T09:23:31.056Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24053/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrenchFrameWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24053/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24053/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24053/v1/model.glb\" alt=\"Trench Frame (WW1 Trench Line 1917)\" 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/24053/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/24053/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24057","slug":"trench-line-1917-trench-bridge-5c2e51af","title":"Trench Bridge (WW1 Trench Line 1917)","summary":"Short plank bridge laid across a trench.","description":"Trench bridge 1.4 m square: slatted planks on two timber bearers, laid across a narrow cut. Dimensions 1.40 x 0.24 x 1.42 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-trench-bridge-5c2e51af","cdnUrl":"https://cdn.3dassets.dev/assets/24057/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-trench-bridge-5c2e51af","thumbnailUrl":"https://cdn.3dassets.dev/assets/24057/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24057/v1/poster.webp","blurhash":"U6DJ03_200My.7nhM{tR00Dj~pja4ob^xuD%","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":6956,"triangles":108,"vertices":324,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.701200008392334,-0.000008842278882773003,-0.701200008392334],"max":[0.701200008392334,0.24000883691446473,0.7200000286102295]},"sizeMeters":[1.402,0.24,1.421],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:28.454Z","updatedAt":"2026-10-25T09:31:28.432Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24057/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrenchBridgeWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24057/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24057/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24057/v1/model.glb\" alt=\"Trench Bridge (WW1 Trench Line 1917)\" 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/24057/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/24057/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24058","slug":"trench-line-1917-loophole-plate-3f3d5496","title":"Loophole Plate (WW1 Trench Line 1917)","summary":"Armoured iron loophole plate on driven stakes.","description":"Loophole plate 0.9 m wide and 0.6 m tall in rusted iron with a slot, carried on four short stakes. Dimensions 0.98 x 0.94 x 0.28 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-loophole-plate-3f3d5496","cdnUrl":"https://cdn.3dassets.dev/assets/24058/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-loophole-plate-3f3d5496","thumbnailUrl":"https://cdn.3dassets.dev/assets/24058/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24058/v1/poster.webp","blurhash":"UBCr_*-.00WA~U-oWWIo9uxZxZNHt5s:IWE2","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":9440,"triangles":144,"vertices":432,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.49000000953674316,0.000025640230745360704,-0.09998504582362885],"max":[0.49000000953674316,0.9400085516176884,0.1799850514860701]},"sizeMeters":[0.98,0.94,0.28],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":7,"publishedAt":"2026-09-07T20:19:28.792Z","updatedAt":"2026-10-05T21:15:18.989Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24058/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LoopholePlateWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24058/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24058/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24058/v1/model.glb\" alt=\"Loophole Plate (WW1 Trench Line 1917)\" 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/24058/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/24058/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24059","slug":"trench-line-1917-spoil-heap-5661e1f6","title":"Spoil Heap (WW1 Trench Line 1917)","summary":"Heap of freshly dug chalk spoil.","description":"Spoil heap 3.2 m long, 1.1 m deep and 0.98 m tall in bright chalk, as thrown up beside a working. Dimensions 3.20 x 0.98 x 1.10 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-spoil-heap-5661e1f6","cdnUrl":"https://cdn.3dassets.dev/assets/24059/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-spoil-heap-5661e1f6","thumbnailUrl":"https://cdn.3dassets.dev/assets/24059/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24059/v1/poster.webp","blurhash":"UAFr-Lxu00ofD*~qt7D%00IU^+ax%L00Rkt7","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":33860,"triangles":684,"vertices":2052,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-1.600000023841858,0.0000924733202643524,-0.5500656229919898],"max":[1.600000023841858,0.979907545753222,0.5500656229919898]},"sizeMeters":[3.2,0.98,1.1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:29.897Z","updatedAt":"2026-10-25T08:22:28.203Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24059/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SpoilHeapWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24059/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24059/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24059/v1/model.glb\" alt=\"Spoil Heap (WW1 Trench Line 1917)\" 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/24059/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/24059/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24061","slug":"trench-line-1917-flooded-bay-141e7ce5","title":"Flooded Bay (WW1 Trench Line 1917)","summary":"Waterlogged trench bay with floating duckboards.","description":"Flooded fire bay 3.0 m long standing in water, with frame revetment and three duckboard sections floating askew. Dimensions 3.01 x 2.55 x 3.10 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-flooded-bay-141e7ce5","cdnUrl":"https://cdn.3dassets.dev/assets/24061/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-flooded-bay-141e7ce5","thumbnailUrl":"https://cdn.3dassets.dev/assets/24061/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24061/v1/poster.webp","blurhash":"U9G8.Z~q00%L~WW=R*xa009G9ZNGIUM{R+t7","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":40876,"triangles":768,"vertices":2304,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-1.5125000476837158,-0.00006414666896037424,-1.5499244666890468],"max":[1.5,2.5500434173504294,1.5499389450996546]},"sizeMeters":[3.013,2.55,3.1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:29.045Z","updatedAt":"2026-10-12T10:04:45.204Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24061/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FloodedBayWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24061/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24061/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24061/v1/model.glb\" alt=\"Flooded Bay (WW1 Trench Line 1917)\" 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/24061/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/24061/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24064","slug":"trench-line-1917-trench-bench-8f005c5e","title":"Trench Bench (WW1 Trench Line 1917)","summary":"Rough plank bench for a fire bay or dugout mouth.","description":"Trench bench 1.9 m long at 0.76 m on four timber legs, with a back board. Dimensions 1.90 x 0.82 x 0.70 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-trench-bench-8f005c5e","cdnUrl":"https://cdn.3dassets.dev/assets/24064/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-trench-bench-8f005c5e","thumbnailUrl":"https://cdn.3dassets.dev/assets/24064/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24064/v1/poster.webp","blurhash":"UHDvJ@s:IU%K~p?GIVM{01%2flE101Ip%LWB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":5204,"triangles":72,"vertices":216,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.949999988079071,0.000036642078615922724,-0.3500274622662626],"max":[0.949999988079071,0.8199398855014188,0.3500274622662626]},"sizeMeters":[1.9,0.82,0.7],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:29.351Z","updatedAt":"2026-10-12T12:05:34.800Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24064/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrenchBenchWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24064/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24064/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24064/v1/model.glb\" alt=\"Trench Bench (WW1 Trench Line 1917)\" 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/24064/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/24064/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24060","slug":"trench-line-1917-signal-post-e765aeac","title":"Signal Post (WW1 Trench Line 1917)","summary":"Driven post carrying a blank marker panel and wire runs.","description":"Signal post 2.6 m tall carrying a blank khaki panel at 2.0 m and three wire runs. Dimensions 0.66 x 2.60 x 0.12 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-signal-post-e765aeac","cdnUrl":"https://cdn.3dassets.dev/assets/24060/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-signal-post-e765aeac","thumbnailUrl":"https://cdn.3dassets.dev/assets/24060/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24060/v1/poster.webp","blurhash":"U17n8u$+0056~pV[0KtQ01M{~p?HD+oe-.NH","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":8052,"triangles":116,"vertices":348,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.40001059862782395,0,-0.05998718002570335],"max":[0.2599658093040563,2.5999999046325684,0.05998718002570335]},"sizeMeters":[0.66,2.6,0.12],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":11,"publishedAt":"2026-09-07T20:19:28.945Z","updatedAt":"2026-10-25T12:44:06.244Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24060/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SignalPostWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24060/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24060/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24060/v1/model.glb\" alt=\"Signal Post (WW1 Trench Line 1917)\" 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/24060/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/24060/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24063","slug":"trench-line-1917-dugout-stair-b2428cfd","title":"Dugout Stair (WW1 Trench Line 1917)","summary":"Steep boarded stair dropping into a dugout.","description":"Dugout stair 1.4 m long dropping 1.65 m on seven boarded treads between timber stringers. Dimensions 1.00 x 2.05 x 1.90 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-dugout-stair-b2428cfd","cdnUrl":"https://cdn.3dassets.dev/assets/24063/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-dugout-stair-b2428cfd","thumbnailUrl":"https://cdn.3dassets.dev/assets/24063/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24063/v1/poster.webp","blurhash":"U8DI?y~V000L%19G9G?a9bj[-ooz-pofM|af","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":11004,"triangles":192,"vertices":576,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.5000343216921873,0,-1.5499999523162842],"max":[0.5000343216921873,2.049999952316284,0.35127447087220043]},"sizeMeters":[1,2.05,1.901],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:29.201Z","updatedAt":"2026-10-12T11:50:29.568Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24063/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DugoutStairWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24063/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24063/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24063/v1/model.glb\" alt=\"Dugout Stair (WW1 Trench Line 1917)\" 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/24063/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/24063/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24062","slug":"trench-line-1917-splinter-proof-shelter-03dfe62c","title":"Splinter-Proof Shelter (WW1 Trench Line 1917)","summary":"Low sandbag shelter under a beamed and boarded roof.","description":"Splinter-proof shelter 2.4 x 1.6 m and 0.80 m tall: two courses of sandbags under timber beams and boards. Dimensions 2.40 x 0.74 x 1.60 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-splinter-proof-shelter-03dfe62c","cdnUrl":"https://cdn.3dassets.dev/assets/24062/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-splinter-proof-shelter-03dfe62c","thumbnailUrl":"https://cdn.3dassets.dev/assets/24062/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24062/v1/poster.webp","blurhash":"U5D+#e~V00Mz?a^%NH9a00Io~VIV9G9axrt6","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":11208,"triangles":192,"vertices":576,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-1.2000000476837158,-0.00005188395169765381,-0.8000488614062459],"max":[1.2000000476837158,0.7400604361879067,0.8000488614062459]},"sizeMeters":[2.4,0.74,1.6],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:29.104Z","updatedAt":"2026-10-12T10:41:57.135Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24062/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SplinterProofShelterWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24062/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24062/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24062/v1/model.glb\" alt=\"Splinter-Proof Shelter (WW1 Trench Line 1917)\" 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/24062/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/24062/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24065","slug":"trench-line-1917-funk-hole-bay-2f0c0061","title":"Funk Hole Bay (WW1 Trench Line 1917)","summary":"Fire bay with a shallow shelter cut into the rear cheek.","description":"Fire bay 3.0 m long with hurdle revetment and a funk hole 1.2 m wide cut into the rear cheek, framed in timber with a canvas curtain. Dimensions 3.00 x 2.55 x 3.17 m (X x Y x Z). Modular trench bay: origin centred at ground level, 3.0 m between joins; floor at -2.10 m; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-funk-hole-bay-2f0c0061","cdnUrl":"https://cdn.3dassets.dev/assets/24065/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-funk-hole-bay-2f0c0061","thumbnailUrl":"https://cdn.3dassets.dev/assets/24065/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24065/v1/poster.webp","blurhash":"UAFrnm~q00%2_2t8WXxa00D%RjRkIUM{Rlt7","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":74056,"triangles":1452,"vertices":4356,"meshes":7,"materials":7,"textures":0,"animations":[],"boundingBox":{"min":[-1.5,-0.0000064219707252011204,-1.6250818490492733],"max":[1.5,2.5500434173504294,1.5499389450996546]},"sizeMeters":[3,2.55,3.175],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:30.092Z","updatedAt":"2026-10-05T21:15:24.549Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24065/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FunkHoleBayWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24065/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24065/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24065/v1/model.glb\" alt=\"Funk Hole Bay (WW1 Trench Line 1917)\" 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/24065/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/24065/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24066","slug":"trench-line-1917-officer-dugout-entrance-f30c3b22","title":"Officer Dugout Entrance (WW1 Trench Line 1917)","summary":"Timbered dugout entrance under a beamed and sandbagged roof.","description":"Officer dugout entrance 3.6 x 2.8 m: a timber-lined mouth 2.2 m deep under beams, boards, earth cover and two courses of sandbags, with a blanket door and a blank notice. Dimensions 3.60 x 3.14 x 2.91 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-officer-dugout-entrance-f30c3b22","cdnUrl":"https://cdn.3dassets.dev/assets/24066/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-officer-dugout-entrance-f30c3b22","thumbnailUrl":"https://cdn.3dassets.dev/assets/24066/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24066/v1/poster.webp","blurhash":"UAF$66={00rr~pIUE1%M01E19ZkpRP%2RPRQ","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":18704,"triangles":300,"vertices":900,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-1.7999999523162842,0.000018046981091313086,-1.5100289692912776],"max":[1.7999999523162842,3.1400263233115253,1.4000854147369346]},"sizeMeters":[3.6,3.14,2.91],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:30.520Z","updatedAt":"2026-10-12T14:04:56.116Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24066/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function OfficerDugoutEntranceWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24066/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24066/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24066/v1/model.glb\" alt=\"Officer Dugout Entrance (WW1 Trench Line 1917)\" 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/24066/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/24066/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24067","slug":"trench-line-1917-dugout-interior-3c7cf211","title":"Timber-Frame Dugout Interior (WW1 Trench Line 1917)","summary":"Boarded dugout chamber on braced timber sets.","description":"Timber-frame dugout interior 4.4 x 3.2 m and 2.3 m to the roof boards, on four braced sets with boarded walls and a plank floor. Dimensions 4.40 x 2.32 x 3.25 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-dugout-interior-3c7cf211","cdnUrl":"https://cdn.3dassets.dev/assets/24067/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-dugout-interior-3c7cf211","thumbnailUrl":"https://cdn.3dassets.dev/assets/24067/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24067/v1/poster.webp","blurhash":"U7Gbeb~p00oa~W-:M{Rn00IBIUD*D%t7ad9F","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":29224,"triangles":556,"vertices":1668,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-2.200000047683716,-0.000057433319982314046,-1.5999397850052628],"max":[2.200000047683716,2.3200573665627804,1.649939737321547]},"sizeMeters":[4.4,2.32,3.25],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:30.690Z","updatedAt":"2026-10-05T23:43:09.471Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24067/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TimberFrameDugoutInteriorWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24067/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24067/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24067/v1/model.glb\" alt=\"Timber-Frame Dugout Interior (WW1 Trench Line 1917)\" 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/24067/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/24067/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24069","slug":"trench-line-1917-bunk-shelf-e5454e18","title":"Bunk Shelf (WW1 Trench Line 1917)","summary":"Two-tier wire-and-plank bunk with blankets.","description":"Bunk shelf 1.9 m long and 1.4 m tall: two boarded tiers on timber posts, each with a folded blanket and a rolled pack. Dimensions 1.90 x 1.70 x 0.72 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-bunk-shelf-e5454e18","cdnUrl":"https://cdn.3dassets.dev/assets/24069/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-bunk-shelf-e5454e18","thumbnailUrl":"https://cdn.3dassets.dev/assets/24069/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24069/v1/poster.webp","blurhash":"UCD+;*Rj01In~p?aD*E200xu?ZNH9FIVt7of","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":12176,"triangles":216,"vertices":648,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.949999988079071,-0.00005871785492150838,-0.36000091103786813],"max":[0.949999988079071,1.7000587655386372,0.36000091103786813]},"sizeMeters":[1.9,1.7,0.72],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:30.855Z","updatedAt":"2026-10-12T14:11:54.238Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24069/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BunkShelfWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24069/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24069/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24069/v1/model.glb\" alt=\"Bunk Shelf (WW1 Trench Line 1917)\" 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/24069/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/24069/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24068","slug":"trench-line-1917-gas-curtain-frame-8760512d","title":"Gas Curtain Frame (WW1 Trench Line 1917)","summary":"Timber frame carrying a weighted gas blanket.","description":"Gas curtain frame 1.72 m wide and 2.24 m tall: two posts and a head beam carrying a canvas gas blanket on seven rings with a weighted hem. Dimensions 1.72 x 2.17 x 0.17 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-gas-curtain-frame-8760512d","cdnUrl":"https://cdn.3dassets.dev/assets/24068/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-gas-curtain-frame-8760512d","thumbnailUrl":"https://cdn.3dassets.dev/assets/24068/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24068/v1/poster.webp","blurhash":"U8Ey6,^j009a?G?GRQ4:00J6_Mt8tPxtRkIW","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":9376,"triangles":144,"vertices":432,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.8599669176523644,0,-0.06998742104227423],"max":[0.8599669176523644,2.1700000762939453,0.1037874195044744]},"sizeMeters":[1.72,2.17,0.174],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":7,"publishedAt":"2026-09-07T20:19:30.774Z","updatedAt":"2026-10-12T08:56:13.931Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24068/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GasCurtainFrameWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24068/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24068/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24068/v1/model.glb\" alt=\"Gas Curtain Frame (WW1 Trench Line 1917)\" 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/24068/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/24068/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24070","slug":"trench-line-1917-blanket-door-99292af2","title":"Blanket Door (WW1 Trench Line 1917)","summary":"Heavy blanket hung across a dugout mouth, half drawn back.","description":"Blanket door 1.16 m wide and 2.05 m tall: a weighted khaki blanket on a timber head rail, drawn partly aside. Dimensions 1.16 x 2.05 x 0.17 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-blanket-door-99292af2","cdnUrl":"https://cdn.3dassets.dev/assets/24070/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-blanket-door-99292af2","thumbnailUrl":"https://cdn.3dassets.dev/assets/24070/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24070/v1/poster.webp","blurhash":"U4Amhz%K009H~V%L9Z9GDjah%eo_?GxtIVD*","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":8660,"triangles":144,"vertices":432,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.5799999833106995,0,-0.049986875602570126],"max":[0.5799999833106995,2.04998687560257,0.12161958382139251]},"sizeMeters":[1.16,2.05,0.172],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":7,"publishedAt":"2026-09-07T20:19:30.870Z","updatedAt":"2026-10-05T21:15:28.121Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24070/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BlanketDoorWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24070/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24070/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24070/v1/model.glb\" alt=\"Blanket Door (WW1 Trench Line 1917)\" 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/24070/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/24070/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24071","slug":"trench-line-1917-telephone-recess-660ad3ef","title":"Telephone Recess (WW1 Trench Line 1917)","summary":"Timbered recess in a trench cheek holding a field telephone.","description":"Telephone recess 1.1 m wide and 1.28 m tall: a timbered cut with a plank shelf carrying a field telephone and cable runs. Dimensions 1.10 x 1.74 x 0.65 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-telephone-recess-660ad3ef","cdnUrl":"https://cdn.3dassets.dev/assets/24071/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-telephone-recess-660ad3ef","thumbnailUrl":"https://cdn.3dassets.dev/assets/24071/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24071/v1/poster.webp","blurhash":"U8CsNs~T009Z9GWV%Mn,009b?Hx[IVt6-oRQ","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":13512,"triangles":200,"vertices":600,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-0.5511972315516911,0,-0.300045789686962],"max":[0.549974081120951,1.7405843715090978,0.3466501498483918]},"sizeMeters":[1.101,1.741,0.647],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:32.014Z","updatedAt":"2026-10-25T09:12:24.060Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24071/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TelephoneRecessWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24071/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24071/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24071/v1/model.glb\" alt=\"Telephone Recess (WW1 Trench Line 1917)\" 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/24071/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/24071/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24072","slug":"trench-line-1917-trench-latrine-48e01e9c","title":"Trench Latrine (WW1 Trench Line 1917)","summary":"Screened latrine with a boarded seat and a bucket.","description":"Trench latrine 1.3 x 1.6 m and 2.4 m tall: a canvas-screened frame under a corrugated roof, with a two-hole boarded seat and a bucket. Dimensions 1.32 x 2.41 x 1.60 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-trench-latrine-48e01e9c","cdnUrl":"https://cdn.3dassets.dev/assets/24072/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-trench-latrine-48e01e9c","thumbnailUrl":"https://cdn.3dassets.dev/assets/24072/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24072/v1/poster.webp","blurhash":"U5ECLB}t00r{Z$E2T0-o00F?pcIVS6WVsSs;","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":16684,"triangles":260,"vertices":780,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-0.6599582143831206,-0.000003051850993071592,-0.800000011920929],"max":[0.6599582143831206,2.4100000858306885,0.800000011920929]},"sizeMeters":[1.32,2.41,1.6],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":6,"publishedAt":"2026-09-07T20:19:32.847Z","updatedAt":"2026-10-05T21:15:28.875Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24072/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrenchLatrineWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24072/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24072/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24072/v1/model.glb\" alt=\"Trench Latrine (WW1 Trench Line 1917)\" 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/24072/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/24072/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24073","slug":"trench-line-1917-kitchen-shelter-66ff35d2","title":"Kitchen Shelter (WW1 Trench Line 1917)","summary":"Open-fronted cookhouse with a brick range and a flue.","description":"Kitchen shelter 3.2 x 2.4 m and 2.5 m tall under corrugated iron, with a brick range carrying two dixies, a flue and a prep bench. Dimensions 3.40 x 2.80 x 2.50 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-kitchen-shelter-66ff35d2","cdnUrl":"https://cdn.3dassets.dev/assets/24073/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-kitchen-shelter-66ff35d2","thumbnailUrl":"https://cdn.3dassets.dev/assets/24073/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24073/v1/poster.webp","blurhash":"U3F5mY_300xuQks7.7E400M_IA8|1j-pxFNZ","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":20996,"triangles":348,"vertices":1044,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-1.7000000476837158,-0.000003051850993071592,-1.2500320794974042],"max":[1.7000000476837158,2.7999496353419477,1.2500320794974042]},"sizeMeters":[3.4,2.8,2.5],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:31.912Z","updatedAt":"2026-10-12T08:41:46.618Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24073/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function KitchenShelterWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24073/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24073/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24073/v1/model.glb\" alt=\"Kitchen Shelter (WW1 Trench Line 1917)\" 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/24073/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/24073/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24074","slug":"trench-line-1917-aid-post-12802a7f","title":"Aid Post (WW1 Trench Line 1917)","summary":"Timbered aid post with a stretcher trestle and dressings shelf.","description":"Aid post 3.6 x 2.8 m and 2.3 m to the roof boards, boarded throughout, with a stretcher on trestles, a dressings shelf and a red cross panel. Dimensions 3.60 x 2.34 x 2.89 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-aid-post-12802a7f","cdnUrl":"https://cdn.3dassets.dev/assets/24074/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-aid-post-12802a7f","thumbnailUrl":"https://cdn.3dassets.dev/assets/24074/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24074/v1/poster.webp","blurhash":"U6G+5Q_300Vt~q%LM{kW00bFD*IURj-:sC9G","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":31668,"triangles":564,"vertices":1692,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-1.7999999523162842,0.000030201402652085818,-1.4001307168409125],"max":[1.7999999523162842,2.3399697127666594,1.4901307502195136]},"sizeMeters":[3.6,2.34,2.89],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:32.238Z","updatedAt":"2026-10-12T08:55:20.779Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24074/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function AidPostWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24074/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24074/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24074/v1/model.glb\" alt=\"Aid Post (WW1 Trench Line 1917)\" 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/24074/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/24074/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24075","slug":"trench-line-1917-ammunition-bay-1900ff10","title":"Ammunition Bay (WW1 Trench Line 1917)","summary":"Boarded recess stacked with ammunition boxes and shells.","description":"Ammunition bay 2.6 x 1.8 m and 2.2 m tall, boarded and roofed, holding nine banded boxes and four brass shells. Dimensions 2.60 x 2.28 x 1.80 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-ammunition-bay-1900ff10","cdnUrl":"https://cdn.3dassets.dev/assets/24075/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-ammunition-bay-1900ff10","thumbnailUrl":"https://cdn.3dassets.dev/assets/24075/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24075/v1/poster.webp","blurhash":"U7FYPr_200IV~A-oNaNL59t6aJIps+-:xu9a","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":33112,"triangles":624,"vertices":1872,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1.2999999523162842,0.000034731497540185785,-0.9000457447507316],"max":[1.2999999523162842,2.2800490815439964,0.9000457447507316]},"sizeMeters":[2.6,2.28,1.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:32.437Z","updatedAt":"2026-10-25T11:06:25.925Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24075/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function AmmunitionBayWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24075/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24075/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24075/v1/model.glb\" alt=\"Ammunition Bay (WW1 Trench Line 1917)\" 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/24075/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/24075/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24078","slug":"trench-line-1917-signal-post-dugout-b3b0a602","title":"Signal Dugout (WW1 Trench Line 1917)","summary":"Boarded signal dugout with sets, cable runs and blank message sheets.","description":"Signal dugout 2.3 x 1.9 m and 2.2 m tall, boarded and roofed, with two instrument boxes on a shelf, four cable runs and three blank message sheets. Dimensions 2.30 x 3.20 x 1.90 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-signal-post-dugout-b3b0a602","cdnUrl":"https://cdn.3dassets.dev/assets/24078/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-signal-post-dugout-b3b0a602","thumbnailUrl":"https://cdn.3dassets.dev/assets/24078/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24078/v1/poster.webp","blurhash":"U4Dll@~W00IB00M{~otS00I._1IU4:$%^*bD","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":17088,"triangles":272,"vertices":816,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-1.149999976158142,0.000008070607513732675,-0.9499511506904028],"max":[1.149999976158142,3.197648896687009,0.9499511506904028]},"sizeMeters":[2.3,3.198,1.9],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:32.560Z","updatedAt":"2026-10-12T09:40:09.254Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24078/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SignalDugoutWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24078/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24078/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24078/v1/model.glb\" alt=\"Signal Dugout (WW1 Trench Line 1917)\" 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/24078/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/24078/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24077","slug":"trench-line-1917-observation-loophole-b76df664","title":"Observation Loophole (WW1 Trench Line 1917)","summary":"Sandbagged observation post with an armoured loophole plate.","description":"Observation loophole 1.8 x 1.3 m and 3.66 m tall: an earth and sandbag stack carrying an armoured plate with a viewing slot under a beamed and earth-covered roof, over a plank step. Dimensions 1.90 x 3.66 x 1.30 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-observation-loophole-b76df664","cdnUrl":"https://cdn.3dassets.dev/assets/24077/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-observation-loophole-b76df664","thumbnailUrl":"https://cdn.3dassets.dev/assets/24077/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24077/v1/poster.webp","blurhash":"U5DJ6N~q0000_2n%9Gba00Rj-:odR5tRxtMy","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":21808,"triangles":360,"vertices":1080,"meshes":7,"materials":7,"textures":0,"animations":[],"boundingBox":{"min":[-0.949999988079071,0,-0.6499929767688986],"max":[0.949999988079071,3.6600000858306885,0.6499133426742106]},"sizeMeters":[1.9,3.66,1.3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:33.565Z","updatedAt":"2026-10-12T11:11:26.287Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24077/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ObservationLoopholeWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24077/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24077/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24077/v1/model.glb\" alt=\"Observation Loophole (WW1 Trench Line 1917)\" 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/24077/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/24077/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24076","slug":"trench-line-1917-shell-crater-small-d36ea6ec","title":"Shell Crater (Small) (WW1 Trench Line 1917)","summary":"Small shell crater with a chalk spoil lip.","description":"Small shell crater 3.7 m across and 0.9 m deep, with a raised lip and thrown chalk spoil. Dimensions 4.28 x 1.12 x 4.27 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-shell-crater-small-d36ea6ec","cdnUrl":"https://cdn.3dassets.dev/assets/24076/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-shell-crater-small-d36ea6ec","thumbnailUrl":"https://cdn.3dassets.dev/assets/24076/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24076/v1/poster.webp","blurhash":"U67-Wn%L4nxu~qt6IUs;00M{xuRj00M{%MM{","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":35628,"triangles":706,"vertices":2118,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.085721969604492,-0.00005189053732235216,-2.135896539383966],"max":[2.192337989807129,1.1199603236468851,2.135896539383966]},"sizeMeters":[4.278,1.12,4.272],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:32.523Z","updatedAt":"2026-10-25T08:53:04.779Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24076/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShellCraterSmallWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24076/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24076/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24076/v1/model.glb\" alt=\"Shell Crater (Small) (WW1 Trench Line 1917)\" 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/24076/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/24076/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24079","slug":"trench-line-1917-shell-crater-large-32e03ba5","title":"Shell Crater (Large) (WW1 Trench Line 1917)","summary":"Large shell crater with spoil and broken timber in the bowl.","description":"Large shell crater 7.4 m across and 1.8 m deep, with a raised chalk lip and broken revetment timber in the bowl. Dimensions 8.71 x 2.02 x 8.54 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-shell-crater-large-32e03ba5","cdnUrl":"https://cdn.3dassets.dev/assets/24079/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-shell-crater-large-32e03ba5","thumbnailUrl":"https://cdn.3dassets.dev/assets/24079/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24079/v1/poster.webp","blurhash":"U997bBxt4nof~pofIUay00RjxuRj00Rj%MWB","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":68816,"triangles":1382,"vertices":4146,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-4.324398517608643,-0.00023898908797770346,-4.2716114011694035],"max":[4.384675979614258,2.019804468803797,4.2716114011694035]},"sizeMeters":[8.709,2.02,8.543],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:34.785Z","updatedAt":"2026-10-25T08:05:18.354Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24079/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShellCraterLargeWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24079/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24079/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24079/v1/model.glb\" alt=\"Shell Crater (Large) (WW1 Trench Line 1917)\" 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/24079/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/24079/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24080","slug":"trench-line-1917-shell-crater-flooded-ba834ab6","title":"Shell Crater (Flooded) (WW1 Trench Line 1917)","summary":"Flooded shell crater holding standing water.","description":"Flooded shell crater 6.0 m across and 1.4 m deep, half filled with still water, with a chalk lip and floating timber. Dimensions 7.08 x 1.62 x 6.91 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data. Functional variant of shell-crater-large.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-shell-crater-flooded-ba834ab6","cdnUrl":"https://cdn.3dassets.dev/assets/24080/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-shell-crater-flooded-ba834ab6","thumbnailUrl":"https://cdn.3dassets.dev/assets/24080/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24080/v1/poster.webp","blurhash":"U88|^hjv4ot5~pj]IUoc00j@xuRk00ax%MRl","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":59072,"triangles":1164,"vertices":3492,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-3.51357364654541,-0.000169074935195912,-3.455135652502852],"max":[3.562549352645874,1.6199373860425696,3.455135652502852]},"sizeMeters":[7.076,1.62,6.91],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:35.010Z","updatedAt":"2026-10-25T08:52:22.036Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24080/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShellCraterFloodedWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24080/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24080/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24080/v1/model.glb\" alt=\"Shell Crater (Flooded) (WW1 Trench Line 1917)\" 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/24080/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/24080/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24081","slug":"trench-line-1917-wire-entanglement-straight-4ebe6f19","title":"Wire Entanglement Straight (WW1 Trench Line 1917)","summary":"Belt of barbed wire strained between angled pickets.","description":"Wire entanglement 6.0 m long, 1.2 m deep and 1.3 m tall: five pairs of angled pickets carrying four strained wire runs and diagonal lacing. Dimensions 6.90 x 1.30 x 1.51 m (X x Y x Z). Modular wire belt: origin centred at ground level, 6.0 m between joins; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-wire-entanglement-straight-4ebe6f19","cdnUrl":"https://cdn.3dassets.dev/assets/24081/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-wire-entanglement-straight-4ebe6f19","thumbnailUrl":"https://cdn.3dassets.dev/assets/24081/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24081/v1/poster.webp","blurhash":"U48zx;IU00t7%2?bNGD%00-;~pM{9Z00-p_2","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":78692,"triangles":1616,"vertices":4848,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-3.700000047683716,0.00022053222331441802,-0.7540462686977188],"max":[3.1977760791778564,1.2986452629121836,0.7540462686977188]},"sizeMeters":[6.898,1.298,1.508],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:35.088Z","updatedAt":"2026-10-25T10:31:09.361Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24081/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WireEntanglementStraightWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24081/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24081/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24081/v1/model.glb\" alt=\"Wire Entanglement Straight (WW1 Trench Line 1917)\" 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/24081/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/24081/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24082","slug":"trench-line-1917-wire-entanglement-corner-fb7fb400","title":"Wire Entanglement Corner (WW1 Trench Line 1917)","summary":"Right-angle turn in a barbed wire belt.","description":"Wire entanglement corner turning 90 degrees, 1.2 m deep and 1.3 m tall, with angled pickets and four wire runs on each leg. Dimensions 3.63 x 1.30 x 3.75 m (X x Y x Z). Modular wire belt: origin at the corner at ground level, 3.0 m per leg; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-wire-entanglement-corner-fb7fb400","cdnUrl":"https://cdn.3dassets.dev/assets/24082/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-wire-entanglement-corner-fb7fb400","thumbnailUrl":"https://cdn.3dassets.dev/assets/24082/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24082/v1/poster.webp","blurhash":"U29QdO^,009ZIVs:^+g2009Y~q-pt2NF00ix","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":24180,"triangles":480,"vertices":1440,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-3.000009029186885,-0.000015412492900823693,-3],"max":[0.6338391592871351,1.2997105466558037,0.753911018371582]},"sizeMeters":[3.634,1.3,3.754],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":12,"publishedAt":"2026-09-07T20:19:34.120Z","updatedAt":"2026-10-25T15:25:26.059Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24082/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WireEntanglementCornerWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24082/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24082/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24082/v1/model.glb\" alt=\"Wire Entanglement Corner (WW1 Trench Line 1917)\" 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/24082/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/24082/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24083","slug":"trench-line-1917-screw-picket-8dc5315a","title":"Screw Picket (WW1 Trench Line 1917)","summary":"Corkscrew wire picket with eyelet loops.","description":"Screw picket 1.72 m tall with five eyelet loops and a three-turn screw foot, driven without a hammer. Dimensions 0.32 x 1.72 x 0.32 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-screw-picket-8dc5315a","cdnUrl":"https://cdn.3dassets.dev/assets/24083/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-screw-picket-8dc5315a","thumbnailUrl":"https://cdn.3dassets.dev/assets/24083/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24083/v1/poster.webp","blurhash":"U16kS3_30000%Ma#IAWA02M{_1?b?HayD*og","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":30952,"triangles":622,"vertices":1866,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.1400257179304213,0,-0.1583261726766931],"max":[0.1792894879146666,1.7197569608688354,0.15742009266914]},"sizeMeters":[0.319,1.72,0.316],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:34.172Z","updatedAt":"2026-10-25T12:56:10.729Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24083/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ScrewPicketWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24083/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24083/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24083/v1/model.glb\" alt=\"Screw Picket (WW1 Trench Line 1917)\" 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/24083/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/24083/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24084","slug":"trench-line-1917-knife-rest-e58ca529","title":"Knife Rest (WW1 Trench Line 1917)","summary":"Portable wire obstacle on crossed timber trestles.","description":"Knife rest 2.4 m long, 1.1 m tall and 0.9 m deep: two crossed timber trestles under a spine bar, strung with wire. Dimensions 4.08 x 1.73 x 0.74 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-knife-rest-e58ca529","cdnUrl":"https://cdn.3dassets.dev/assets/24084/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-knife-rest-e58ca529","thumbnailUrl":"https://cdn.3dassets.dev/assets/24084/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24084/v1/poster.webp","blurhash":"U79%n#%K0Ln,-:?a%2M{00%L~V%LE1IVoe?H","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":39000,"triangles":776,"vertices":2328,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.0378711223602295,-0.0000543774009227338,-0.36763194292782825],"max":[2.0378711223602295,1.7305221737266063,0.36763194292782825]},"sizeMeters":[4.076,1.731,0.735],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:34.198Z","updatedAt":"2026-10-12T12:15:06.047Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24084/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function KnifeRestWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24084/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24084/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24084/v1/model.glb\" alt=\"Knife Rest (WW1 Trench Line 1917)\" 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/24084/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/24084/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24085","slug":"trench-line-1917-splintered-tree-21d3db64","title":"Splintered Tree (WW1 Trench Line 1917)","summary":"Shell-shattered tree stump with a splintered crown.","description":"Splintered tree 3.75 m tall: a barked trunk sheared off at 3.2 m into five splinters, with one broken limb and fallen debris. Dimensions 1.97 x 4.22 x 1.54 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-splintered-tree-21d3db64","cdnUrl":"https://cdn.3dassets.dev/assets/24085/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-splintered-tree-21d3db64","thumbnailUrl":"https://cdn.3dassets.dev/assets/24085/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24085/v1/poster.webp","blurhash":"U284Vl_1000100E1^+?bJCxu=_IAMyRQx[%e","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":23352,"triangles":448,"vertices":1344,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.8451420907584313,0,-0.7865079785401425],"max":[1.123801344510169,4.215499401092529,0.7517691398675046]},"sizeMeters":[1.969,4.215,1.538],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:34.484Z","updatedAt":"2026-10-12T11:09:33.626Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24085/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SplinteredTreeWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24085/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24085/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24085/v1/model.glb\" alt=\"Splintered Tree (WW1 Trench Line 1917)\" 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/24085/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/24085/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24086","slug":"trench-line-1917-shattered-stump-caf57860","title":"Shattered Stump (WW1 Trench Line 1917)","summary":"Low shattered stump ringed with splinters.","description":"Shattered stump 1.5 m tall and 0.8 m across, blown off at 1.1 m into seven splinters, with scattered debris. Dimensions 2.19 x 1.83 x 2.12 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-shattered-stump-caf57860","cdnUrl":"https://cdn.3dassets.dev/assets/24086/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-shattered-stump-caf57860","thumbnailUrl":"https://cdn.3dassets.dev/assets/24086/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24086/v1/poster.webp","blurhash":"U49%kv%M00ni00WBjcIV00M|~Vt6~Vt7?H%K","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":24852,"triangles":480,"vertices":1440,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.0490798950195312,-0.00007584103950919463,-1.060448955788503],"max":[1.1402113437652588,1.8257477522791332,1.0569505207680563]},"sizeMeters":[2.189,1.826,2.117],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:35.374Z","updatedAt":"2026-10-12T09:50:49.897Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24086/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShatteredStumpWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24086/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24086/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24086/v1/model.glb\" alt=\"Shattered Stump (WW1 Trench Line 1917)\" 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/24086/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/24086/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24087","slug":"trench-line-1917-ruined-wall-5787ff9d","title":"Ruined Wall (WW1 Trench Line 1917)","summary":"Broken brick wall with a ragged top and fallen rubble.","description":"Ruined wall 3.4 m long and up to 2.3 m tall in coursed brick, broken away at the top with fallen rubble at the foot. Dimensions 4.19 x 2.32 x 1.18 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-ruined-wall-5787ff9d","cdnUrl":"https://cdn.3dassets.dev/assets/24087/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-ruined-wall-5787ff9d","thumbnailUrl":"https://cdn.3dassets.dev/assets/24087/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24087/v1/poster.webp","blurhash":"U7DlQON100?G02-.WU9Z00D%~V%M~Bxa-VRQ","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":28160,"triangles":564,"vertices":1692,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-2.0799999237060547,0.00007646963958474196,-0.1699451044921283],"max":[2.114593744277954,2.319923463603213,1.0079001770142917]},"sizeMeters":[4.195,2.32,1.178],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":11,"publishedAt":"2026-09-07T20:19:35.870Z","updatedAt":"2026-10-12T22:28:01.332Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24087/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RuinedWallWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24087/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24087/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24087/v1/model.glb\" alt=\"Ruined Wall (WW1 Trench Line 1917)\" 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/24087/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/24087/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24089","slug":"trench-line-1917-ruined-cart-72be32dd","title":"Ruined Cart (WW1 Trench Line 1917)","summary":"Wrecked farm cart with a broken wheel.","description":"Ruined cart 2.2 m long lying tipped, with a plank bed, one wheel still standing and a second broken off and fallen. Dimensions 2.73 x 1.25 x 3.81 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-ruined-cart-72be32dd","cdnUrl":"https://cdn.3dassets.dev/assets/24089/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-ruined-cart-72be32dd","thumbnailUrl":"https://cdn.3dassets.dev/assets/24089/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24089/v1/poster.webp","blurhash":"U89QT?E200-p%KRjIpt700-n~VIoD,%2-oM{","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":20040,"triangles":380,"vertices":1140,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.4999247881317463,0.000045333973644812176,-1.2244553565979004],"max":[1.2299248072052327,1.2476273430664553,2.5900001525878906]},"sizeMeters":[2.73,1.248,3.814],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:36.981Z","updatedAt":"2026-10-12T10:48:36.679Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24089/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RuinedCartWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24089/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24089/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24089/v1/model.glb\" alt=\"Ruined Cart (WW1 Trench Line 1917)\" 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/24089/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/24089/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24088","slug":"trench-line-1917-wrecked-early-tank-c0d1f008","title":"Wrecked Early Tank (WW1 Trench Line 1917)","summary":"Original rhomboid-hull early tank, derelict and nose-down with a thrown track.","description":"Original early tank design 8.0 m long and 3.6 m wide with a rhomboid all-round track frame and side sponsons, lying derelict nose-down with one track run thrown off. Generic markings only. Dimensions 11.08 x 3.26 x 7.26 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-wrecked-early-tank-c0d1f008","cdnUrl":"https://cdn.3dassets.dev/assets/24088/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-wrecked-early-tank-c0d1f008","thumbnailUrl":"https://cdn.3dassets.dev/assets/24088/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24088/v1/poster.webp","blurhash":"U78zc7%L02M}?F%1M|IV00Rj~UWB0M9b-o?F","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":25652,"triangles":480,"vertices":1440,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-5.549171447753906,-0.00012308813725447898,-3.6510565280914307],"max":[5.530851364135742,3.25788116346754,3.6074891090393066]},"sizeMeters":[11.08,3.258,7.259],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:35.937Z","updatedAt":"2026-10-12T10:39:37.786Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24088/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WreckedEarlyTankWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24088/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24088/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24088/v1/model.glb\" alt=\"Wrecked Early Tank (WW1 Trench Line 1917)\" 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/24088/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/24088/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24090","slug":"trench-line-1917-mud-pool-tile-c4c88768","title":"Mud Pool Tile (WW1 Trench Line 1917)","summary":"Four-metre tile of churned mud pitted with water-filled hollows.","description":"Mud pool tile 4.0 m square: churned wet mud pitted with eighty-one water-filled hollows; tiles edge to edge on a 4.0 m grid. Dimensions 4.35 x 0.25 x 4.35 m (X x Y x Z). Ground tile: origin centred, tiles on a 4.0 m grid; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-mud-pool-tile-c4c88768","cdnUrl":"https://cdn.3dassets.dev/assets/24090/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-mud-pool-tile-c4c88768","thumbnailUrl":"https://cdn.3dassets.dev/assets/24090/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24090/v1/poster.webp","blurhash":"U497R%?H00W--pWBNGof00D*~pRk9Zxs%1NG","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":128556,"triangles":2628,"vertices":7884,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-2.174999952316284,-0.00008057065315597578,-2.174999952316284],"max":[2.174999952316284,0.24994535333938742,2.174999952316284]},"sizeMeters":[4.35,0.25,4.35],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:36.217Z","updatedAt":"2026-10-12T09:09:05.756Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24090/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MudPoolTileWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24090/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24090/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24090/v1/model.glb\" alt=\"Mud Pool Tile (WW1 Trench Line 1917)\" 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/24090/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/24090/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24091","slug":"trench-line-1917-dud-shell-51423590","title":"Dud Shell (WW1 Trench Line 1917)","summary":"Unexploded shell half buried nose-down in the mud.","description":"Dud shell 0.8 m long and 0.26 m across, half buried nose-down at an angle with a driving band and disturbed mud around it. Dimensions 1.14 x 0.37 x 1.26 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-dud-shell-51423590","cdnUrl":"https://cdn.3dassets.dev/assets/24091/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-dud-shell-51423590","thumbnailUrl":"https://cdn.3dassets.dev/assets/24091/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24091/v1/poster.webp","blurhash":"U57KbpM|00tQxtWCR*j?00t7~VaLE2oexaa~","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":30556,"triangles":584,"vertices":1752,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.5679658651351929,0.000017359334931493775,-0.5180664618059055],"max":[0.5721690654754639,0.36602236382295117,0.7439684867858887]},"sizeMeters":[1.14,0.366,1.262],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:36.690Z","updatedAt":"2026-10-12T09:02:08.171Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24091/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DudShellWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24091/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24091/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24091/v1/model.glb\" alt=\"Dud Shell (WW1 Trench Line 1917)\" 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/24091/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/24091/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24093","slug":"trench-line-1917-listening-post-3d9fdd42","title":"Listening Post (WW1 Trench Line 1917)","summary":"Small sandbagged listening post pushed out from the line.","description":"Listening post 2.6 x 2.2 m: a boarded cut 1.4 m deep with sandbag walls on three sides, a plank step and wire runs back to the line. Dimensions 4.86 x 2.03 x 2.61 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-listening-post-3d9fdd42","cdnUrl":"https://cdn.3dassets.dev/assets/24093/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-listening-post-3d9fdd42","thumbnailUrl":"https://cdn.3dassets.dev/assets/24093/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24093/v1/poster.webp","blurhash":"U5D9kw0100t8_3IUInxv00-;~pof00?btR9Z","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":27484,"triangles":492,"vertices":1476,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-3.200000047683716,-0.00008848991931609262,-1.5111526472489856],"max":[1.659999966621399,2.0300005337147637,1.1000426855639398]},"sizeMeters":[4.86,2.03,2.611],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:36.745Z","updatedAt":"2026-10-25T08:44:11.823Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24093/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ListeningPostWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24093/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24093/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24093/v1/model.glb\" alt=\"Listening Post (WW1 Trench Line 1917)\" 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/24093/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/24093/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24092","slug":"trench-line-1917-marker-cross-81a2e386","title":"Marker Cross (WW1 Trench Line 1917)","summary":"Timber grave cross with a blank plate and a helmet.","description":"Marker cross 1.35 m tall in rough timber with a blank name plate, a helmet resting on the head and disturbed mud at the foot. Dimensions 0.84 x 1.36 x 0.79 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-marker-cross-81a2e386","cdnUrl":"https://cdn.3dassets.dev/assets/24092/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-marker-cross-81a2e386","thumbnailUrl":"https://cdn.3dassets.dev/assets/24092/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24092/v1/poster.webp","blurhash":"U48zuy%L009HELxunOD%01M{~V?H9aM{?a-:","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":27452,"triangles":506,"vertices":1518,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.39595839381217957,0.000027791999782277033,-0.3827610461867121],"max":[0.4446162283420563,1.3600000008460014,0.4099962263262537]},"sizeMeters":[0.841,1.36,0.793],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:36.727Z","updatedAt":"2026-10-25T10:29:20.304Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24092/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MarkerCrossWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24092/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24092/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24092/v1/model.glb\" alt=\"Marker Cross (WW1 Trench Line 1917)\" 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/24092/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/24092/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24094","slug":"trench-line-1917-broken-wire-run-a708e396","title":"Broken Wire Run (WW1 Trench Line 1917)","summary":"Cut and collapsed section of wire belt.","description":"Broken wire run 3.6 m long: leaning and snapped pickets with sagging, tangled wire and churned mud. Dimensions 3.66 x 1.30 x 1.77 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-broken-wire-run-a708e396","cdnUrl":"https://cdn.3dassets.dev/assets/24094/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-broken-wire-run-a708e396","thumbnailUrl":"https://cdn.3dassets.dev/assets/24094/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24094/v1/poster.webp","blurhash":"U58;JXNL0KV@9G-pozIU00V?^+xu~o9GV@-p","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":55928,"triangles":1128,"vertices":3384,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.831938624382019,0.000013548869332788427,-0.8623263293422311],"max":[1.831938624382019,1.300869574084722,0.9084214025653451]},"sizeMeters":[3.664,1.301,1.771],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:37.035Z","updatedAt":"2026-10-12T14:31:04.634Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24094/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BrokenWireRunWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24094/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24094/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24094/v1/model.glb\" alt=\"Broken Wire Run (WW1 Trench Line 1917)\" 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/24094/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/24094/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24095","slug":"trench-line-1917-debris-field-tile-3340f14d","title":"Debris Field Tile (WW1 Trench Line 1917)","summary":"Ground tile scattered with broken boards, cases and spent brass.","description":"Debris field tile 3.4 x 2.6 m: churned mud scattered with broken duckboards, four spent brass cases, chalk lumps and a discarded tin. Dimensions 3.40 x 0.62 x 2.79 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-debris-field-tile-3340f14d","cdnUrl":"https://cdn.3dassets.dev/assets/24095/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-debris-field-tile-3340f14d","thumbnailUrl":"https://cdn.3dassets.dev/assets/24095/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24095/v1/poster.webp","blurhash":"U5AAK?xt00t8NHWXt6ad00Rk~VM{nhs:kCo#","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":35872,"triangles":672,"vertices":2016,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-1.7000000476837158,0.00006378202117000853,-1.4906590227463439],"max":[1.7000000476837158,0.6200036586691153,1.3000976956970804]},"sizeMeters":[3.4,0.62,2.791],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:37.498Z","updatedAt":"2026-10-25T09:07:10.694Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24095/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DebrisFieldTileWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24095/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24095/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24095/v1/model.glb\" alt=\"Debris Field Tile (WW1 Trench Line 1917)\" 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/24095/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/24095/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24096","slug":"trench-line-1917-bolt-rifle-bayonet-8a2ff2ac","title":"Bolt Rifle With Bayonet (WW1 Trench Line 1917)","summary":"Original period bolt-action rifle with a fixed bayonet, lying on its side.","description":"Original bolt-action rifle 1.55 m long with the bayonet fixed: timber stock and fore-end, barrel, bolt handle, magazine and trigger guard. Generic design with no markings. Dimensions 0.16 x 0.34 x 2.01 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-bolt-rifle-bayonet-8a2ff2ac","cdnUrl":"https://cdn.3dassets.dev/assets/24096/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-bolt-rifle-bayonet-8a2ff2ac","thumbnailUrl":"https://cdn.3dassets.dev/assets/24096/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24096/v1/poster.webp","blurhash":"U56t%T9aE2Rj~o9aWBs:01RQ-.%L00?H-oR+","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":13000,"triangles":232,"vertices":696,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.05496618853884286,0.000004034541122327484,-0.7300000190734863],"max":[0.10828097866850442,0.3349642184300271,1.2799999713897705]},"sizeMeters":[0.163,0.335,2.01],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:37.538Z","updatedAt":"2026-10-25T12:03:44.267Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24096/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BoltRifleWithBayonetWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24096/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24096/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24096/v1/model.glb\" alt=\"Bolt Rifle With Bayonet (WW1 Trench Line 1917)\" 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/24096/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/24096/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24097","slug":"trench-line-1917-machine-gun-sled-ab3b9f90","title":"Machine Gun On Sled (WW1 Trench Line 1917)","summary":"Original water-cooled machine gun on a sled mount with a condenser can.","description":"Original period machine gun on a sled mount 1.3 m long: a water-cooled jacketed barrel, spade grips, an ammunition box, a feed belt and a condenser can with a hose. Generic design with no markings. Dimensions 0.97 x 0.64 x 1.65 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-machine-gun-sled-ab3b9f90","cdnUrl":"https://cdn.3dassets.dev/assets/24097/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-machine-gun-sled-ab3b9f90","thumbnailUrl":"https://cdn.3dassets.dev/assets/24097/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24097/v1/poster.webp","blurhash":"U48qHNIT00IWIoM_s;%N00%M~pxt?IxvR%IT","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":52488,"triangles":1002,"vertices":3006,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-0.4999938916414862,0.000027168349896383726,-0.6499999761581421],"max":[0.47002501022984144,0.6399663401025839,1]},"sizeMeters":[0.97,0.64,1.65],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:38.100Z","updatedAt":"2026-10-12T12:26:13.170Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24097/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MachineGunOnSledWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24097/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24097/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24097/v1/model.glb\" alt=\"Machine Gun On Sled (WW1 Trench Line 1917)\" 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/24097/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/24097/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24098","slug":"trench-line-1917-trench-mortar-4f423725","title":"Trench Mortar (WW1 Trench Line 1917)","summary":"Original short-barrelled trench mortar on a baseplate with bipod.","description":"Original trench mortar 1.1 m tall: a short rifled tube on a timber baseplate and iron bipod with an elevating screw, with three finned bombs beside it. Generic design with no markings. Dimensions 0.99 x 0.78 x 1.01 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-trench-mortar-4f423725","cdnUrl":"https://cdn.3dassets.dev/assets/24098/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-trench-mortar-4f423725","thumbnailUrl":"https://cdn.3dassets.dev/assets/24098/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24098/v1/poster.webp","blurhash":"U9Av,$9b01-:4:xCt6j^01t7-os,~VI=aenh","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":31704,"triangles":608,"vertices":1824,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.6399949281347257,-0.000010194719905487482,-0.37041735649108887],"max":[0.3499999940395355,0.7833596015855009,0.6349999904632568]},"sizeMeters":[0.99,0.783,1.005],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:38.391Z","updatedAt":"2026-10-25T08:19:20.925Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24098/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrenchMortarWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24098/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24098/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24098/v1/model.glb\" alt=\"Trench Mortar (WW1 Trench Line 1917)\" 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/24098/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/24098/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24100","slug":"trench-line-1917-grenade-box-ca8f681d","title":"Grenade Box (WW1 Trench Line 1917)","summary":"Banded timber grenade box with three grenades beside it.","description":"Grenade box 0.54 m long and 0.31 m tall in banded timber with a lifting handle and a blank label, with three segmented grenades alongside. Dimensions 0.64 x 0.32 x 0.54 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-grenade-box-ca8f681d","cdnUrl":"https://cdn.3dassets.dev/assets/24100/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-grenade-box-ca8f681d","thumbnailUrl":"https://cdn.3dassets.dev/assets/24100/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24100/v1/poster.webp","blurhash":"U7DI];4;00$|^+niE2M|00xW~Vt84.kWsl%0","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":22212,"triangles":396,"vertices":1188,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.3720000088214874,0.000005640957423669324,-0.1800109938164053],"max":[0.27000001072883606,0.3149861924316837,0.3549928726555604]},"sizeMeters":[0.642,0.315,0.535],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":11,"publishedAt":"2026-09-07T20:19:38.456Z","updatedAt":"2026-10-25T07:55:10.244Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24100/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrenadeBoxWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24100/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24100/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24100/v1/model.glb\" alt=\"Grenade Box (WW1 Trench Line 1917)\" 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/24100/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/24100/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24099","slug":"trench-line-1917-trench-periscope-c6807072","title":"Trench Periscope (WW1 Trench Line 1917)","summary":"Box-and-mirror trench periscope on a timber body.","description":"Trench periscope 1.42 m tall: a slim timber body with an upper and lower mirror box and a grip band. Dimensions 0.16 x 1.41 x 0.17 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-trench-periscope-c6807072","cdnUrl":"https://cdn.3dassets.dev/assets/24099/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-trench-periscope-c6807072","thumbnailUrl":"https://cdn.3dassets.dev/assets/24099/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24099/v1/poster.webp","blurhash":"U28zoY~m0001R;ogt1Ri9IN1---~ozoye-Mz","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":5928,"triangles":72,"vertices":216,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.07999999821186066,0,-0.08500259563681095],"max":[0.07999999821186066,1.409999966621399,0.08500259563681095]},"sizeMeters":[0.16,1.41,0.17],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:38.437Z","updatedAt":"2026-10-25T08:10:42.476Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24099/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrenchPeriscopeWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24099/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24099/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24099/v1/model.glb\" alt=\"Trench Periscope (WW1 Trench Line 1917)\" 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/24099/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/24099/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24101","slug":"trench-line-1917-flare-pistol-9fff2c4e","title":"Flare Pistol (WW1 Trench Line 1917)","summary":"Brass signal pistol with three cartridges.","description":"Flare pistol 0.30 m long in brass with a timber grip, lying beside three cartridges. Dimensions 0.17 x 0.19 x 0.37 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-flare-pistol-9fff2c4e","cdnUrl":"https://cdn.3dassets.dev/assets/24101/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-flare-pistol-9fff2c4e","thumbnailUrl":"https://cdn.3dassets.dev/assets/24101/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24101/v1/poster.webp","blurhash":"U78W$[0L57?G~BE2NH-U0MoM-.w]9Ht6%LoM","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":12916,"triangles":216,"vertices":648,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.1420000046491623,0,-0.12092080664727303],"max":[0.029998878038669068,0.1900016963358549,0.24853169918060303]},"sizeMeters":[0.172,0.19,0.369],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:38.620Z","updatedAt":"2026-10-12T06:47:14.875Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24101/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FlarePistolWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24101/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24101/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24101/v1/model.glb\" alt=\"Flare Pistol (WW1 Trench Line 1917)\" 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/24101/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/24101/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24102","slug":"trench-line-1917-gas-mask-hook-75332a4a","title":"Gas Mask On Hook (WW1 Trench Line 1917)","summary":"Period box respirator hung on a dugout hook.","description":"Gas mask on a hook at 1.24 m: a khaki face piece with two eyepieces and a corrugated hose running to a filter tin, with the carrier bag beside it. Dimensions 0.37 x 0.90 x 0.28 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-gas-mask-hook-75332a4a","cdnUrl":"https://cdn.3dassets.dev/assets/24102/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-gas-mask-hook-75332a4a","thumbnailUrl":"https://cdn.3dassets.dev/assets/24102/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24102/v1/poster.webp","blurhash":"U48gjIkX00n2-;%LD%D*00D%~p~W8{IV.7?a","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":27348,"triangles":480,"vertices":1440,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-0.26000427112621555,0,-0.08500564280626455],"max":[0.10724333770306876,0.8999999947845936,0.19328974695342407]},"sizeMeters":[0.367,0.9,0.278],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":11,"publishedAt":"2026-09-07T20:19:38.720Z","updatedAt":"2026-10-25T08:55:59.335Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24102/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GasMaskOnHookWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24102/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24102/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24102/v1/model.glb\" alt=\"Gas Mask On Hook (WW1 Trench Line 1917)\" 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/24102/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/24102/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24103","slug":"trench-line-1917-helmet-e8d8e96f","title":"Helmet (WW1 Trench Line 1917)","summary":"Broad-brimmed steel helmet resting crown up.","description":"Helmet 0.47 m across the brim and 0.12 m tall, resting crown up, with a rolled rim, two liner lugs and a chin strap. Dimensions 0.49 x 0.12 x 0.49 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-helmet-e8d8e96f","cdnUrl":"https://cdn.3dassets.dev/assets/24103/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-helmet-e8d8e96f","thumbnailUrl":"https://cdn.3dassets.dev/assets/24103/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24103/v1/poster.webp","blurhash":"U79QjY%100RjM{WWt7o000M|~pt7%Ls.M{WY","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":21996,"triangles":408,"vertices":1224,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.24699999392032623,-4.095414778276796e-7,-0.243261110379432],"max":[0.24699999392032623,0.1150004116276404,0.243261110379432]},"sizeMeters":[0.494,0.115,0.487],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:39.193Z","updatedAt":"2026-10-12T08:10:56.194Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24103/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HelmetWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24103/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24103/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24103/v1/model.glb\" alt=\"Helmet (WW1 Trench Line 1917)\" 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/24103/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/24103/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24104","slug":"trench-line-1917-greatcoat-peg-42274b2f","title":"Greatcoat On Peg (WW1 Trench Line 1917)","summary":"Heavy greatcoat hanging from a dugout peg.","description":"Greatcoat on a peg at 1.74 m: a khaki coat 1.15 m long with a collar, two sleeves, a button row and a shoulder strap. Dimensions 0.70 x 1.28 x 0.22 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-greatcoat-peg-42274b2f","cdnUrl":"https://cdn.3dassets.dev/assets/24104/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-greatcoat-peg-42274b2f","thumbnailUrl":"https://cdn.3dassets.dev/assets/24104/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24104/v1/poster.webp","blurhash":"U5A,tIWB00%3MyxtozIV00WC~poJxZM|Wr%L","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":30368,"triangles":558,"vertices":1674,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.3501504287839929,0,-0.014998325057857318],"max":[0.3491116390348474,1.2799999713897705,0.20200506847102923]},"sizeMeters":[0.699,1.28,0.217],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:40.276Z","updatedAt":"2026-10-12T09:44:50.435Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24104/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GreatcoatOnPegWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24104/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24104/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24104/v1/model.glb\" alt=\"Greatcoat On Peg (WW1 Trench Line 1917)\" 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/24104/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/24104/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24105","slug":"trench-line-1917-mess-tin-50551805","title":"Mess Tin (WW1 Trench Line 1917)","summary":"Oval mess tin with its lid and a wire handle.","description":"Mess tin 0.19 m across and 0.16 m tall with a wire bail handle, and its shallow lid set beside it. Dimensions 0.37 x 0.15 x 0.21 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-mess-tin-50551805","cdnUrl":"https://cdn.3dassets.dev/assets/24105/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-mess-tin-50551805","thumbnailUrl":"https://cdn.3dassets.dev/assets/24105/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24105/v1/poster.webp","blurhash":"U47dtR-p00M|?b?aIo4.00ay~WM{9F0K%M~q","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":11260,"triangles":212,"vertices":636,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.0949999988079071,-0.000003904930988701816,-0.09261694547126251],"max":[0.27799999713897705,0.1550039061230816,0.11799879368731933]},"sizeMeters":[0.373,0.155,0.211],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:39.741Z","updatedAt":"2026-10-05T21:15:51.657Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24105/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MessTinWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24105/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24105/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24105/v1/model.glb\" alt=\"Mess Tin (WW1 Trench Line 1917)\" 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/24105/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/24105/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24106","slug":"trench-line-1917-canteen-c8c1938b","title":"Canteen (WW1 Trench Line 1917)","summary":"Felt-covered water canteen with a stopper and strap.","description":"Canteen 0.14 m across and 0.26 m tall in enamelled iron with a khaki cover, a stopper and a carrying strap. Dimensions 0.14 x 0.26 x 0.14 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-canteen-c8c1938b","cdnUrl":"https://cdn.3dassets.dev/assets/24106/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-canteen-c8c1938b","thumbnailUrl":"https://cdn.3dassets.dev/assets/24106/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24106/v1/poster.webp","blurhash":"U8AJ[-%M00D*t6ofRkM|00IV~p%2t7t7a#WB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":10488,"triangles":176,"vertices":528,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.06800881857750789,0,-0.06629673022791963],"max":[0.06800881857750789,0.2549999952316284,0.07499893196683184]},"sizeMeters":[0.136,0.255,0.141],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:40.014Z","updatedAt":"2026-10-05T21:15:51.523Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24106/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CanteenWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24106/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24106/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24106/v1/model.glb\" alt=\"Canteen (WW1 Trench Line 1917)\" 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/24106/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/24106/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24108","slug":"trench-line-1917-ration-tin-09c9dfbd","title":"Ration Tin (WW1 Trench Line 1917)","summary":"Opened ration tin with a rolled lid, and a second tin beside it.","description":"Ration tin 0.12 m across and 0.15 m tall in rusted tinplate with a partly rolled-back lid, with a sealed tin beside it. Dimensions 0.28 x 0.15 x 0.15 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-ration-tin-09c9dfbd","cdnUrl":"https://cdn.3dassets.dev/assets/24108/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-ration-tin-09c9dfbd","thumbnailUrl":"https://cdn.3dassets.dev/assets/24108/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24108/v1/poster.webp","blurhash":"U8AS[0%19uI:~B^jR*E202-o%1IoE1E2s,%1","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":11420,"triangles":200,"vertices":600,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.05999999865889549,0.0000023009418617242483,-0.09600049358047846],"max":[0.2160000056028366,0.148999572639039,0.05849616702832583]},"sizeMeters":[0.276,0.149,0.154],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:40.291Z","updatedAt":"2026-10-12T11:09:19.842Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24108/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RationTinWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24108/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24108/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24108/v1/model.glb\" alt=\"Ration Tin (WW1 Trench Line 1917)\" 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/24108/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/24108/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24107","slug":"trench-line-1917-rum-jar-3863cd3e","title":"Rum Jar (WW1 Trench Line 1917)","summary":"Glazed stoneware jar with a stopper and blank label.","description":"Rum jar 0.25 m across and 0.45 m tall in glazed stoneware, with a rim collar, timber stopper and a blank label panel. Dimensions 0.25 x 0.45 x 0.25 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-rum-jar-3863cd3e","cdnUrl":"https://cdn.3dassets.dev/assets/24107/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-rum-jar-3863cd3e","thumbnailUrl":"https://cdn.3dassets.dev/assets/24107/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24107/v1/poster.webp","blurhash":"U59Q24o}00rptQsoMyNa00RP~Ao#?bofE1WB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":18948,"triangles":344,"vertices":1032,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.12501174572309634,0,-0.12501174572309634],"max":[0.12501174572309634,0.4499981569684297,0.1270010091522868]},"sizeMeters":[0.25,0.45,0.252],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:40.146Z","updatedAt":"2026-10-12T09:11:00.032Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24107/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RumJarWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24107/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24107/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24107/v1/model.glb\" alt=\"Rum Jar (WW1 Trench Line 1917)\" 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/24107/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/24107/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24109","slug":"trench-line-1917-letters-box-3d319323","title":"Letters Box (WW1 Trench Line 1917)","summary":"Small banded box of mail with loose letters beside it.","description":"Letters box 0.36 m long and 0.23 m tall in banded timber with a blank label, with four loose letters stacked beside it. Dimensions 0.53 x 0.26 x 0.26 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-letters-box-3d319323","cdnUrl":"https://cdn.3dassets.dev/assets/24109/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-letters-box-3d319323","thumbnailUrl":"https://cdn.3dassets.dev/assets/24109/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24109/v1/poster.webp","blurhash":"UDEf4n~U00kCt6?bjbD%019axaWFRjIUkCtR","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":7000,"triangles":108,"vertices":324,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.18000000715255737,-0.000007472990093390641,-0.13000519331255295],"max":[0.3501322865486145,0.2600025093478886,0.13362426072397512]},"sizeMeters":[0.53,0.26,0.264],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":13,"publishedAt":"2026-09-07T20:19:40.313Z","updatedAt":"2026-10-25T16:15:13.412Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24109/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LettersBoxWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24109/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24109/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24109/v1/model.glb\" alt=\"Letters Box (WW1 Trench Line 1917)\" 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/24109/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/24109/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24110","slug":"trench-line-1917-field-telephone-1917-bcc59916","title":"Field Telephone (WW1 Trench Line 1917)","summary":"Cased field telephone with a handset and magneto crank.","description":"Field telephone 0.31 m wide and 0.30 m tall in a timber case, with a handset on top, a magneto crank, terminals and a lead. Dimensions 0.38 x 0.32 x 0.28 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-field-telephone-1917-bcc59916","cdnUrl":"https://cdn.3dassets.dev/assets/24110/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-field-telephone-1917-bcc59916","thumbnailUrl":"https://cdn.3dassets.dev/assets/24110/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24110/v1/poster.webp","blurhash":"U9D+uI~T00IntR%LM{WE009b%2Roi_M|kDM|","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":21072,"triangles":338,"vertices":1014,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-0.1550000011920929,-0.00000864569947364724,-0.12394288182258606],"max":[0.22698276162842,0.3159985561540585,0.15945451444858888]},"sizeMeters":[0.382,0.316,0.283],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:40.469Z","updatedAt":"2026-10-25T14:59:54.208Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24110/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FieldTelephoneWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24110/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24110/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24110/v1/model.glb\" alt=\"Field Telephone (WW1 Trench Line 1917)\" 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/24110/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/24110/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24111","slug":"trench-line-1917-signal-flags-668f15b7","title":"Signal Flags (WW1 Trench Line 1917)","summary":"Pair of two-colour semaphore flags standing in their bag.","description":"Signal flags 0.9 m tall: a pair of two-colour flags on timber staves standing in a canvas bag. Dimensions 0.82 x 0.90 x 0.27 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-signal-flags-668f15b7","cdnUrl":"https://cdn.3dassets.dev/assets/24111/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-signal-flags-668f15b7","thumbnailUrl":"https://cdn.3dassets.dev/assets/24111/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24111/v1/poster.webp","blurhash":"U9BM*:-:00IttRx[xtM{00of~qM_8{IVxvxt","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":8520,"triangles":124,"vertices":372,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.4099999964237213,0,-0.240004877596989],"max":[0.4099999964237213,0.8971191644668579,0.02500804191271408]},"sizeMeters":[0.82,0.897,0.265],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:40.860Z","updatedAt":"2026-10-12T10:22:15.862Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24111/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SignalFlagsWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24111/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24111/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24111/v1/model.glb\" alt=\"Signal Flags (WW1 Trench Line 1917)\" 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/24111/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/24111/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24112","slug":"trench-line-1917-whistle-f0010056","title":"Whistle (WW1 Trench Line 1917)","summary":"Brass whistle on a coiled lanyard.","description":"Whistle 0.07 m long in brass with a mouthpiece and ring, lying on a coiled khaki lanyard. Dimensions 0.15 x 0.03 x 0.11 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-whistle-f0010056","cdnUrl":"https://cdn.3dassets.dev/assets/24112/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-whistle-f0010056","thumbnailUrl":"https://cdn.3dassets.dev/assets/24112/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24112/v1/poster.webp","blurhash":"U58qHFMy00W@M{xtxuM}00%L~pV?%MIWIVxp","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":31164,"triangles":612,"vertices":1836,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.05999999865889549,-1.2365206516692928e-7,-0.05356404930353165],"max":[0.09382222446859409,0.02599807744863654,0.053872063755989075]},"sizeMeters":[0.154,0.026,0.107],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:41.374Z","updatedAt":"2026-10-25T10:48:20.047Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24112/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WhistleWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24112/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24112/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24112/v1/model.glb\" alt=\"Whistle (WW1 Trench Line 1917)\" 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/24112/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/24112/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24113","slug":"trench-line-1917-wire-cutters-7f9f5a91","title":"Wire Cutters (WW1 Trench Line 1917)","summary":"Long-handled wire cutters lying open.","description":"Wire cutters 0.44 m long lying open, with timber-gripped handles, a pivot and hardened jaws. Dimensions 0.10 x 0.03 x 0.48 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-wire-cutters-7f9f5a91","cdnUrl":"https://cdn.3dassets.dev/assets/24113/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-wire-cutters-7f9f5a91","thumbnailUrl":"https://cdn.3dassets.dev/assets/24113/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24113/v1/poster.webp","blurhash":"U56*XO-ORiS%o~9GRjtR00E3%LxVn1~p%MIU","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":6404,"triangles":96,"vertices":288,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.04999465935801281,-8.849622821858333e-7,-0.2800000011920929],"max":[0.04999465935801281,0.028997542891178667,0.20000000298023224]},"sizeMeters":[0.1,0.029,0.48],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":10,"publishedAt":"2026-09-07T20:19:41.616Z","updatedAt":"2026-10-25T11:39:16.252Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24113/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WireCuttersWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24113/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24113/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24113/v1/model.glb\" alt=\"Wire Cutters (WW1 Trench Line 1917)\" 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/24113/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/24113/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24114","slug":"trench-line-1917-entrenching-tool-58ecf300","title":"Entrenching Tool (WW1 Trench Line 1917)","summary":"Short entrenching tool with a spade blade and a pick end.","description":"Entrenching tool 0.62 m long: a timber helve through an iron head carrying a small spade blade and a pick end. Dimensions 0.17 x 0.05 x 0.64 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-entrenching-tool-58ecf300","cdnUrl":"https://cdn.3dassets.dev/assets/24114/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-entrenching-tool-58ecf300","thumbnailUrl":"https://cdn.3dassets.dev/assets/24114/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24114/v1/poster.webp","blurhash":"U57dqI-=9ZRhs+D%Rj%L00D%?HxuNL~W%M9H","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"interior","title":"Interior"},{"slug":"kit","title":"Kit / Set"}],"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":5272,"triangles":72,"vertices":216,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.08499809828404886,0.000003844959578995499,-0.10000000149011612],"max":[0.08499809828404886,0.047995574151282,0.5400000214576721]},"sizeMeters":[0.17,0.048,0.64],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":7,"publishedAt":"2026-09-07T20:19:41.730Z","updatedAt":"2026-10-12T14:35:26.050Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24114/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EntrenchingToolWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24114/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24114/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24114/v1/model.glb\" alt=\"Entrenching Tool (WW1 Trench Line 1917)\" 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/24114/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/24114/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24116","slug":"trench-line-1917-stretcher-1917-7bd91ffe","title":"Stretcher (WW1 Trench Line 1917)","summary":"Canvas stretcher on timber poles with a folded blanket.","description":"Stretcher 2.3 m long and 0.6 m wide: canvas slung between timber poles on four iron legs, with a folded blanket and a loose dressing cloth. Dimensions 2.10 x 0.26 x 2.30 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-stretcher-1917-7bd91ffe","cdnUrl":"https://cdn.3dassets.dev/assets/24116/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-stretcher-1917-7bd91ffe","thumbnailUrl":"https://cdn.3dassets.dev/assets/24116/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24116/v1/poster.webp","blurhash":"U98;Ppk900e:xaofRkRj00j]~pWUIoRixtx]","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":10272,"triangles":148,"vertices":444,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1.0499999523162842,0.00002838170566474979,-1.149999976158142],"max":[1.0499999523162842,0.2599914572007685,1.149999976158142]},"sizeMeters":[2.1,0.26,2.3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:41.994Z","updatedAt":"2026-10-05T21:19:00.928Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24116/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StretcherWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24116/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24116/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24116/v1/model.glb\" alt=\"Stretcher (WW1 Trench Line 1917)\" 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/24116/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/24116/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24115","slug":"trench-line-1917-water-cart-e3f5f09d","title":"Water Cart (WW1 Trench Line 1917)","summary":"Horse-drawn water cart with an iron tank and shafts.","description":"Water cart 3.4 m long: an iron tank 1.4 m long on a timber body between two spoked wheels, with a filler cap, hoops and draught shafts. Dimensions 2.92 x 1.51 x 3.94 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-water-cart-e3f5f09d","cdnUrl":"https://cdn.3dassets.dev/assets/24115/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-water-cart-e3f5f09d","thumbnailUrl":"https://cdn.3dassets.dev/assets/24115/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24115/v1/poster.webp","blurhash":"U78|nkIo01$*%1M|M{xZ00%1~UR*D+-o-oIp","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":57780,"triangles":1152,"vertices":3456,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1.600000023841858,0.00006469421421351207,-1.2400000095367432],"max":[1.3199652297530922,1.509954777640732,2.700000047683716]},"sizeMeters":[2.92,1.51,3.94],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:41.932Z","updatedAt":"2026-10-12T10:30:44.996Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24115/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WaterCartWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24115/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24115/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24115/v1/model.glb\" alt=\"Water Cart (WW1 Trench Line 1917)\" 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/24115/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/24115/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24117","slug":"trench-line-1917-shell-stack-9a28c51c","title":"Artillery Shell Stack (WW1 Trench Line 1917)","summary":"Pyramid stack of nine brass artillery shells on planks.","description":"Artillery shell stack 2.0 m wide and 0.7 m tall: nine brass shells with driving bands laid in a three-course pyramid on planks. Dimensions 2.00 x 0.73 x 1.23 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-shell-stack-9a28c51c","cdnUrl":"https://cdn.3dassets.dev/assets/24117/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-shell-stack-9a28c51c","thumbnailUrl":"https://cdn.3dassets.dev/assets/24117/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24117/v1/poster.webp","blurhash":"UCC6iMxu4pju4oxtxuRk00IUs+t6~pIps.oe","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":106704,"triangles":2172,"vertices":6516,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1,-0.000027548242874819717,-0.5000549392775213],"max":[1,0.7340275754225929,0.7300000190734863]},"sizeMeters":[2,0.734,1.23],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:42.048Z","updatedAt":"2026-10-12T14:30:59.101Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24117/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ArtilleryShellStackWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24117/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24117/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24117/v1/model.glb\" alt=\"Artillery Shell Stack (WW1 Trench Line 1917)\" 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/24117/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/24117/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24118","slug":"trench-line-1917-light-rail-track-941412e6","title":"Light Rail Track (WW1 Trench Line 1917)","summary":"Narrow-gauge trench tramway panel on sleepers.","description":"Light rail track panel 1.1 m long and 0.6 m gauge: two rails on seven sleepers bedded in ballast. Dimensions 2.40 x 0.24 x 1.10 m (X x Y x Z). Modular track panel: origin centred at ground level, 1.1 m between joins; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-light-rail-track-941412e6","cdnUrl":"https://cdn.3dassets.dev/assets/24118/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-light-rail-track-941412e6","thumbnailUrl":"https://cdn.3dassets.dev/assets/24118/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24118/v1/poster.webp","blurhash":"U5C6iR-:00xaMd^+x^9a00D%~TX8%$00I9?Z","category":{"slug":"roads-infrastructure","title":"Roads & Infrastructure"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"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":9364,"triangles":144,"vertices":432,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1.2000000476837158,-0.00003021518822695496,-0.550000011920929],"max":[1.2000000476837158,0.23998428424065116,0.550000011920929]},"sizeMeters":[2.4,0.24,1.1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:42.102Z","updatedAt":"2026-10-12T08:49:56.905Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24118/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LightRailTrackWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24118/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24118/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24118/v1/model.glb\" alt=\"Light Rail Track (WW1 Trench Line 1917)\" 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/24118/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/24118/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24119","slug":"trench-line-1917-rail-trolley-67557838","title":"Rail Trolley (WW1 Trench Line 1917)","summary":"Narrow-gauge flat trolley with a brake standard.","description":"Rail trolley 1.9 m long on four flanged wheels at 0.6 m gauge, with a planked deck, end boards and a brake standard. Dimensions 1.24 x 1.32 x 1.96 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-rail-trolley-67557838","cdnUrl":"https://cdn.3dassets.dev/assets/24119/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-rail-trolley-67557838","thumbnailUrl":"https://cdn.3dassets.dev/assets/24119/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24119/v1/poster.webp","blurhash":"U6DSdht800-:?u0LIU~U00D*_2S49F~oWED*","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":18620,"triangles":336,"vertices":1008,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.6199957394754897,0.000051573337727012225,-0.9800000190734863],"max":[0.6199957394754897,1.320038486920245,0.9800000190734863]},"sizeMeters":[1.24,1.32,1.96],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:42.581Z","updatedAt":"2026-10-25T12:02:29.148Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24119/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RailTrolleyWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24119/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24119/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24119/v1/model.glb\" alt=\"Rail Trolley (WW1 Trench Line 1917)\" 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/24119/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/24119/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24120","slug":"trench-line-1917-horse-line-post-f5ef1ab3","title":"Horse Line Post (WW1 Trench Line 1917)","summary":"Picket line of posts with rails, mangers and water buckets.","description":"Horse line 6.2 m long: four driven posts carrying two rails, with six timber mangers and three water buckets. Dimensions 6.20 x 1.50 x 1.38 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-horse-line-post-f5ef1ab3","cdnUrl":"https://cdn.3dassets.dev/assets/24120/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-horse-line-post-f5ef1ab3","thumbnailUrl":"https://cdn.3dassets.dev/assets/24120/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24120/v1/poster.webp","blurhash":"U6A,d#?b4o-:W@~V%2M|00D+_1VsVq01E2j?","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":23608,"triangles":440,"vertices":1320,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-3.0999999046325684,0.00010897190849434857,-0.7699032466065407],"max":[3.0999999046325684,1.4998910280915057,0.6100497408115595]},"sizeMeters":[6.2,1.5,1.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":15,"publishedAt":"2026-09-07T20:19:43.026Z","updatedAt":"2026-10-12T13:02:15.982Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24120/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HorseLinePostWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24120/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24120/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24120/v1/model.glb\" alt=\"Horse Line Post (WW1 Trench Line 1917)\" 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/24120/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/24120/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24122","slug":"trench-line-1917-water-tank-fc981b1f","title":"Water Tank (WW1 Trench Line 1917)","summary":"Raised iron water tank on a braced timber stand.","description":"Water tank 2.1 m square and 3.6 m tall: an iron cistern 1.2 m deep with hoops on a braced timber stand, with a down pipe and tap. Dimensions 2.28 x 3.62 x 2.28 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-water-tank-fc981b1f","cdnUrl":"https://cdn.3dassets.dev/assets/24122/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-water-tank-fc981b1f","thumbnailUrl":"https://cdn.3dassets.dev/assets/24122/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24122/v1/poster.webp","blurhash":"U3BpRj.700$#tTn-E2Io00M{xURQ00M{~V-.","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":57312,"triangles":1128,"vertices":3384,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1.1400063670718041,0,-1.1400063670718041],"max":[1.1400063670718041,3.6199695725907675,1.1400063670718041]},"sizeMeters":[2.28,3.62,2.28],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":12,"publishedAt":"2026-09-07T20:19:43.508Z","updatedAt":"2026-10-25T11:41:25.721Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24122/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WaterTankWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24122/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24122/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24122/v1/model.glb\" alt=\"Water Tank (WW1 Trench Line 1917)\" 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/24122/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/24122/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24121","slug":"trench-line-1917-supply-dump-44fc4014","title":"Supply Dump (WW1 Trench Line 1917)","summary":"Stacked crates and drums under a canvas fly sheet.","description":"Supply dump 4.2 x 3.0 m: nine banded crates in a pyramid and eight drums on a gravel pad, under a canvas fly on four poles. Dimensions 4.20 x 1.84 x 4.40 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-supply-dump-44fc4014","cdnUrl":"https://cdn.3dassets.dev/assets/24121/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-supply-dump-44fc4014","thumbnailUrl":"https://cdn.3dassets.dev/assets/24121/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24121/v1/poster.webp","blurhash":"U5ECj~%N00%N.7t8RPR%00D$~qxt9FIUS3xu","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":53064,"triangles":1040,"vertices":3120,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-2.0999999046325684,0.0000106844935427175,-2.200000047683716],"max":[2.0999999046325684,1.8400003255590527,2.200000047683716]},"sizeMeters":[4.2,1.84,4.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:43.404Z","updatedAt":"2026-10-12T12:04:01.794Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24121/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SupplyDumpWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24121/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24121/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24121/v1/model.glb\" alt=\"Supply Dump (WW1 Trench Line 1917)\" 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/24121/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/24121/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24123","slug":"trench-line-1917-ridge-tent-0ddfce2e","title":"Ridge Tent (WW1 Trench Line 1917)","summary":"Period canvas ridge tent with a rolled door and guy lines.","description":"Ridge tent 4.6 m wide, 4.6 m long and 2.3 m to the ridge, with a rolled-back door flap, ridge pole and four guy lines. Dimensions 6.04 x 2.35 x 5.89 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-ridge-tent-0ddfce2e","cdnUrl":"https://cdn.3dassets.dev/assets/24123/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-ridge-tent-0ddfce2e","thumbnailUrl":"https://cdn.3dassets.dev/assets/24123/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24123/v1/poster.webp","blurhash":"UBBph6M{00%MIURkt7t700t7~pM|?bxtRjM|","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":21736,"triangles":388,"vertices":1164,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-3.0220000743865967,0.0001427231895791553,-2.9183134772130193],"max":[3.0220000743865967,2.3494575370059945,2.9677941538640202]},"sizeMeters":[6.044,2.349,5.886],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":9,"publishedAt":"2026-09-07T20:19:43.545Z","updatedAt":"2026-10-25T08:33:13.535Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24123/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RidgeTentWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24123/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24123/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24123/v1/model.glb\" alt=\"Ridge Tent (WW1 Trench Line 1917)\" 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/24123/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/24123/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24125","slug":"trench-line-1917-bell-tent-05d09624","title":"Bell Tent (WW1 Trench Line 1917)","summary":"Conical bell tent on a centre pole with sixteen guy lines.","description":"Bell tent 6.9 m across and 4.2 m to the finial: a conical canvas tent on a centre pole with a laced door and sixteen pegged guy lines. Dimensions 7.94 x 4.35 x 7.98 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-bell-tent-05d09624","cdnUrl":"https://cdn.3dassets.dev/assets/24125/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-bell-tent-05d09624","thumbnailUrl":"https://cdn.3dassets.dev/assets/24125/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24125/v1/poster.webp","blurhash":"UDA^H|xt00M{4.WB%Mof00Rj~pt7~pt6D*WB","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":66896,"triangles":1328,"vertices":3984,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-3.970057070024261,0.00015255578448222784,-3.9667820930480957],"max":[3.970057070024261,4.3486068337749035,4.011314868927002]},"sizeMeters":[7.94,4.348,7.978],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":11,"publishedAt":"2026-09-07T20:19:43.699Z","updatedAt":"2026-10-25T09:21:16.365Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24125/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BellTentWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24125/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24125/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24125/v1/model.glb\" alt=\"Bell Tent (WW1 Trench Line 1917)\" 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/24125/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/24125/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24124","slug":"trench-line-1917-staff-car-2371154f","title":"Staff Car (WW1 Trench Line 1917)","summary":"Original period open staff car with a folded hood.","description":"Original period staff car 4.2 m long on four spoked wheels: a boxed body with a scuttle, windscreen, bonnet, radiator, two lamps and a folded rear hood. Generic markings only. Dimensions 2.46 x 1.85 x 4.04 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-staff-car-2371154f","cdnUrl":"https://cdn.3dassets.dev/assets/24124/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-staff-car-2371154f","thumbnailUrl":"https://cdn.3dassets.dev/assets/24124/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24124/v1/poster.webp","blurhash":"U3Ac;$?G00NL_NIV9F?H00D*_L%L00%L~p9Y","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":83328,"triangles":1640,"vertices":4920,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-1.2279940387984165,0.00006264998063176819,-1.7999999523162842],"max":[1.2279940387984165,1.8538750851734966,2.240000009536743]},"sizeMeters":[2.456,1.854,4.04],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:43.683Z","updatedAt":"2026-10-11T22:25:09.693Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24124/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StaffCarWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24124/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24124/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24124/v1/model.glb\" alt=\"Staff Car (WW1 Trench Line 1917)\" 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/24124/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/24124/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24126","slug":"trench-line-1917-motorcycle-85cb3a4e","title":"Motorcycle (WW1 Trench Line 1917)","summary":"Original period despatch motorcycle with a sprung saddle.","description":"Original period motorcycle 1.8 m long on two spoked wheels: a tubular frame, tank, sprung saddle, handlebars, lamp and exhaust. Generic markings only. Dimensions 0.88 x 1.05 x 1.98 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-motorcycle-85cb3a4e","cdnUrl":"https://cdn.3dassets.dev/assets/24126/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-motorcycle-85cb3a4e","thumbnailUrl":"https://cdn.3dassets.dev/assets/24126/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24126/v1/poster.webp","blurhash":"U59%VE=|019t%LM{D+%200NG~U%29Gxt?ZNH","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":60680,"triangles":1208,"vertices":3624,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.5599525835531386,0.00005505967828522973,-0.9908000230789185],"max":[0.3239525821226271,1.0507829028242868,0.9908000230789185]},"sizeMeters":[0.884,1.051,1.982],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:44.062Z","updatedAt":"2026-10-05T21:19:04.692Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24126/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MotorcycleWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24126/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24126/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24126/v1/model.glb\" alt=\"Motorcycle (WW1 Trench Line 1917)\" 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/24126/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/24126/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24127","slug":"trench-line-1917-field-gun-09429aec","title":"Field Gun (WW1 Trench Line 1917)","summary":"Original period towed field gun on a split-trail carriage.","description":"Original period field gun 4.0 m long on two spoked wheels: a shielded carriage carrying a 2.6 m barrel with a recoil sleeve, split trails and spades, and a traverse handwheel. Generic markings only. Dimensions 2.92 x 1.58 x 5.38 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-field-gun-09429aec","cdnUrl":"https://cdn.3dassets.dev/assets/24127/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-field-gun-09429aec","thumbnailUrl":"https://cdn.3dassets.dev/assets/24127/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24127/v1/poster.webp","blurhash":"U56*H*NH01%2%2bFRjRk00xY~VIp9Znmxuxs","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":47748,"triangles":928,"vertices":2784,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1.4619562797975754,0.00003268855093274681,-2.5899999141693115],"max":[1.4619562797975754,1.5803778639905002,2.789682388305664]},"sizeMeters":[2.924,1.58,5.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":13,"publishedAt":"2026-09-07T20:19:44.358Z","updatedAt":"2026-10-12T08:15:34.014Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24127/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FieldGunWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24127/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24127/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24127/v1/model.glb\" alt=\"Field Gun (WW1 Trench Line 1917)\" 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/24127/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/24127/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24128","slug":"trench-line-1917-limber-5f6ec7bf","title":"Limber (WW1 Trench Line 1917)","summary":"Two-wheeled ammunition limber with a banded chest and shafts.","description":"Limber 3.6 m long on two spoked wheels: a banded timber ammunition chest on an axle, with a pole and two draught shafts. Dimensions 2.64 x 2.24 x 3.37 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-limber-5f6ec7bf","cdnUrl":"https://cdn.3dassets.dev/assets/24128/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-limber-5f6ec7bf","thumbnailUrl":"https://cdn.3dassets.dev/assets/24128/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24128/v1/poster.webp","blurhash":"U69@035701%L-oIWD*%L00={~VRj4;?F?aE1","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":44316,"triangles":872,"vertices":2616,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1.3200331219774208,-0.000052542926867404915,-0.618009123226421],"max":[1.3200331219774208,2.2376622723792776,2.75]},"sizeMeters":[2.64,2.238,3.368],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":8,"publishedAt":"2026-09-07T20:19:45.643Z","updatedAt":"2026-10-12T13:43:27.242Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24128/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LimberWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24128/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24128/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24128/v1/model.glb\" alt=\"Limber (WW1 Trench Line 1917)\" 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/24128/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/24128/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24129","slug":"trench-line-1917-ration-cart-0b98ccc8","title":"Ration Cart (WW1 Trench Line 1917)","summary":"Two-wheeled ration cart loaded with boxes.","description":"Ration cart 3.6 m long on two spoked wheels: a planked body with side and end boards carrying six ration boxes, with a pole and swingletree. Dimensions 2.45 x 1.38 x 4.05 m (X x Y x Z). Footprint-centred origin resting on the ground; metre units, +Y up, +Z forward. Period palette of wet mud, chalk, duckboard timber, sandbags and khaki, no textures. Original design with generic markings only. Static geometry; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-ration-cart-0b98ccc8","cdnUrl":"https://cdn.3dassets.dev/assets/24129/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-ration-cart-0b98ccc8","thumbnailUrl":"https://cdn.3dassets.dev/assets/24129/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24129/v1/poster.webp","blurhash":"U89Z=h4:01?G~pD*D*-p00t6?Goz01-:^*Ip","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"exterior","title":"Exterior"},{"slug":"kit","title":"Kit / Set"}],"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":41228,"triangles":792,"vertices":2376,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1.2240104229190394,-0.00004334835241881496,-1.0499999523162842],"max":[1.2240104229190394,1.3767444249098726,3]},"sizeMeters":[2.448,1.377,4.05],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":7,"publishedAt":"2026-09-07T20:19:45.147Z","updatedAt":"2026-10-25T14:57:05.466Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24129/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RationCartWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24129/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24129/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24129/v1/model.glb\" alt=\"Ration Cart (WW1 Trench Line 1917)\" 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/24129/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/24129/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24130","slug":"trench-line-1917-front-line-sector-1c315986-starter-scene","title":"Front Line Sector (WW1 Trench Line 1917)","summary":"Front-line sector demonstration: four fire bays stepped by traverses with a fire step, duckboards and sandbag parapet, a communication trench running back to an officer dugout entrance and aid post, ladders and a ramp exit, and a wire belt across cratered ground in front....","description":"Front-line sector demonstration: four fire bays stepped by traverses with a fire step, duckboards and sandbag parapet, a communication trench running back to an officer dugout entrance and aid post, ladders and a ramp exit, and a wire belt across cratered ground in front. Static layout of pack instances; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-front-line-sector-1c315986-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/24130/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-front-line-sector-1c315986-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/24130/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24130/v1/poster.webp","blurhash":"U584b+?b00t3xuM|M{xt009F~pohE1%L-:IV","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"}],"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":767104,"triangles":19454,"vertices":39791,"meshes":84,"materials":8,"textures":0,"animations":[],"boundingBox":{"min":[-12.700000047683716,-2.1,-18.33000011444092],"max":[15.562549352645874,4.215499401092529,20.174999952316284]},"sizeMeters":[28.263,6.315,38.505],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":24,"publishedAt":"2026-09-07T20:19:45.254Z","updatedAt":"2026-10-12T04:48:01.481Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24130/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FrontLineSectorWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24130/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24130/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24130/v1/model.glb\" alt=\"Front Line Sector (WW1 Trench Line 1917)\" 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/24130/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/24130/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"24131","slug":"trench-line-1917-rear-area-0970773a","title":"Rear Area (WW1 Trench Line 1917)","summary":"Rear area demonstration: a supply dump and raised water tank beside a light rail spur with a loaded trolley, a field gun and limber parked by a ration cart and water cart, bell and ridge tents, horse lines, and a staff car and motorcycle on the track. Static layout; no rig...","description":"Rear area demonstration: a supply dump and raised water tank beside a light rail spur with a loaded trolley, a field gun and limber parked by a ration cart and water cart, bell and ridge tents, horse lines, and a staff car and motorcycle on the track. Static layout; no rig, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/trench-line-1917-rear-area-0970773a","cdnUrl":"https://cdn.3dassets.dev/assets/24131/v1/model.glb","downloadUrl":"https://3dassets.dev/download/trench-line-1917-rear-area-0970773a","thumbnailUrl":"https://cdn.3dassets.dev/assets/24131/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/24131/v1/poster.webp","blurhash":"U59G]h%M009HRnt7R*Ri00IU~W.6${NFxaxw","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"historical","title":"Historical"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"}],"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":717824,"triangles":17288,"vertices":36230,"meshes":87,"materials":8,"textures":0,"animations":[],"boundingBox":{"min":[-19.74058543581763,-0.000052542926867404915,-7.915852054261778],"max":[16.691093911961858,4.3486068337749035,16.88441720549608]},"sizeMeters":[36.432,4.349,24.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":14,"publishedAt":"2026-09-07T20:19:46.317Z","updatedAt":"2026-10-12T12:11:33.122Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/24131/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RearAreaWW1TrenchLine1917(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/24131/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/24131/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/24131/v1/model.glb\" alt=\"Rear Area (WW1 Trench Line 1917)\" 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/24131/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/24131/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}}],"demo":null}}