{"data":{"id":223,"slug":"fencing-club-and-tournament-piste","title":"Fencing Club and Tournament Piste","summary":"Fifty specialist fencing, electrical scoring and weapon maintenance designs in a furnished two-piste club.","description":"Original fencing equipment with distinct foil, epee and sabre construction, formed protective gear, fine mask mesh, scoring controls and repair tooling. Complete glazed-roof hall with two connected pistes and stocked changing, maintenance and reception areas. Static geometry without animation, collision or live scoring. No competition certification claimed.","url":"https://3dassets.dev/packs/fencing-club-and-tournament-piste","coverUrl":"https://cdn.3dassets.dev/assets/31257/v1/poster.webp","assetCount":51,"aiGenerated":true,"aiGeneratedAssetCount":51,"aiModels":["GPT-6"],"aiModelUnspecifiedCount":0,"featured":true,"licenseLabel":"CC0 1.0 Universal","totalBytes":7785240,"totalTriangles":483824,"starterScene":{"id":"31257","slug":"fencing-club-and-tournament-piste-wired--c5ec1795-starter-scene","title":"Wired Piste Club (Fencing Club and Tournament Piste)","summary":"Two continuous aluminium pistes, sheltered scoring desks and repeaters, fully stocked repair benches, garment displays, lockers and spectator seating inside a closed roofed club.","description":"Two continuous aluminium pistes, sheltered scoring desks and repeaters, fully stocked repair benches, garment displays, lockers and spectator seating inside a closed roofed club.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-wired--c5ec1795-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/31257/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-wired--c5ec1795-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/31257/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31257/v1/poster.webp","blurhash":"U4B:,3M|00%MxF-;X9IT00%L_4IVI:4ns+%M","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"modern","title":"Modern"},{"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":3589448,"triangles":240264,"vertices":161769,"meshes":183,"materials":14,"textures":0,"animations":[],"boundingBox":{"min":[-13,0.0004127658208950974,-9.00045777764214],"max":[13,4.064881626034511,9.00045777764214]},"sizeMeters":[26,4.064,18.001],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:23.483Z","updatedAt":"2026-09-08T10:45:23.600Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31257/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WiredPisteClubFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31257/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31257/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31257/v1/model.glb\" alt=\"Wired Piste Club (Fencing Club and Tournament Piste)\" 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/31257/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/31257/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},"assets":[{"id":"31206","slug":"fencing-club-and-tournament-piste-roofed-fencing-hall-c6a53713","title":"Roofed Fencing Hall (Fencing Club and Tournament Piste)","summary":"Twenty-four by sixteen metre enclosed fencing hall with thick walls, transparent supported roof, glazed recessed front entrance and suspended lighting. Static architectural kit.","description":"Twenty-four by sixteen metre enclosed fencing hall with thick walls, transparent supported roof, glazed recessed front entrance and suspended lighting. Static architectural kit. Dimensions 24.00 × 3.92 × 16.10 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-roofed-fencing-hall-c6a53713","cdnUrl":"https://cdn.3dassets.dev/assets/31206/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-roofed-fencing-hall-c6a53713","thumbnailUrl":"https://cdn.3dassets.dev/assets/31206/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31206/v1/poster.webp","blurhash":"U3Cj9DM|00?H?a_3IU4n00-:?b4n9a00%2%M","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":223976,"triangles":12600,"vertices":8954,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-12,0.0002906917829911121,-8.050294503616444],"max":[12,3.914881626034511,8.050294503616444]},"sizeMeters":[24,3.915,16.101],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:44:57.692Z","updatedAt":"2026-09-08T10:44:57.798Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31206/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RoofedFencingHallFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31206/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31206/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31206/v1/model.glb\" alt=\"Roofed Fencing Hall (Fencing Club and Tournament Piste)\" 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/31206/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/31206/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31208","slug":"fencing-club-and-tournament-piste-conductive-piste-sec-1f7fe590","title":"Conductive Piste Section (Fencing Club and Tournament Piste)","summary":"Two-metre modular conductive piste deck with edge strips, fasteners and fine traction relief.","description":"Two-metre modular conductive piste deck with edge strips, fasteners and fine traction relief. Dimensions 2.00 × 0.03 × 1.50 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-conductive-piste-sec-1f7fe590","cdnUrl":"https://cdn.3dassets.dev/assets/31208/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-conductive-piste-sec-1f7fe590","thumbnailUrl":"https://cdn.3dassets.dev/assets/31208/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31208/v1/poster.webp","blurhash":"U7AKH*xu00oJxvx]WUIo00Rj_NRkD$D%sp-p","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":84308,"triangles":4628,"vertices":3360,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1,-0.000003403067126313969,-0.749961851863155],"max":[1,0.031051850880544494,0.749961851863155]},"sizeMeters":[2,0.031,1.5],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:44:58.283Z","updatedAt":"2026-09-08T10:44:58.381Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31208/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ConductivePisteSectionFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31208/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31208/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31208/v1/model.glb\" alt=\"Conductive Piste Section (Fencing Club and Tournament Piste)\" 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/31208/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/31208/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31209","slug":"fencing-club-and-tournament-piste-piste-end-ramp-07f791b0","title":"Piste End Ramp (Fencing Club and Tournament Piste)","summary":"Shallow ten-step bevel approximation linking the 25 mm piste deck to the hall floor.","description":"Shallow ten-step bevel approximation linking the 25 mm piste deck to the hall floor. Dimensions 0.50 × 0.03 × 1.50 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-piste-end-ramp-07f791b0","cdnUrl":"https://cdn.3dassets.dev/assets/31209/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-piste-end-ramp-07f791b0","thumbnailUrl":"https://cdn.3dassets.dev/assets/31209/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31209/v1/poster.webp","blurhash":"U89tWAxu4Tt7xuD%Ri%M00Mx?vjaIT_4%MD$","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":53392,"triangles":3000,"vertices":2138,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.249969481490524,-0.00004310720837033197,-0.75],"max":[0.249969481490524,0.025043107580899362,0.75]},"sizeMeters":[0.5,0.025,1.5],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:44:59.367Z","updatedAt":"2026-09-08T10:44:59.470Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31209/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PisteEndRampFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31209/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31209/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31209/v1/model.glb\" alt=\"Piste End Ramp (Fencing Club and Tournament Piste)\" 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/31209/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/31209/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31210","slug":"fencing-club-and-tournament-piste-piste-reel-57e3eea8","title":"Piste Reel (Fencing Club and Tournament Piste)","summary":"Low-profile floor reel with bolted lid, centre spindle, short exit lead and connector. Static wound cable.","description":"Low-profile floor reel with bolted lid, centre spindle, short exit lead and connector. Static wound cable. Dimensions 0.55 × 0.10 × 0.32 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-piste-reel-57e3eea8","cdnUrl":"https://cdn.3dassets.dev/assets/31210/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-piste-reel-57e3eea8","thumbnailUrl":"https://cdn.3dassets.dev/assets/31210/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31210/v1/poster.webp","blurhash":"U86bAU.A8^9E?bxuIUIV4TI9%h%N00IU-;-p","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":26900,"triangles":1264,"vertices":1029,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.2750000059604645,-0.000006610640927010025,-0.1600000001490116],"max":[0.2750000059604645,0.10100660670702045,0.1600000001490116]},"sizeMeters":[0.55,0.101,0.32],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:44:59.760Z","updatedAt":"2026-09-08T10:44:59.860Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31210/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PisteReelFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31210/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31210/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31210/v1/model.glb\" alt=\"Piste Reel (Fencing Club and Tournament Piste)\" 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/31210/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/31210/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31211","slug":"fencing-club-and-tournament-piste-floor-cable-cover-b140ba29","title":"Floor Cable Cover (Fencing Club and Tournament Piste)","summary":"Low-profile one-piece cable crossing cover with sloped side shoulders and grip ribs.","description":"Low-profile one-piece cable crossing cover with sloped side shoulders and grip ribs. Dimensions 1.40 × 0.02 × 0.19 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-floor-cable-cover-b140ba29","cdnUrl":"https://cdn.3dassets.dev/assets/31211/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-floor-cable-cover-b140ba29","thumbnailUrl":"https://cdn.3dassets.dev/assets/31211/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31211/v1/poster.webp","blurhash":"U37w]D%39E%La$~qxaIU00M{_4M|f500E1?b","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":65672,"triangles":3600,"vertices":2578,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.701200008392334,-0.000023120680940056683,-0.09501413120706696],"max":[0.701200008392334,0.02203813250086992,0.09501413120706696]},"sizeMeters":[1.402,0.022,0.19],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:44:59.891Z","updatedAt":"2026-09-08T10:45:00.015Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31211/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FloorCableCoverFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31211/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31211/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31211/v1/model.glb\" alt=\"Floor Cable Cover (Fencing Club and Tournament Piste)\" 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/31211/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/31211/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31212","slug":"fencing-club-and-tournament-piste-scoring-apparatus-2b9d2d0c","title":"Scoring Apparatus (Fencing Club and Tournament Piste)","summary":"Desktop fencing score unit with red and green hit lamps, two digit fields, timing display and front controls.","description":"Desktop fencing score unit with red and green hit lamps, two digit fields, timing display and front controls. Dimensions 0.55 × 0.34 × 0.14 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-scoring-apparatus-2b9d2d0c","cdnUrl":"https://cdn.3dassets.dev/assets/31212/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-scoring-apparatus-2b9d2d0c","thumbnailUrl":"https://cdn.3dassets.dev/assets/31212/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31212/v1/poster.webp","blurhash":"U36Rr*^TD4Tu~W-;ofR54TOlp^VcAnI]D,TD","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":46828,"triangles":3300,"vertices":2347,"meshes":7,"materials":7,"textures":0,"animations":[],"boundingBox":{"min":[-0.2750000059604645,-0.000017092262188406204,-0.07124023582425582],"max":[0.2750000059604645,0.34001709583846706,0.07124861063787033]},"sizeMeters":[0.55,0.34,0.142],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:00.937Z","updatedAt":"2026-09-08T10:45:01.044Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31212/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ScoringApparatusFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31212/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31212/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31212/v1/model.glb\" alt=\"Scoring Apparatus (Fencing Club and Tournament Piste)\" 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/31212/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/31212/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31213","slug":"fencing-club-and-tournament-piste-repeater-lamp-0a744a05","title":"Repeater Lamp (Fencing Club and Tournament Piste)","summary":"Freestanding score repeater with dual coloured light windows and stable weighted foot.","description":"Freestanding score repeater with dual coloured light windows and stable weighted foot. Dimensions 0.50 × 1.82 × 0.38 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-repeater-lamp-0a744a05","cdnUrl":"https://cdn.3dassets.dev/assets/31213/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-repeater-lamp-0a744a05","thumbnailUrl":"https://cdn.3dassets.dev/assets/31213/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31213/v1/poster.webp","blurhash":"U15#eL?b0000ZzxGktELDhMx-??vDiah-;ou","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":22504,"triangles":1360,"vertices":1016,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.24997437165625844,0,-0.18995941585699452],"max":[0.24997437165625844,1.8200000524520874,0.18995941585699452]},"sizeMeters":[0.5,1.82,0.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:01.026Z","updatedAt":"2026-09-08T10:45:01.136Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31213/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RepeaterLampFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31213/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31213/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31213/v1/model.glb\" alt=\"Repeater Lamp (Fencing Club and Tournament Piste)\" 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/31213/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/31213/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31214","slug":"fencing-club-and-tournament-piste-referee-remote-c5b396b3","title":"Referee Remote (Fencing Club and Tournament Piste)","summary":"Hand remote with rounded shell, three control buttons and a closed wrist loop.","description":"Hand remote with rounded shell, three control buttons and a closed wrist loop. Dimensions 0.12 × 0.03 × 0.17 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-referee-remote-c5b396b3","cdnUrl":"https://cdn.3dassets.dev/assets/31214/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-referee-remote-c5b396b3","thumbnailUrl":"https://cdn.3dassets.dev/assets/31214/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31214/v1/poster.webp","blurhash":"U13laN%}00nonPH?RP.800H?.9RhO9?^.98^","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":24652,"triangles":1200,"vertices":963,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.059479864483426514,0.000005369236395543625,-0.0841454416513443],"max":[0.059479864483426514,0.026001190377359703,0.0841454416513443]},"sizeMeters":[0.119,0.026,0.168],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:01.429Z","updatedAt":"2026-09-08T10:45:01.535Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31214/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RefereeRemoteFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31214/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31214/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31214/v1/model.glb\" alt=\"Referee Remote (Fencing Club and Tournament Piste)\" 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/31214/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/31214/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31215","slug":"fencing-club-and-tournament-piste-scoring-table-e96d78a9","title":"Scoring Table (Fencing Club and Tournament Piste)","summary":"Lightweight scoring desk with aluminium square-tube legs, cross supports and thick laminate top.","description":"Lightweight scoring desk with aluminium square-tube legs, cross supports and thick laminate top. Dimensions 1.50 × 0.83 × 0.74 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-scoring-table-e96d78a9","cdnUrl":"https://cdn.3dassets.dev/assets/31215/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-scoring-table-e96d78a9","thumbnailUrl":"https://cdn.3dassets.dev/assets/31215/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31215/v1/poster.webp","blurhash":"UMB:jMWVE1ay~VxuIVRjIV%LWAM|4:s.xuRj","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":66564,"triangles":3720,"vertices":2588,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.75,-0.00001816578018626336,-0.3700925932032554],"max":[0.75,0.8259402377139327,0.37014487190066064]},"sizeMeters":[1.5,0.826,0.74],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:01.785Z","updatedAt":"2026-09-08T10:45:01.892Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31215/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ScoringTableFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31215/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31215/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31215/v1/model.glb\" alt=\"Scoring Table (Fencing Club and Tournament Piste)\" 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/31215/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/31215/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31216","slug":"fencing-club-and-tournament-piste-spectator-bench-94b29097","title":"Spectator Bench (Fencing Club and Tournament Piste)","summary":"Padded two-metre spectator bench with separate backrest, supported rails and tubular underframe.","description":"Padded two-metre spectator bench with separate backrest, supported rails and tubular underframe. Dimensions 2.00 × 0.94 × 0.45 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-spectator-bench-94b29097","cdnUrl":"https://cdn.3dassets.dev/assets/31216/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-spectator-bench-94b29097","thumbnailUrl":"https://cdn.3dassets.dev/assets/31216/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31216/v1/poster.webp","blurhash":"UD6lMyaeZzoglCx^VrV?DNT1kXVriZM{W?j=","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":81568,"triangles":4500,"vertices":3190,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1,-0.00003990590723340626,-0.2249824518570513],"max":[1,0.9399975614994742,0.2249824518570513]},"sizeMeters":[2,0.94,0.45],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:02.591Z","updatedAt":"2026-09-08T10:45:02.705Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31216/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SpectatorBenchFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31216/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31216/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31216/v1/model.glb\" alt=\"Spectator Bench (Fencing Club and Tournament Piste)\" 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/31216/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/31216/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31217","slug":"fencing-club-and-tournament-piste-equipment-inspection-fb863358","title":"Equipment Inspection Desk (Fencing Club and Tournament Piste)","summary":"Inspection and repair desk with fitted work mat, suspended tool drawer and a stiff cross-braced frame.","description":"Inspection and repair desk with fitted work mat, suspended tool drawer and a stiff cross-braced frame. Dimensions 1.80 × 0.79 × 0.80 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-equipment-inspection-fb863358","cdnUrl":"https://cdn.3dassets.dev/assets/31217/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-equipment-inspection-fb863358","thumbnailUrl":"https://cdn.3dassets.dev/assets/31217/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31217/v1/poster.webp","blurhash":"UFA,%rafMwxu~q%MRORj8_-:flIT8_axXARk","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":73748,"triangles":4200,"vertices":2983,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.8999999761581421,-0.000027766978478338533,-0.39994200423715043],"max":[0.8999999761581421,0.7860152507985585,0.39994200423715043]},"sizeMeters":[1.8,0.786,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:02.739Z","updatedAt":"2026-09-08T10:45:02.865Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31217/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EquipmentInspectionDeskFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31217/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31217/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31217/v1/model.glb\" alt=\"Equipment Inspection Desk (Fencing Club and Tournament Piste)\" 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/31217/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/31217/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31218","slug":"fencing-club-and-tournament-piste-weapon-test-box-6a6a6a97","title":"Weapon Test Box (Fencing Club and Tournament Piste)","summary":"Weapon continuity tester with recessed readout, three socket rings and probe cable.","description":"Weapon continuity tester with recessed readout, three socket rings and probe cable. Dimensions 0.30 × 0.25 × 0.24 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-weapon-test-box-6a6a6a97","cdnUrl":"https://cdn.3dassets.dev/assets/31218/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-weapon-test-box-6a6a6a97","thumbnailUrl":"https://cdn.3dassets.dev/assets/31218/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31218/v1/poster.webp","blurhash":"U467.pBo00{eCR=Jvf6M@@IoF_=|T1WCv}Sz","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":66936,"triangles":3924,"vertices":2426,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.1497889351891355,0,-0.12000332305779253],"max":[0.14978782641008884,0.25,0.12000011652708054]},"sizeMeters":[0.3,0.25,0.24],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:04.369Z","updatedAt":"2026-09-08T10:45:04.468Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31218/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WeaponTestBoxFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31218/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31218/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31218/v1/model.glb\" alt=\"Weapon Test Box (Fencing Club and Tournament Piste)\" 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/31218/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/31218/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31219","slug":"fencing-club-and-tournament-piste-weight-test-set-9235d087","title":"Weight Test Set (Fencing Club and Tournament Piste)","summary":"Pair of bored cylindrical tip-test weights in a fitted tray. Static inspection props.","description":"Pair of bored cylindrical tip-test weights in a fitted tray. Static inspection props. Dimensions 0.22 × 0.11 × 0.13 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-weight-test-set-9235d087","cdnUrl":"https://cdn.3dassets.dev/assets/31219/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-weight-test-set-9235d087","thumbnailUrl":"https://cdn.3dassets.dev/assets/31219/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31219/v1/poster.webp","blurhash":"U66[,ax_00V@+WtlNzMx00n2?HI;BtM|%2xB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":25084,"triangles":1100,"vertices":1028,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.10999999940395355,-0.000001601967741743024,-0.06499893149996486],"max":[0.10999999940395355,0.10999503940767126,0.06499893149996486]},"sizeMeters":[0.22,0.11,0.13],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:03.536Z","updatedAt":"2026-09-08T10:45:03.640Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31219/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WeightTestSetFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31219/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31219/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31219/v1/model.glb\" alt=\"Weight Test Set (Fencing Club and Tournament Piste)\" 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/31219/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/31219/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31220","slug":"fencing-club-and-tournament-piste-blade-gauge-103e0ecb","title":"Blade Gauge (Fencing Club and Tournament Piste)","summary":"Flat blade measurement gauge with six dark calibrated inspection marks and bevelled perimeter.","description":"Flat blade measurement gauge with six dark calibrated inspection marks and bevelled perimeter. Dimensions 0.18 × 0.01 × 0.06 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-blade-gauge-103e0ecb","cdnUrl":"https://cdn.3dassets.dev/assets/31220/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-blade-gauge-103e0ecb","thumbnailUrl":"https://cdn.3dassets.dev/assets/31220/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31220/v1/poster.webp","blurhash":"U48z[a%M00xt?v_3WBIT00t7_4IU0000oz-=","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":38380,"triangles":2100,"vertices":1484,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.09000000357627869,-0.0000047456594561780426,-0.029996338970810252],"max":[0.09000000357627869,0.008997955629930924,0.029996338970810252]},"sizeMeters":[0.18,0.009,0.06],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:04.316Z","updatedAt":"2026-09-08T10:45:04.446Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31220/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BladeGaugeFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31220/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31220/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31220/v1/model.glb\" alt=\"Blade Gauge (Fencing Club and Tournament Piste)\" 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/31220/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/31220/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31221","slug":"fencing-club-and-tournament-piste-foil-887ff3e4","title":"Foil (Fencing Club and Tournament Piste)","summary":"Straight foil with narrow square-section tapered blade, small hollow bell guard, wrapped grip and separate tip barrel.","description":"Straight foil with narrow square-section tapered blade, small hollow bell guard, wrapped grip and separate tip barrel. Dimensions 0.11 × 1.05 × 0.11 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-foil-887ff3e4","cdnUrl":"https://cdn.3dassets.dev/assets/31221/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-foil-887ff3e4","thumbnailUrl":"https://cdn.3dassets.dev/assets/31221/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31221/v1/poster.webp","blurhash":"U14LXhxu009F%MayIUof%fofIURj_3of4nRj","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":115752,"triangles":6908,"vertices":4471,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.05496780145072623,0,-0.05496780145072623],"max":[0.05496780145072623,1.0479999780654907,0.05496780145072623]},"sizeMeters":[0.11,1.048,0.11],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:04.536Z","updatedAt":"2026-09-08T10:45:04.649Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31221/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoilFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31221/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31221/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31221/v1/model.glb\" alt=\"Foil (Fencing Club and Tournament Piste)\" 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/31221/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/31221/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31222","slug":"fencing-club-and-tournament-piste-epee-95ee7c27","title":"Epee (Fencing Club and Tournament Piste)","summary":"Epee with triangular-section tapered blade, large hollow bell guard, offset pistol grip support and broad tip barrel.","description":"Epee with triangular-section tapered blade, large hollow bell guard, offset pistol grip support and broad tip barrel. Dimensions 0.15 × 1.08 × 0.15 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-epee-95ee7c27","cdnUrl":"https://cdn.3dassets.dev/assets/31222/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-epee-95ee7c27","thumbnailUrl":"https://cdn.3dassets.dev/assets/31222/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31222/v1/poster.webp","blurhash":"U25E{XWV00s;_NWV4Ts:Vrozo~ROn4t7XTIU","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":115460,"triangles":7024,"vertices":4409,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.07498398076212068,0,-0.07498398076212068],"max":[0.07498398076212068,1.0800000429153442,0.07498398076212068]},"sizeMeters":[0.15,1.08,0.15],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:06.326Z","updatedAt":"2026-09-08T10:45:06.433Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31222/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EpeeFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31222/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31222/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31222/v1/model.glb\" alt=\"Epee (Fencing Club and Tournament Piste)\" 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/31222/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/31222/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31223","slug":"fencing-club-and-tournament-piste-sabre-4bdecef0","title":"Sabre (Fencing Club and Tournament Piste)","summary":"Sabre with flattened tapered blade and continuous knuckle bow joined from guard to pommel; distinct weapon silhouette.","description":"Sabre with flattened tapered blade and continuous knuckle bow joined from guard to pommel; distinct weapon silhouette. Dimensions 0.14 × 1.06 × 0.12 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-sabre-4bdecef0","cdnUrl":"https://cdn.3dassets.dev/assets/31223/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-sabre-4bdecef0","thumbnailUrl":"https://cdn.3dassets.dev/assets/31223/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31223/v1/poster.webp","blurhash":"U155OZ-;000000kC~qRjDjIU-;?v_Nxu4n9F","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":113456,"triangles":6868,"vertices":4340,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.06949845079820208,0,-0.059968346071209815],"max":[0.06949845079820208,1.0621528625488281,0.059968346071209815]},"sizeMeters":[0.139,1.062,0.12],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:07.057Z","updatedAt":"2026-09-08T10:45:07.158Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31223/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SabreFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31223/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31223/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31223/v1/model.glb\" alt=\"Sabre (Fencing Club and Tournament Piste)\" 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/31223/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/31223/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31224","slug":"fencing-club-and-tournament-piste-body-cord-356b74b5","title":"Body Cord (Fencing Club and Tournament Piste)","summary":"Coiled electrical body cord with two moulded plugs and separate projecting contact pins.","description":"Coiled electrical body cord with two moulded plugs and separate projecting contact pins. Dimensions 0.37 × 0.04 × 0.19 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-body-cord-356b74b5","cdnUrl":"https://cdn.3dassets.dev/assets/31224/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-body-cord-356b74b5","thumbnailUrl":"https://cdn.3dassets.dev/assets/31224/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31224/v1/poster.webp","blurhash":"U23I*Ot.D%yCtStmX9V?4TQ+%2R6ISH;n3tT","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":87644,"triangles":5424,"vertices":3267,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.1850000023841858,-0.0000027468567480731787,-0.09599661230531621],"max":[0.1850000023841858,0.04199145621751062,0.09599661230531621]},"sizeMeters":[0.37,0.042,0.192],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:06.252Z","updatedAt":"2026-09-08T10:45:06.362Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31224/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BodyCordFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31224/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31224/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31224/v1/model.glb\" alt=\"Body Cord (Fencing Club and Tournament Piste)\" 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/31224/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/31224/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31225","slug":"fencing-club-and-tournament-piste-mask-46fb3207","title":"Mask (Fencing Club and Tournament Piste)","summary":"Ellipsoidal fencing mask with crossed curved steel mesh joined to a padded rear rim, closed mesh crown, supported bib and retention straps. Open rear fitting aperture.","description":"Ellipsoidal fencing mask with crossed curved steel mesh joined to a padded rear rim, closed mesh crown, supported bib and retention straps. Open rear fitting aperture. Dimensions 0.41 × 0.49 × 0.33 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-mask-46fb3207","cdnUrl":"https://cdn.3dassets.dev/assets/31225/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-mask-46fb3207","thumbnailUrl":"https://cdn.3dassets.dev/assets/31225/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31225/v1/poster.webp","blurhash":"U6ATsB^+000100t7~pIU00D%_N?b^*kC9aWB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":413896,"triangles":26100,"vertices":15853,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.20466135442256927,0.000004730128663851807,-0.166503495471966],"max":[0.20466135442256927,0.48831549286842346,0.16652081235476265]},"sizeMeters":[0.409,0.488,0.333],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:07.640Z","updatedAt":"2026-09-08T10:45:07.740Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31225/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MaskFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31225/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31225/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31225/v1/model.glb\" alt=\"Mask (Fencing Club and Tournament Piste)\" 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/31225/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/31225/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31226","slug":"fencing-club-and-tournament-piste-mask-tester-a18b4172","title":"Mask Tester (Fencing Club and Tournament Piste)","summary":"Bench mask tester with spring-barrel form, fine inspection point and stable padded base; nonfunctional prop.","description":"Bench mask tester with spring-barrel form, fine inspection point and stable padded base; nonfunctional prop. Dimensions 0.24 × 0.26 × 0.15 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-mask-tester-a18b4172","cdnUrl":"https://cdn.3dassets.dev/assets/31226/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-mask-tester-a18b4172","thumbnailUrl":"https://cdn.3dassets.dev/assets/31226/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31226/v1/poster.webp","blurhash":"UA4:4etSDNV@mPadS*WCM^V?ofkWt:o}r=n$","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":18884,"triangles":780,"vertices":713,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.11999999731779099,-6.852694639999934e-7,-0.07499496276966838],"max":[0.11999999731779099,0.25999999046325684,0.07499496276966838]},"sizeMeters":[0.24,0.26,0.15],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:08.956Z","updatedAt":"2026-09-08T10:45:09.063Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31226/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MaskTesterFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31226/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31226/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31226/v1/model.glb\" alt=\"Mask Tester (Fencing Club and Tournament Piste)\" 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/31226/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/31226/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31227","slug":"fencing-club-and-tournament-piste-fencing-jacket-75190be4","title":"Fencing Jacket (Fencing Club and Tournament Piste)","summary":"Shaped padded fencing jacket on a supported display pole, with full sleeves, neck opening, centre closure and seam piping.","description":"Shaped padded fencing jacket on a supported display pole, with full sleeves, neck opening, centre closure and seam piping. Dimensions 0.87 × 1.34 × 0.38 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-fencing-jacket-75190be4","cdnUrl":"https://cdn.3dassets.dev/assets/31227/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-fencing-jacket-75190be4","thumbnailUrl":"https://cdn.3dassets.dev/assets/31227/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31227/v1/poster.webp","blurhash":"UA9jyAt700M_~qt74nM{00t7?bM{00ae~qof","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":118936,"triangles":6928,"vertices":4557,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.4350000023841858,0.00001037584618700238,-0.19000061037018953],"max":[0.4350000023841858,1.3399999141693115,0.19000061037018953]},"sizeMeters":[0.87,1.34,0.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:08.041Z","updatedAt":"2026-09-08T10:45:08.138Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31227/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FencingJacketFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31227/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31227/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31227/v1/model.glb\" alt=\"Fencing Jacket (Fencing Club and Tournament Piste)\" 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/31227/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/31227/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31228","slug":"fencing-club-and-tournament-piste-lame-vest-b2b4adf2","title":"Lame Vest (Fencing Club and Tournament Piste)","summary":"Conductive sleeveless vest with formed torso, substantial arm openings, collar and visible closure; displayed on a weighted stand.","description":"Conductive sleeveless vest with formed torso, substantial arm openings, collar and visible closure; displayed on a weighted stand. Dimensions 0.50 × 1.34 × 0.38 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-lame-vest-b2b4adf2","cdnUrl":"https://cdn.3dassets.dev/assets/31228/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-lame-vest-b2b4adf2","thumbnailUrl":"https://cdn.3dassets.dev/assets/31228/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31228/v1/poster.webp","blurhash":"U57K#e%M009F_Nt74nM{D%j[-:WB00Rj_Nxu","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":82416,"triangles":4552,"vertices":3169,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.25,0.00001037584618700238,-0.19000061037018953],"max":[0.25,1.3399999141693115,0.19000061037018953]},"sizeMeters":[0.5,1.34,0.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:08.711Z","updatedAt":"2026-09-08T10:45:08.808Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31228/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LameVestFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31228/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31228/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31228/v1/model.glb\" alt=\"Lame Vest (Fencing Club and Tournament Piste)\" 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/31228/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/31228/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31229","slug":"fencing-club-and-tournament-piste-glove-a2be6d06","title":"Glove (Fencing Club and Tournament Piste)","summary":"Volumetric fencing glove with four closed rounded fingers, angled padded thumb, long cuff and wrist fastening.","description":"Volumetric fencing glove with four closed rounded fingers, angled padded thumb, long cuff and wrist fastening. Dimensions 0.16 × 0.21 × 0.06 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-glove-a2be6d06","cdnUrl":"https://cdn.3dassets.dev/assets/31229/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-glove-a2be6d06","thumbnailUrl":"https://cdn.3dassets.dev/assets/31229/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31229/v1/poster.webp","blurhash":"UECGcA?b0000^+xuD*E100RP~qxuD*WCxuob","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":101400,"triangles":6348,"vertices":4011,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.0780075858995579,-0.0000016014456758473017,-0.030000534862296716],"max":[0.0780075858995579,0.21000000834465027,0.030000534862296716]},"sizeMeters":[0.156,0.21,0.06],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:09.290Z","updatedAt":"2026-09-08T10:45:09.396Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31229/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GloveFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31229/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31229/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31229/v1/model.glb\" alt=\"Glove (Fencing Club and Tournament Piste)\" 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/31229/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/31229/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31230","slug":"fencing-club-and-tournament-piste-breeches-hanger-79fbe8f3","title":"Breeches Hanger (Fencing Club and Tournament Piste)","summary":"Shaped knee-length fencing breeches suspended from clips, with two separate legs, reinforced waistband and closure.","description":"Shaped knee-length fencing breeches suspended from clips, with two separate legs, reinforced waistband and closure. Dimensions 0.50 × 1.49 × 0.38 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-breeches-hanger-79fbe8f3","cdnUrl":"https://cdn.3dassets.dev/assets/31230/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-breeches-hanger-79fbe8f3","thumbnailUrl":"https://cdn.3dassets.dev/assets/31230/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31230/v1/poster.webp","blurhash":"U98qTxtR00IA~pof4nRjIoof%2Rj00WB_3oz","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":64736,"triangles":3496,"vertices":2509,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.25,0.00001037584618700238,-0.19000061037018953],"max":[0.25,1.4900000095367432,0.19000061037018953]},"sizeMeters":[0.5,1.49,0.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:09.797Z","updatedAt":"2026-09-08T10:45:09.921Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31230/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BreechesHangerFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31230/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31230/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31230/v1/model.glb\" alt=\"Breeches Hanger (Fencing Club and Tournament Piste)\" 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/31230/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/31230/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31231","slug":"fencing-club-and-tournament-piste-chest-protector-ed4d5c83","title":"Chest Protector (Fencing Club and Tournament Piste)","summary":"Moulded curved chest protector with substantial shell depth and two supporting straps on a display stand.","description":"Moulded curved chest protector with substantial shell depth and two supporting straps on a display stand. Dimensions 0.50 × 1.20 × 0.38 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-chest-protector-ed4d5c83","cdnUrl":"https://cdn.3dassets.dev/assets/31231/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-chest-protector-ed4d5c83","thumbnailUrl":"https://cdn.3dassets.dev/assets/31231/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31231/v1/poster.webp","blurhash":"U98XLSxt00IU~qs:4nM{NGt7xaM{4na#?bjY","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":58452,"triangles":3508,"vertices":2111,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.25,0.00001037584618700238,-0.19000061037018953],"max":[0.25,1.2022339318761763,0.19000061037018953]},"sizeMeters":[0.5,1.202,0.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:10.380Z","updatedAt":"2026-09-08T10:45:10.479Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31231/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ChestProtectorFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31231/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31231/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31231/v1/model.glb\" alt=\"Chest Protector (Fencing Club and Tournament Piste)\" 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/31231/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/31231/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31232","slug":"fencing-club-and-tournament-piste-underarm-protector-7eee33b1","title":"Underarm Protector (Fencing Club and Tournament Piste)","summary":"Asymmetric shaped underarm plastron with short sleeve, padded torso and securing strap on a weighted stand.","description":"Asymmetric shaped underarm plastron with short sleeve, padded torso and securing strap on a weighted stand. Dimensions 0.56 × 1.29 × 0.38 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-underarm-protector-7eee33b1","cdnUrl":"https://cdn.3dassets.dev/assets/31232/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-underarm-protector-7eee33b1","thumbnailUrl":"https://cdn.3dassets.dev/assets/31232/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31232/v1/poster.webp","blurhash":"UB8z[Yt700IU~qt74nM{WAofogRj8_j[?bWB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":53084,"triangles":3140,"vertices":1907,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.280373752117157,0.00001037584618700238,-0.19000061037018953],"max":[0.280385612508752,1.2899999618530273,0.19000061037018953]},"sizeMeters":[0.561,1.29,0.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:10.710Z","updatedAt":"2026-09-08T10:45:10.836Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31232/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function UnderarmProtectorFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31232/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31232/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31232/v1/model.glb\" alt=\"Underarm Protector (Fencing Club and Tournament Piste)\" 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/31232/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/31232/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31233","slug":"fencing-club-and-tournament-piste-weapon-wall-rack-6ac55856","title":"Weapon Wall Rack (Fencing Club and Tournament Piste)","summary":"Six-place weapon rack with lower butt rests, upper U-shaped retention cradles and rigid wall panel.","description":"Six-place weapon rack with lower butt rests, upper U-shaped retention cradles and rigid wall panel. Dimensions 1.40 × 1.40 × 0.20 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-weapon-wall-rack-6ac55856","cdnUrl":"https://cdn.3dassets.dev/assets/31233/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-weapon-wall-rack-6ac55856","thumbnailUrl":"https://cdn.3dassets.dev/assets/31233/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31233/v1/poster.webp","blurhash":"U44WbVoI4TWB%%t.McMHQ8kXpfRig4o~adR4","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":89136,"triangles":5220,"vertices":3433,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.699999988079071,0,-0.10209418639948138],"max":[0.699999988079071,1.399999976158142,0.10205798159379668]},"sizeMeters":[1.4,1.4,0.204],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:10.934Z","updatedAt":"2026-09-08T10:45:11.040Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31233/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WeaponWallRackFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31233/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31233/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31233/v1/model.glb\" alt=\"Weapon Wall Rack (Fencing Club and Tournament Piste)\" 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/31233/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/31233/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31234","slug":"fencing-club-and-tournament-piste-weapon-bag-e068dc47","title":"Weapon Bag (Fencing Club and Tournament Piste)","summary":"Long padded weapon bag with rounded ends, side zipper, two carrying handles and thick base.","description":"Long padded weapon bag with rounded ends, side zipper, two carrying handles and thick base. Dimensions 0.25 × 1.15 × 0.24 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-weapon-bag-e068dc47","cdnUrl":"https://cdn.3dassets.dev/assets/31234/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-weapon-bag-e068dc47","thumbnailUrl":"https://cdn.3dassets.dev/assets/31234/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31234/v1/poster.webp","blurhash":"U12QA;t600My.TogDgV=tKVsRqt,xxV]M]x?","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":33060,"triangles":1860,"vertices":1188,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.1265167614068946,0,-0.11782132275976683],"max":[0.12650592607655575,1.149999976158142,0.11785089982749186]},"sizeMeters":[0.253,1.15,0.236],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:11.558Z","updatedAt":"2026-09-08T10:45:11.659Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31234/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WeaponBagFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31234/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31234/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31234/v1/model.glb\" alt=\"Weapon Bag (Fencing Club and Tournament Piste)\" 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/31234/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/31234/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31235","slug":"fencing-club-and-tournament-piste-blade-repair-vise-2c123b3d","title":"Blade Repair Vise (Fencing Club and Tournament Piste)","summary":"Compact bench blade vise with padded separated jaws, screw shaft and sliding operating bar.","description":"Compact bench blade vise with padded separated jaws, screw shaft and sliding operating bar. Dimensions 0.38 × 0.23 × 0.20 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-blade-repair-vise-2c123b3d","cdnUrl":"https://cdn.3dassets.dev/assets/31235/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-blade-repair-vise-2c123b3d","thumbnailUrl":"https://cdn.3dassets.dev/assets/31235/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31235/v1/poster.webp","blurhash":"U48;u#.T00iZxZtRWFRj00Z~cHER?wniMvM{","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":47288,"triangles":2640,"vertices":1784,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.18785317242145538,0.0000071015725000012075,-0.09999496546449246],"max":[0.18785317242145538,0.22499641308158333,0.09999496546449246]},"sizeMeters":[0.376,0.225,0.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:12.126Z","updatedAt":"2026-09-08T10:45:12.225Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31235/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BladeRepairViseFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31235/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31235/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31235/v1/model.glb\" alt=\"Blade Repair Vise (Fencing Club and Tournament Piste)\" 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/31235/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/31235/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31236","slug":"fencing-club-and-tournament-piste-tip-screwdriver-1bf26d75","title":"Tip Screwdriver (Fencing Club and Tournament Piste)","summary":"Precision tip screwdriver with ribbed grip, rotary cap and fine steel driver shank.","description":"Precision tip screwdriver with ribbed grip, rotary cap and fine steel driver shank. Dimensions 0.03 × 0.16 × 0.03 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-tip-screwdriver-1bf26d75","cdnUrl":"https://cdn.3dassets.dev/assets/31236/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-tip-screwdriver-1bf26d75","thumbnailUrl":"https://cdn.3dassets.dev/assets/31236/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31236/v1/poster.webp","blurhash":"U02?Ns.80000}NkQ1TRF8^Rj.T%L5iaP=}tw","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":81204,"triangles":5088,"vertices":3144,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.014001098559279656,0,-0.014001098559279656],"max":[0.014001098559279656,0.1550000011920929,0.014001098559279656]},"sizeMeters":[0.028,0.155,0.028],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:12.419Z","updatedAt":"2026-09-08T10:45:12.515Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31236/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TipScrewdriverFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31236/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31236/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31236/v1/model.glb\" alt=\"Tip Screwdriver (Fencing Club and Tournament Piste)\" 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/31236/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/31236/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31237","slug":"fencing-club-and-tournament-piste-foil-tip-assembly-tr-e3502fbd","title":"Foil Tip Assembly Tray (Fencing Club and Tournament Piste)","summary":"Divided tray with narrow foil barrel, point, spring loop and miniature fixing screws.","description":"Divided tray with narrow foil barrel, point, spring loop and miniature fixing screws. Dimensions 0.22 × 0.05 × 0.14 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-foil-tip-assembly-tr-e3502fbd","cdnUrl":"https://cdn.3dassets.dev/assets/31237/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-foil-tip-assembly-tr-e3502fbd","thumbnailUrl":"https://cdn.3dassets.dev/assets/31237/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31237/v1/poster.webp","blurhash":"U33^8Lt.D4W.$,p0SiRg4TZ#yZV?ISRMnzs9","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":71084,"triangles":3976,"vertices":2819,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.10999999940395355,0.000005492993013160585,-0.06999420110392869],"max":[0.10999999940395355,0.05099818288459548,0.06999420110392869]},"sizeMeters":[0.22,0.051,0.14],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:12.623Z","updatedAt":"2026-09-08T10:45:12.759Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31237/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoilTipAssemblyTrayFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31237/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31237/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31237/v1/model.glb\" alt=\"Foil Tip Assembly Tray (Fencing Club and Tournament Piste)\" 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/31237/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/31237/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31238","slug":"fencing-club-and-tournament-piste-epee-tip-assembly-tr-4b9687bd","title":"Epee Tip Assembly Tray (Fencing Club and Tournament Piste)","summary":"Separate epee service tray with broad point barrels, contact block and spring components.","description":"Separate epee service tray with broad point barrels, contact block and spring components. Dimensions 0.22 × 0.05 × 0.14 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-epee-tip-assembly-tr-4b9687bd","cdnUrl":"https://cdn.3dassets.dev/assets/31238/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-epee-tip-assembly-tr-4b9687bd","thumbnailUrl":"https://cdn.3dassets.dev/assets/31238/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31238/v1/poster.webp","blurhash":"U34DAat.8wW.$,tTSiRg00Z#%$V?D~R3s7s8","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":77132,"triangles":4276,"vertices":3031,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.10999999940395355,0.000005492993013160585,-0.06999420110392869],"max":[0.10999999940395355,0.05099818288459548,0.06999420110392869]},"sizeMeters":[0.22,0.051,0.14],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:13.257Z","updatedAt":"2026-09-08T10:45:13.362Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31238/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EpeeTipAssemblyTrayFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31238/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31238/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31238/v1/model.glb\" alt=\"Epee Tip Assembly Tray (Fencing Club and Tournament Piste)\" 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/31238/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/31238/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31239","slug":"fencing-club-and-tournament-piste-wire-spool-f0e7bfea","title":"Wire Spool (Fencing Club and Tournament Piste)","summary":"Fine blade wire spool with flanged ends and individually resolved winding relief.","description":"Fine blade wire spool with flanged ends and individually resolved winding relief. Dimensions 0.18 × 0.16 × 0.18 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-wire-spool-f0e7bfea","cdnUrl":"https://cdn.3dassets.dev/assets/31239/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-wire-spool-f0e7bfea","thumbnailUrl":"https://cdn.3dassets.dev/assets/31239/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31239/v1/poster.webp","blurhash":"U78EY]x^00ELLNWXz.sl21SN|q$M}7oL74OF","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":153616,"triangles":9696,"vertices":5790,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.09000000357627869,-0.000002141262801944044,-0.09000000357627869],"max":[0.09000000357627869,0.16000213768652327,0.09000000357627869]},"sizeMeters":[0.18,0.16,0.18],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:13.885Z","updatedAt":"2026-09-08T10:45:13.974Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31239/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WireSpoolFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31239/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31239/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31239/v1/model.glb\" alt=\"Wire Spool (Fencing Club and Tournament Piste)\" 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/31239/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/31239/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31240","slug":"fencing-club-and-tournament-piste-glue-applicator-a5da2b08","title":"Glue Applicator (Fencing Club and Tournament Piste)","summary":"Small squeezable glue applicator with shouldered bottle, threaded-form collar and narrow tapered nozzle.","description":"Small squeezable glue applicator with shouldered bottle, threaded-form collar and narrow tapered nozzle. Dimensions 0.05 × 0.15 × 0.05 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-glue-applicator-a5da2b08","cdnUrl":"https://cdn.3dassets.dev/assets/31240/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-glue-applicator-a5da2b08","thumbnailUrl":"https://cdn.3dassets.dev/assets/31240/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31240/v1/poster.webp","blurhash":"U8Cj2{-;00004nRj?Hxu00Rj_Nxu-:ofIoWB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":24416,"triangles":1248,"vertices":931,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.02499694914234188,0,-0.02499694914234188],"max":[0.02499694914234188,0.15000000596046448,0.02499694914234188]},"sizeMeters":[0.05,0.15,0.05],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:14.142Z","updatedAt":"2026-09-08T10:45:14.237Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31240/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GlueApplicatorFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31240/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31240/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31240/v1/model.glb\" alt=\"Glue Applicator (Fencing Club and Tournament Piste)\" 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/31240/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/31240/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31241","slug":"fencing-club-and-tournament-piste-blade-straightening--e90e948a","title":"Blade Straightening Block (Fencing Club and Tournament Piste)","summary":"Timber blade working block with separated padded supports and a metal edge stop.","description":"Timber blade working block with separated padded supports and a metal edge stop. Dimensions 0.35 × 0.11 × 0.12 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-blade-straightening--e90e948a","cdnUrl":"https://cdn.3dassets.dev/assets/31241/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-blade-straightening--e90e948a","thumbnailUrl":"https://cdn.3dassets.dev/assets/31241/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31241/v1/poster.webp","blurhash":"U5Ciz4?H00t99d_1%1IW004:~p%0==01IpxC","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":20020,"triangles":1200,"vertices":848,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.17499999701976776,0.000008013237338337642,-0.05999252194351181],"max":[0.17499999701976776,0.10500534437932185,0.05999252194351181]},"sizeMeters":[0.35,0.105,0.12],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:14.301Z","updatedAt":"2026-09-08T10:45:14.422Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31241/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BladeStraighteningBlockFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31241/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31241/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31241/v1/model.glb\" alt=\"Blade Straightening Block (Fencing Club and Tournament Piste)\" 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/31241/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/31241/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31242","slug":"fencing-club-and-tournament-piste-electrical-test-mete-1e9f529e","title":"Electrical Test Meter (Fencing Club and Tournament Piste)","summary":"Compact continuity meter with screen, selector knobs and a flexible test lead.","description":"Compact continuity meter with screen, selector knobs and a flexible test lead. Dimensions 0.21 × 0.24 × 0.21 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-electrical-test-mete-1e9f529e","cdnUrl":"https://cdn.3dassets.dev/assets/31242/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-electrical-test-mete-1e9f529e","thumbnailUrl":"https://cdn.3dassets.dev/assets/31242/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31242/v1/poster.webp","blurhash":"U23lUAyX00Hq?bn%9FS4vyR4I;yE.TkXI9Z~","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":38348,"triangles":1940,"vertices":1429,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.10562711209058762,0,-0.10545365528628778],"max":[0.10562157561160038,0.23999999463558197,0.10545365528628778]},"sizeMeters":[0.211,0.24,0.211],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:15.971Z","updatedAt":"2026-09-08T10:45:16.063Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31242/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ElectricalTestMeterFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31242/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31242/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31242/v1/model.glb\" alt=\"Electrical Test Meter (Fencing Club and Tournament Piste)\" 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/31242/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/31242/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31243","slug":"fencing-club-and-tournament-piste-cord-storage-reel-a3a8d610","title":"Cord Storage Reel (Fencing Club and Tournament Piste)","summary":"Stand-mounted spare cord drum with separated flanges, axle bearings and offset winding crank.","description":"Stand-mounted spare cord drum with separated flanges, axle bearings and offset winding crank. Dimensions 0.37 × 0.33 × 0.28 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-cord-storage-reel-a3a8d610","cdnUrl":"https://cdn.3dassets.dev/assets/31243/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-cord-storage-reel-a3a8d610","thumbnailUrl":"https://cdn.3dassets.dev/assets/31243/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31243/v1/poster.webp","blurhash":"U4434Q%$D4SjY8o~oIaxHXWFx^VWrTaMV=Z|","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":44552,"triangles":2316,"vertices":1734,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.1850000023841858,-0.0000042786323929955294,-0.1400000061839819],"max":[0.1850000023841858,0.33000001311302185,0.1400000061839819]},"sizeMeters":[0.37,0.33,0.28],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:15.561Z","updatedAt":"2026-09-08T10:45:15.659Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31243/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CordStorageReelFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31243/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31243/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31243/v1/model.glb\" alt=\"Cord Storage Reel (Fencing Club and Tournament Piste)\" 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/31243/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/31243/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31244","slug":"fencing-club-and-tournament-piste-equipment-drying-cab-4c4d97ca","title":"Equipment Drying Cabinet (Fencing Club and Tournament Piste)","summary":"Ventilated gear cabinet with four perforated shelves, clear doors, handles and upper exhaust slots.","description":"Ventilated gear cabinet with four perforated shelves, clear doors, handles and upper exhaust slots. Dimensions 1.10 × 1.93 × 0.65 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-equipment-drying-cab-4c4d97ca","cdnUrl":"https://cdn.3dassets.dev/assets/31244/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-equipment-drying-cab-4c4d97ca","thumbnailUrl":"https://cdn.3dassets.dev/assets/31244/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31244/v1/poster.webp","blurhash":"UFF6FDoz00%2~qxu9FIU4Tj[t8M{%MofIURj","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":322388,"triangles":18300,"vertices":13047,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.5500206346241459,0,-0.322544730508618],"max":[0.5500206346241459,1.9299999475479126,0.32254672938351897]},"sizeMeters":[1.1,1.93,0.645],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:16.842Z","updatedAt":"2026-09-08T10:45:16.945Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31244/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EquipmentDryingCabinetFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31244/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31244/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31244/v1/model.glb\" alt=\"Equipment Drying Cabinet (Fencing Club and Tournament Piste)\" 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/31244/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/31244/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31245","slug":"fencing-club-and-tournament-piste-changing-locker-31f24683","title":"Changing Locker (Fencing Club and Tournament Piste)","summary":"Individual full-height changing locker with inset door, hinges, pull and two louvre banks.","description":"Individual full-height changing locker with inset door, hinges, pull and two louvre banks. Dimensions 0.65 × 1.88 × 0.65 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-changing-locker-31f24683","cdnUrl":"https://cdn.3dassets.dev/assets/31245/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-changing-locker-31f24683","thumbnailUrl":"https://cdn.3dassets.dev/assets/31245/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31245/v1/poster.webp","blurhash":"UGCGla9Z00~U^+axD%fkR4%LXA9a-pjuIUay","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":87256,"triangles":4800,"vertices":3421,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.3250307555794152,0,-0.3237878598849665],"max":[0.3250307555794152,1.8799999952316284,0.32374931927690226]},"sizeMeters":[0.65,1.88,0.648],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:16.101Z","updatedAt":"2026-09-08T10:45:16.194Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31245/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ChangingLockerFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31245/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31245/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31245/v1/model.glb\" alt=\"Changing Locker (Fencing Club and Tournament Piste)\" 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/31245/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/31245/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31246","slug":"fencing-club-and-tournament-piste-shoe-bench-22abe4b7","title":"Shoe Bench (Fencing Club and Tournament Piste)","summary":"Changing bench with padded seat and raised three-bar footwear storage shelf.","description":"Changing bench with padded seat and raised three-bar footwear storage shelf. Dimensions 1.30 × 0.47 × 0.50 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-shoe-bench-22abe4b7","cdnUrl":"https://cdn.3dassets.dev/assets/31246/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-shoe-bench-22abe4b7","thumbnailUrl":"https://cdn.3dassets.dev/assets/31246/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31246/v1/poster.webp","blurhash":"UC7xd#tRR2tRt:yDnzV?4TXUtSVrVBIUNzoe","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":81768,"triangles":4500,"vertices":3199,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.6499999761581421,-0.000026246164157001095,-0.2499664204708624],"max":[0.6499999761581421,0.4650348767032919,0.2499664204708624]},"sizeMeters":[1.3,0.465,0.5],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:17.344Z","updatedAt":"2026-09-08T10:45:17.437Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31246/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShoeBenchFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31246/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31246/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31246/v1/model.glb\" alt=\"Shoe Bench (Fencing Club and Tournament Piste)\" 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/31246/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/31246/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31247","slug":"fencing-club-and-tournament-piste-shoe-pair-99a417ac","title":"Shoe Pair (Fencing Club and Tournament Piste)","summary":"Pair of shaped fencing shoes with oval grip soles, rounded uppers, padded dark collar openings and four resolved lacing rows each.","description":"Pair of shaped fencing shoes with oval grip soles, rounded uppers, padded dark collar openings and four resolved lacing rows each. Dimensions 0.31 × 0.12 × 0.30 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-shoe-pair-99a417ac","cdnUrl":"https://cdn.3dassets.dev/assets/31247/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-shoe-pair-99a417ac","thumbnailUrl":"https://cdn.3dassets.dev/assets/31247/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31247/v1/poster.webp","blurhash":"U9A-6h-p00NG-QxtW?Io00M{~qag59E1WU-:","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":193828,"triangles":12264,"vertices":7288,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.15600000321865082,0.0000027617818841654818,-0.15000128487228098],"max":[0.15600000321865082,0.12142590609545015,0.15000128487228098]},"sizeMeters":[0.312,0.121,0.3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:17.713Z","updatedAt":"2026-09-08T10:45:17.835Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31247/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShoePairFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31247/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31247/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31247/v1/model.glb\" alt=\"Shoe Pair (Fencing Club and Tournament Piste)\" 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/31247/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/31247/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31248","slug":"fencing-club-and-tournament-piste-towel-bin-5bcb71a9","title":"Towel Bin (Fencing Club and Tournament Piste)","summary":"Hollow laundry bin with thick rolled rim and a folded towel resting inside.","description":"Hollow laundry bin with thick rolled rim and a folded towel resting inside. Dimensions 0.41 × 0.50 × 0.41 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-towel-bin-5bcb71a9","cdnUrl":"https://cdn.3dassets.dev/assets/31248/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-towel-bin-5bcb71a9","thumbnailUrl":"https://cdn.3dassets.dev/assets/31248/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31248/v1/poster.webp","blurhash":"UC7xqFtT00R4~VoK9Gbc$vadNLo#IpWUxts.","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":29696,"triangles":1452,"vertices":1141,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.20499999821186066,0,-0.20499999821186066],"max":[0.20499999821186066,0.5049900759892493,0.20499999821186066]},"sizeMeters":[0.41,0.505,0.41],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:17.803Z","updatedAt":"2026-09-08T10:45:17.956Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31248/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TowelBinFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31248/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31248/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31248/v1/model.glb\" alt=\"Towel Bin (Fencing Club and Tournament Piste)\" 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/31248/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/31248/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31249","slug":"fencing-club-and-tournament-piste-water-cooler-fead9477","title":"Water Cooler (Fencing Club and Tournament Piste)","summary":"Standing water dispenser with reservoir bottle, twin taps, recessed cup bay and drip tray.","description":"Standing water dispenser with reservoir bottle, twin taps, recessed cup bay and drip tray. Dimensions 0.35 × 1.17 × 0.45 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-water-cooler-fead9477","cdnUrl":"https://cdn.3dassets.dev/assets/31249/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-water-cooler-fead9477","thumbnailUrl":"https://cdn.3dassets.dev/assets/31249/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31249/v1/poster.webp","blurhash":"U8B|d3Rl00xs0LR+~At300xu^+IUaJbFo#oM","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":112836,"triangles":6748,"vertices":4421,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-0.1749740592669454,0,-0.22747405762781767],"max":[0.1749740592669454,1.1699999570846558,0.22749664013273702]},"sizeMeters":[0.35,1.17,0.455],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:18.579Z","updatedAt":"2026-09-08T10:45:18.674Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31249/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WaterCoolerFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31249/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31249/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31249/v1/model.glb\" alt=\"Water Cooler (Fencing Club and Tournament Piste)\" 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/31249/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/31249/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31250","slug":"fencing-club-and-tournament-piste-club-reception-cb85726c","title":"Club Reception (Fencing Club and Tournament Piste)","summary":"Club reception counter with thick overhanging top, blue front fascia and metal reveals.","description":"Club reception counter with thick overhanging top, blue front fascia and metal reveals. Dimensions 2.05 × 1.04 × 0.80 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-club-reception-cb85726c","cdnUrl":"https://cdn.3dassets.dev/assets/31250/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-club-reception-cb85726c","thumbnailUrl":"https://cdn.3dassets.dev/assets/31250/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31250/v1/poster.webp","blurhash":"UNBW#+tSDjoM~VxvIqRjR2%0ozM|9bxVxVNG","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":25932,"triangles":1500,"vertices":1067,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1.024999976158142,-0.00004028532657798789,-0.399933612939294],"max":[1.024999976158142,1.0450327184237613,0.399933612939294]},"sizeMeters":[2.05,1.045,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:19.004Z","updatedAt":"2026-09-08T10:45:19.107Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31250/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ClubReceptionFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31250/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31250/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31250/v1/model.glb\" alt=\"Club Reception (Fencing Club and Tournament Piste)\" 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/31250/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/31250/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31251","slug":"fencing-club-and-tournament-piste-membership-scanner-e27ac5cd","title":"Membership Scanner (Fencing Club and Tournament Piste)","summary":"Angled membership scanner with optical window and weighted desktop foot.","description":"Angled membership scanner with optical window and weighted desktop foot. Dimensions 0.14 × 0.19 × 0.16 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-membership-scanner-e27ac5cd","cdnUrl":"https://cdn.3dassets.dev/assets/31251/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-membership-scanner-e27ac5cd","thumbnailUrl":"https://cdn.3dassets.dev/assets/31251/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31251/v1/poster.webp","blurhash":"U442-rxs8wICoej=RjV[ZLkDY8W9%MoMRiXR","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":23784,"triangles":1200,"vertices":855,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.07000289669070918,0,-0.08000373558289117],"max":[0.07000289669070918,0.19499999284744263,0.08000373558289117]},"sizeMeters":[0.14,0.195,0.16],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:19.442Z","updatedAt":"2026-09-08T10:45:19.546Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31251/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MembershipScannerFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31251/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31251/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31251/v1/model.glb\" alt=\"Membership Scanner (Fencing Club and Tournament Piste)\" 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/31251/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/31251/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31252","slug":"fencing-club-and-tournament-piste-tournament-bracket-b-88f4955a","title":"Tournament Bracket Board (Fencing Club and Tournament Piste)","summary":"Freestanding tournament board with thick frame and physically modelled bracket lines; no printed branding.","description":"Freestanding tournament board with thick frame and physically modelled bracket lines; no printed branding. Dimensions 1.40 × 1.70 × 0.38 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-tournament-bracket-b-88f4955a","cdnUrl":"https://cdn.3dassets.dev/assets/31252/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-tournament-bracket-b-88f4955a","thumbnailUrl":"https://cdn.3dassets.dev/assets/31252/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31252/v1/poster.webp","blurhash":"UH9k1^tl00M_?wtSD$MxD%oz-:M_4nV@?bt6","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":91220,"triangles":6160,"vertices":3157,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.699999988079071,0,-0.19001343310885233],"max":[0.699999988079071,1.7000320069686274,0.19001343310885233]},"sizeMeters":[1.4,1.7,0.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:19.584Z","updatedAt":"2026-09-08T10:45:19.687Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31252/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TournamentBracketBoardFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31252/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31252/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31252/v1/model.glb\" alt=\"Tournament Bracket Board (Fencing Club and Tournament Piste)\" 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/31252/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/31252/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31253","slug":"fencing-club-and-tournament-piste-trophy-shelf-fcd89d1b","title":"Trophy Shelf (Fencing Club and Tournament Piste)","summary":"Wall-backed trophy shelf with three hollow cups on stems and weighted bases.","description":"Wall-backed trophy shelf with three hollow cups on stems and weighted bases. Dimensions 0.95 × 0.65 × 0.25 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-trophy-shelf-fcd89d1b","cdnUrl":"https://cdn.3dassets.dev/assets/31253/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-trophy-shelf-fcd89d1b","thumbnailUrl":"https://cdn.3dassets.dev/assets/31253/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31253/v1/poster.webp","blurhash":"U88hUq-44To#B@x]vwMw009#tSv{~3W?9$nh","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":68100,"triangles":2760,"vertices":2995,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.4749999940395355,-0.000012973677552874374,-0.12503051694054976],"max":[0.4749999940395355,0.650012949835695,0.12503051694054976]},"sizeMeters":[0.95,0.65,0.25],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:20.193Z","updatedAt":"2026-09-08T10:45:20.280Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31253/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrophyShelfFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31253/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31253/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31253/v1/model.glb\" alt=\"Trophy Shelf (Fencing Club and Tournament Piste)\" 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/31253/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/31253/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31254","slug":"fencing-club-and-tournament-piste-training-target-8348bc01","title":"Training Target (Fencing Club and Tournament Piste)","summary":"Freestanding padded thrust target with two contrasting contact discs, rounded upper pad and weighted base.","description":"Freestanding padded thrust target with two contrasting contact discs, rounded upper pad and weighted base. Dimensions 0.50 × 1.71 × 0.38 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-training-target-8348bc01","cdnUrl":"https://cdn.3dassets.dev/assets/31254/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-training-target-8348bc01","thumbnailUrl":"https://cdn.3dassets.dev/assets/31254/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31254/v1/poster.webp","blurhash":"U54VUYtS00I9T3o#roROVqWBo~xuH;V@%%tS","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":31568,"triangles":1444,"vertices":1203,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.25001067722066006,0,-0.18995941462004398],"max":[0.25001067722066006,1.7100000381469727,0.18995941462004398]},"sizeMeters":[0.5,1.71,0.38],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:20.796Z","updatedAt":"2026-09-08T10:45:20.899Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31254/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TrainingTargetFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31254/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31254/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31254/v1/model.glb\" alt=\"Training Target (Fencing Club and Tournament Piste)\" 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/31254/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/31254/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31255","slug":"fencing-club-and-tournament-piste-footwork-marker-mat-6aea5b00","title":"Footwork Marker Mat (Fencing Club and Tournament Piste)","summary":"Low-profile two-metre footwork mat with six raised marker bars and continuous backed surface.","description":"Low-profile two-metre footwork mat with six raised marker bars and continuous backed surface. Dimensions 2.00 × 0.01 × 0.75 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-footwork-marker-mat-6aea5b00","cdnUrl":"https://cdn.3dassets.dev/assets/31255/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-footwork-marker-mat-6aea5b00","thumbnailUrl":"https://cdn.3dassets.dev/assets/31255/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31255/v1/poster.webp","blurhash":"U65Yy$o$Hqbct9x_a}RN00aw%%acRNDNn$yE","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":38548,"triangles":2100,"vertices":1498,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1,-0.000016739596162679976,-0.3750419629505295],"max":[1,0.013008224748431541,0.3750419629505295]},"sizeMeters":[2,0.013,0.75],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:21.125Z","updatedAt":"2026-09-08T10:45:21.249Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31255/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FootworkMarkerMatFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31255/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31255/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31255/v1/model.glb\" alt=\"Footwork Marker Mat (Fencing Club and Tournament Piste)\" 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/31255/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/31255/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31256","slug":"fencing-club-and-tournament-piste-club-floor-base-b4c5af3a","title":"Club Floor Base (Fencing Club and Tournament Piste)","summary":"Twenty-six by eighteen metre hall foundation with subtle floor joints and perimeter access margin.","description":"Twenty-six by eighteen metre hall foundation with subtle floor joints and perimeter access margin. Dimensions 26.00 × 0.15 × 18.00 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original brushed aluminium, blue vinyl and white fencing fabric. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-club-floor-base-b4c5af3a","cdnUrl":"https://cdn.3dassets.dev/assets/31256/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-club-floor-base-b4c5af3a","thumbnailUrl":"https://cdn.3dassets.dev/assets/31256/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31256/v1/poster.webp","blurhash":"U7B3{Lxv00bE%M%MWCM{00Ri_NV[D%9FbExv","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"kit","title":"Kit / Set"},{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"}],"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":164384,"triangles":9300,"vertices":6662,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-13,0.0004127658208950974,-9.00045777764214],"max":[13,0.15352244891694014,9.00045777764214]},"sizeMeters":[26,0.153,18.001],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:21.250Z","updatedAt":"2026-09-08T10:45:21.365Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31256/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ClubFloorBaseFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31256/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31256/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31256/v1/model.glb\" alt=\"Club Floor Base (Fencing Club and Tournament Piste)\" 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/31256/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/31256/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"31257","slug":"fencing-club-and-tournament-piste-wired--c5ec1795-starter-scene","title":"Wired Piste Club (Fencing Club and Tournament Piste)","summary":"Two continuous aluminium pistes, sheltered scoring desks and repeaters, fully stocked repair benches, garment displays, lockers and spectator seating inside a closed roofed club.","description":"Two continuous aluminium pistes, sheltered scoring desks and repeaters, fully stocked repair benches, garment displays, lockers and spectator seating inside a closed roofed club.","status":"published","url":"https://3dassets.dev/assets/fencing-club-and-tournament-piste-wired--c5ec1795-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/31257/v1/model.glb","downloadUrl":"https://3dassets.dev/download/fencing-club-and-tournament-piste-wired--c5ec1795-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/31257/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/31257/v1/poster.webp","blurhash":"U4B:,3M|00%MxF-;X9IT00%L_4IVI:4ns+%M","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"modern","title":"Modern"},{"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":3589448,"triangles":240264,"vertices":161769,"meshes":183,"materials":14,"textures":0,"animations":[],"boundingBox":{"min":[-13,0.0004127658208950974,-9.00045777764214],"max":[13,4.064881626034511,9.00045777764214]},"sizeMeters":[26,4.064,18.001],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:45:23.483Z","updatedAt":"2026-09-08T10:45:23.600Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/31257/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WiredPisteClubFencingClubAndTournamentPiste(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/31257/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/31257/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/31257/v1/model.glb\" alt=\"Wired Piste Club (Fencing Club and Tournament Piste)\" 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/31257/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/31257/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}}],"demo":null}}