{"data":{"id":212,"slug":"candlemaking-and-soap-workshop","title":"Candlemaking and Soap Workshop","summary":"Fifty specialist candle and soap production designs in a roofed workshop with a sheltered cooling bay.","description":"Original craft machinery with thick hollow vessels and moulds, wick tooling, suspended dipping frame, tensioned cutters, stamping linkage and ventilated racks. Furnished enclosed dry workshop and stockroom joined to a sheltered cooling bay. Static props without heat, chemical or fluid simulation; no manufacturing instructions.","url":"https://3dassets.dev/packs/candlemaking-and-soap-workshop","coverUrl":"https://cdn.3dassets.dev/assets/30696/v1/poster.webp","assetCount":51,"aiGenerated":true,"aiGeneratedAssetCount":51,"aiModels":["GPT-6"],"aiModelUnspecifiedCount":0,"featured":true,"licenseLabel":"CC0 1.0 Universal","totalBytes":10928592,"totalTriangles":661244,"starterScene":{"id":"30696","slug":"candlemaking-and-soap-workshop-sheltered-f7ebbc7d-starter-scene","title":"Sheltered Craft Production (Candlemaking and Soap Workshop)","summary":"Roofed craft production room with stocked dry storage, candle and wick benches, packing counters and adjacent sheltered dipping, cooling, soap cutting and drying stations.","description":"Roofed craft production room with stocked dry storage, candle and wick benches, packing counters and adjacent sheltered dipping, cooling, soap cutting and drying stations.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-sheltered-f7ebbc7d-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/30696/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-sheltered-f7ebbc7d-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/30696/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30696/v1/poster.webp","blurhash":"U4CsgY~q00%MIT?b%MD*004n~WD*.800MxxZ","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":5272940,"triangles":331672,"vertices":225389,"meshes":143,"materials":16,"textures":0,"animations":[],"boundingBox":{"min":[-9,0.0002906917829911121,-6.000366222113712],"max":[9,3.9676744339058954,6.000366222113712]},"sizeMeters":[18,3.967,12.001],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:35.032Z","updatedAt":"2026-09-08T10:40:35.132Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30696/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShelteredCraftProductionCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30696/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30696/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30696/v1/model.glb\" alt=\"Sheltered Craft Production (Candlemaking and Soap Workshop)\" 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/30696/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/30696/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},"assets":[{"id":"30646","slug":"candlemaking-and-soap-workshop-roofed-craft-workshop-61ef1ace","title":"Roofed Craft Workshop (Candlemaking and Soap Workshop)","summary":"Twelve by eight metre enclosed workshop with thick perimeter walls, clear supported roof, east access doors, overhead task lights and a closed glazed stockroom.","description":"Twelve by eight metre enclosed workshop with thick perimeter walls, clear supported roof, east access doors, overhead task lights and a closed glazed stockroom. Dimensions 12.02 × 3.82 × 8.00 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-roofed-craft-workshop-61ef1ace","cdnUrl":"https://cdn.3dassets.dev/assets/30646/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-roofed-craft-workshop-61ef1ace","thumbnailUrl":"https://cdn.3dassets.dev/assets/30646/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30646/v1/poster.webp","blurhash":"U3EVyo_200.8n1~p%M9G00MxShD*.T01Ipaf","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":254996,"triangles":14400,"vertices":10204,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-6.009533405303955,0.0002906917829911121,-4.000244148075808],"max":[6.008333206176758,3.8176744339058954,4.000244148075808]},"sizeMeters":[12.018,3.817,8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:07.189Z","updatedAt":"2026-09-08T10:40:07.325Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30646/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RoofedCraftWorkshopCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30646/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30646/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30646/v1/model.glb\" alt=\"Roofed Craft Workshop (Candlemaking and Soap Workshop)\" 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/30646/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/30646/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30647","slug":"candlemaking-and-soap-workshop-covered-cooling-bay-ff965e0d","title":"Covered Cooling Bay (Candlemaking and Soap Workshop)","summary":"Adjacent sheltered cooling bay with open service face, thick foundation, four timber posts, wind screens and clear framed roof.","description":"Adjacent sheltered cooling bay with open service face, thick foundation, four timber posts, wind screens and clear framed roof. Dimensions 5.00 × 3.54 × 8.00 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-covered-cooling-bay-ff965e0d","cdnUrl":"https://cdn.3dassets.dev/assets/30647/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-covered-cooling-bay-ff965e0d","thumbnailUrl":"https://cdn.3dassets.dev/assets/30647/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30647/v1/poster.webp","blurhash":"U4E{a^nM00%N~A00Ip-=00-;9v9G0g-;NF%2","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":87904,"triangles":4800,"vertices":3419,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-2.5021036109623958,-0.00019760436862484299,-4.002399921417236],"max":[2.501656337708001,3.5382076701095397,4.001200199127197]},"sizeMeters":[5.004,3.538,8.004],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:07.521Z","updatedAt":"2026-09-08T10:40:07.609Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30647/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CoveredCoolingBayCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30647/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30647/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30647/v1/model.glb\" alt=\"Covered Cooling Bay (Candlemaking and Soap Workshop)\" 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/30647/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/30647/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30648","slug":"candlemaking-and-soap-workshop-wax-melting-vessel-c2bacebb","title":"Wax Melting Vessel (Candlemaking and Soap Workshop)","summary":"Open thick-walled wax melter on a braced four-leg heated plinth, with lower valve, handle and control enclosure; static prop.","description":"Open thick-walled wax melter on a braced four-leg heated plinth, with lower valve, handle and control enclosure; static prop. Dimensions 0.65 × 0.78 × 0.60 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wax-melting-vessel-c2bacebb","cdnUrl":"https://cdn.3dassets.dev/assets/30648/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wax-melting-vessel-c2bacebb","thumbnailUrl":"https://cdn.3dassets.dev/assets/30648/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30648/v1/poster.webp","blurhash":"U7AmxWxu00R%~qWV4TjZ00WBozWB_NxuD%R*","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":93520,"triangles":5524,"vertices":3768,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.3250615077133774,0,-0.2990205153533216],"max":[0.3250615077133774,0.7800000309944153,0.29900276529311287]},"sizeMeters":[0.65,0.78,0.598],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:06.518Z","updatedAt":"2026-09-08T10:40:06.612Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30648/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WaxMeltingVesselCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30648/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30648/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30648/v1/model.glb\" alt=\"Wax Melting Vessel (Candlemaking and Soap Workshop)\" 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/30648/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/30648/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30649","slug":"candlemaking-and-soap-workshop-jacketed-pouring-kettle-9f6923b5","title":"Jacketed Pouring Kettle (Candlemaking and Soap Workshop)","summary":"Double-banded pouring kettle with hollow interior, insulated side handles, raised feet and connected downward pouring valve.","description":"Double-banded pouring kettle with hollow interior, insulated side handles, raised feet and connected downward pouring valve. Dimensions 0.66 × 0.48 × 0.59 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-jacketed-pouring-kettle-9f6923b5","cdnUrl":"https://cdn.3dassets.dev/assets/30649/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-jacketed-pouring-kettle-9f6923b5","thumbnailUrl":"https://cdn.3dassets.dev/assets/30649/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30649/v1/poster.webp","blurhash":"U89Qs:RP00xu_NRj9Fxu00Rk%gxuIUozt7ax","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":138332,"triangles":8676,"vertices":5208,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.32759374380111694,0.000005189494123009064,-0.2955579459667206],"max":[0.32759374380111694,0.47999482957936335,0.2955579459667206]},"sizeMeters":[0.655,0.48,0.591],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:07.738Z","updatedAt":"2026-09-08T10:40:07.830Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30649/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function JacketedPouringKettleCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30649/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30649/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30649/v1/model.glb\" alt=\"Jacketed Pouring Kettle (Candlemaking and Soap Workshop)\" 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/30649/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/30649/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30650","slug":"candlemaking-and-soap-workshop-wax-pouring-pitcher-215e6bed","title":"Wax Pouring Pitcher (Candlemaking and Soap Workshop)","summary":"Hollow handled wax pitcher with thick rolled mouth and raised curved tubular pouring spout.","description":"Hollow handled wax pitcher with thick rolled mouth and raised curved tubular pouring spout. Dimensions 0.40 × 0.27 × 0.23 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wax-pouring-pitcher-215e6bed","cdnUrl":"https://cdn.3dassets.dev/assets/30650/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wax-pouring-pitcher-215e6bed","thumbnailUrl":"https://cdn.3dassets.dev/assets/30650/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30650/v1/poster.webp","blurhash":"U7AmuM^*00D*~WxtM_of00M|?bt700M~x]V@","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":220008,"triangles":8992,"vertices":10247,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.20019278860985407,0.0000034772551110173744,-0.1150033249020864],"max":[0.2001909762620926,0.27114913829206916,0.1150033249020864]},"sizeMeters":[0.4,0.271,0.23],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:09.346Z","updatedAt":"2026-09-08T10:40:09.479Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30650/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WaxPouringPitcherCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30650/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30650/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30650/v1/model.glb\" alt=\"Wax Pouring Pitcher (Candlemaking and Soap Workshop)\" 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/30650/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/30650/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30651","slug":"candlemaking-and-soap-workshop-wax-block-tray-91643b5c","title":"Wax Block Tray (Candlemaking and Soap Workshop)","summary":"Three thick wax slabs separated inside a rimmed steel ingredient tray.","description":"Three thick wax slabs separated inside a rimmed steel ingredient tray. Dimensions 0.60 × 0.07 × 0.40 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wax-block-tray-91643b5c","cdnUrl":"https://cdn.3dassets.dev/assets/30651/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wax-block-tray-91643b5c","thumbnailUrl":"https://cdn.3dassets.dev/assets/30651/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30651/v1/poster.webp","blurhash":"UBCGJU%201j]-:xtRkM|00Rk~TRj0LE2xY%0","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":42928,"triangles":2400,"vertices":1656,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.30000001192092896,-0.00001083531305792057,-0.20001221535156147],"max":[0.30000001192092896,0.07499359036769732,0.20001221535156147]},"sizeMeters":[0.6,0.075,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:08.946Z","updatedAt":"2026-09-08T10:40:09.051Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30651/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WaxBlockTrayCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30651/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30651/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30651/v1/model.glb\" alt=\"Wax Block Tray (Candlemaking and Soap Workshop)\" 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/30651/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/30651/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30653","slug":"candlemaking-and-soap-workshop-wick-spool-rack-55a322a2","title":"Wick Spool Rack (Candlemaking and Soap Workshop)","summary":"Two-tier six-spool rack with continuous axle shafts, wound wick cores and timber flanges.","description":"Two-tier six-spool rack with continuous axle shafts, wound wick cores and timber flanges. Dimensions 0.92 × 0.75 × 0.39 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wick-spool-rack-55a322a2","cdnUrl":"https://cdn.3dassets.dev/assets/30653/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wick-spool-rack-55a322a2","thumbnailUrl":"https://cdn.3dassets.dev/assets/30653/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30653/v1/poster.webp","blurhash":"UACGMj%200NG~q%MIUIV01og-mV@o#ozRiRP","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":197792,"triangles":10816,"vertices":8078,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.46000000834465027,-0.00003203831386655587,-0.19498092946863757],"max":[0.46000000834465027,0.750032038500131,0.19498092946863757]},"sizeMeters":[0.92,0.75,0.39],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:09.427Z","updatedAt":"2026-09-08T10:40:09.541Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30653/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WickSpoolRackCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30653/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30653/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30653/v1/model.glb\" alt=\"Wick Spool Rack (Candlemaking and Soap Workshop)\" 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/30653/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/30653/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30652","slug":"candlemaking-and-soap-workshop-wick-measuring-jig-5248260e","title":"Wick Measuring Jig (Candlemaking and Soap Workshop)","summary":"Wick measuring jig with fixed pins, stretched sample wick and fine physical measurement ticks.","description":"Wick measuring jig with fixed pins, stretched sample wick and fine physical measurement ticks. Dimensions 0.75 × 0.11 × 0.15 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wick-measuring-jig-5248260e","cdnUrl":"https://cdn.3dassets.dev/assets/30652/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wick-measuring-jig-5248260e","thumbnailUrl":"https://cdn.3dassets.dev/assets/30652/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30652/v1/poster.webp","blurhash":"U7B|4+-p0Lt7E2~pxtIV009a~poe-.00D*?H","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":101600,"triangles":5788,"vertices":3951,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.375,0.000012894144759415666,-0.07498397778252511],"max":[0.375,0.11499145303476228,0.07498397778252511]},"sizeMeters":[0.75,0.115,0.15],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:09.595Z","updatedAt":"2026-09-08T10:40:09.715Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30652/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WickMeasuringJigCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30652/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30652/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30652/v1/model.glb\" alt=\"Wick Measuring Jig (Candlemaking and Soap Workshop)\" 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/30652/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/30652/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30654","slug":"candlemaking-and-soap-workshop-wick-cutting-shear-9d7ebe5c","title":"Wick Cutting Shear (Candlemaking and Soap Workshop)","summary":"Crossed wick shears with joined pivot, thick finger loops and narrow polished blades.","description":"Crossed wick shears with joined pivot, thick finger loops and narrow polished blades. Dimensions 0.18 × 0.28 × 0.02 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wick-cutting-shear-9d7ebe5c","cdnUrl":"https://cdn.3dassets.dev/assets/30654/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wick-cutting-shear-9d7ebe5c","thumbnailUrl":"https://cdn.3dassets.dev/assets/30654/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30654/v1/poster.webp","blurhash":"U36bDS%M009YvfX8EgrrD%R5%3%g.TtRMxRP","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":94140,"triangles":5976,"vertices":3514,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.09200000017881393,0.000005187498744431418,-0.010998408431849233],"max":[0.09200000017881393,0.28042033314704895,0.010998408431849233]},"sizeMeters":[0.184,0.28,0.022],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:10.654Z","updatedAt":"2026-09-08T10:40:10.884Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30654/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WickCuttingShearCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30654/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30654/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30654/v1/model.glb\" alt=\"Wick Cutting Shear (Candlemaking and Soap Workshop)\" 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/30654/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/30654/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30656","slug":"candlemaking-and-soap-workshop-wick-centering-bar-d4c49da7","title":"Wick Centering Bar (Candlemaking and Soap Workshop)","summary":"Bridge-style wick centering bar with hooked end stops and a central retaining eye.","description":"Bridge-style wick centering bar with hooked end stops and a central retaining eye. Dimensions 0.20 × 0.02 × 0.04 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wick-centering-bar-d4c49da7","cdnUrl":"https://cdn.3dassets.dev/assets/30656/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wick-centering-bar-d4c49da7","thumbnailUrl":"https://cdn.3dassets.dev/assets/30656/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30656/v1/poster.webp","blurhash":"U584oOt78_t7xu_3ofIU00t7_4RjM_00WB?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":28584,"triangles":1668,"vertices":1083,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.10000000149011612,0.0000021359231661237377,-0.017493209892310728],"max":[0.10000000149011612,0.01999786362979904,0.017493209892310728]},"sizeMeters":[0.2,0.02,0.035],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:11.717Z","updatedAt":"2026-09-08T10:40:11.810Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30656/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WickCenteringBarCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30656/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30656/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30656/v1/model.glb\" alt=\"Wick Centering Bar (Candlemaking and Soap Workshop)\" 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/30656/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/30656/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30655","slug":"candlemaking-and-soap-workshop-wick-tab-press-0218c7df","title":"Wick Tab Press (Candlemaking and Soap Workshop)","summary":"Bench wick-tab press with anvil, guided punch, joined overhead lever and wooden grip.","description":"Bench wick-tab press with anvil, guided punch, joined overhead lever and wooden grip. Dimensions 0.25 × 0.31 × 0.18 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wick-tab-press-0218c7df","cdnUrl":"https://cdn.3dassets.dev/assets/30655/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wick-tab-press-0218c7df","thumbnailUrl":"https://cdn.3dassets.dev/assets/30655/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30655/v1/poster.webp","blurhash":"U58qvmuP00zn9YE1xv^k4Tq[%gK*nU=|tP9a","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":111680,"triangles":6788,"vertices":4202,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.12425392863508397,0,-0.09000619027719152],"max":[0.12424859332097701,0.3130488097667694,0.09000619027719152]},"sizeMeters":[0.249,0.313,0.18],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:11.400Z","updatedAt":"2026-09-08T10:40:11.503Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30655/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WickTabPressCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30655/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30655/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30655/v1/model.glb\" alt=\"Wick Tab Press (Candlemaking and Soap Workshop)\" 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/30655/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/30655/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30657","slug":"candlemaking-and-soap-workshop-wick-dipping-frame-25761c39","title":"Wick Dipping Frame (Candlemaking and Soap Workshop)","summary":"Supported dipping rack with full-height posts, load-bearing crossbar, suspended timber wick beam and eight hanging wick loops.","description":"Supported dipping rack with full-height posts, load-bearing crossbar, suspended timber wick beam and eight hanging wick loops. Dimensions 1.27 × 2.10 × 0.72 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wick-dipping-frame-25761c39","cdnUrl":"https://cdn.3dassets.dev/assets/30657/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wick-dipping-frame-25761c39","thumbnailUrl":"https://cdn.3dassets.dev/assets/30657/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30657/v1/poster.webp","blurhash":"U59aHh%g00IB~qoz9YaLt8sTMwIokEt6skRQ","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":413160,"triangles":26624,"vertices":15612,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.6349999904632568,4.786998175632107e-8,-0.3600277664365485],"max":[0.6349999904632568,2.0999999046325684,0.3600277664365485]},"sizeMeters":[1.27,2.1,0.72],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:12.109Z","updatedAt":"2026-09-08T10:40:12.238Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30657/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WickDippingFrameCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30657/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30657/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30657/v1/model.glb\" alt=\"Wick Dipping Frame (Candlemaking and Soap Workshop)\" 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/30657/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/30657/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30658","slug":"candlemaking-and-soap-workshop-dipping-tank-bf28ed0b","title":"Dipping Tank (Candlemaking and Soap Workshop)","summary":"Tall open dipping tank with thick base, rolled mouth and joined side handles.","description":"Tall open dipping tank with thick base, rolled mouth and joined side handles. Dimensions 0.66 × 0.70 × 0.58 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-dipping-tank-bf28ed0b","cdnUrl":"https://cdn.3dassets.dev/assets/30658/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-dipping-tank-bf28ed0b","thumbnailUrl":"https://cdn.3dassets.dev/assets/30658/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30658/v1/poster.webp","blurhash":"U8A,:;oM00WB~qjZ9Ft7IUoekCozWBoMWBa{","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":86880,"triangles":5440,"vertices":3264,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.3278124928474426,0,-0.29202093072441365],"max":[0.3278124928474426,0.699999988079071,0.29202093072441365]},"sizeMeters":[0.656,0.7,0.584],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:12.721Z","updatedAt":"2026-09-08T10:40:12.852Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30658/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DippingTankCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30658/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30658/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30658/v1/model.glb\" alt=\"Dipping Tank (Candlemaking and Soap Workshop)\" 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/30658/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/30658/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30659","slug":"candlemaking-and-soap-workshop-candle-cooling-rack-95511e67","title":"Candle Cooling Rack (Candlemaking and Soap Workshop)","summary":"Four-level open cooling rack with narrow slatted shelves, continuous posts and floor shoes.","description":"Four-level open cooling rack with narrow slatted shelves, continuous posts and floor shoes. Dimensions 1.27 × 1.65 × 0.67 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-candle-cooling-rack-95511e67","cdnUrl":"https://cdn.3dassets.dev/assets/30659/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-candle-cooling-rack-95511e67","thumbnailUrl":"https://cdn.3dassets.dev/assets/30659/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30659/v1/poster.webp","blurhash":"U5C6[Z-;00WB_Nx]ITxt00ofD%IUogWCRjV@","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":356788,"triangles":20400,"vertices":14520,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6349999904632568,1.210719347000122e-8,-0.3349897712682839],"max":[0.6349999904632568,1.649999976158142,0.3349897712682839]},"sizeMeters":[1.27,1.65,0.67],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:14.264Z","updatedAt":"2026-09-08T10:40:14.368Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30659/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CandleCoolingRackCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30659/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30659/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30659/v1/model.glb\" alt=\"Candle Cooling Rack (Candlemaking and Soap Workshop)\" 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/30659/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/30659/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30660","slug":"candlemaking-and-soap-workshop-pillar-candle-mold-6e11746f","title":"Pillar Candle Mold (Candlemaking and Soap Workshop)","summary":"Hollow cylindrical pillar mould with substantial walls, external release seam and two removable retaining bands.","description":"Hollow cylindrical pillar mould with substantial walls, external release seam and two removable retaining bands. Dimensions 0.14 × 0.24 × 0.14 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-pillar-candle-mold-6e11746f","cdnUrl":"https://cdn.3dassets.dev/assets/30660/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-pillar-candle-mold-6e11746f","thumbnailUrl":"https://cdn.3dassets.dev/assets/30660/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30660/v1/poster.webp","blurhash":"U69@ed$*00EL~qt74nM{MxXRR%sCM{ayxtoe","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":58336,"triangles":3372,"vertices":2250,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.07225128749488537,0,-0.07200128326295559],"max":[0.07225453773387297,0.23999999463558197,0.07200128326295559]},"sizeMeters":[0.145,0.24,0.144],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:13.434Z","updatedAt":"2026-09-08T10:40:13.526Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30660/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PillarCandleMoldCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30660/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30660/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30660/v1/model.glb\" alt=\"Pillar Candle Mold (Candlemaking and Soap Workshop)\" 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/30660/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/30660/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30661","slug":"candlemaking-and-soap-workshop-tapered-candle-mold-7cd828c0","title":"Tapered Candle Mold (Candlemaking and Soap Workshop)","summary":"Tall tapered candle mould with open narrow mouth, hollow tapered cavity and an external parting seam.","description":"Tall tapered candle mould with open narrow mouth, hollow tapered cavity and an external parting seam. Dimensions 0.08 × 0.29 × 0.08 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-tapered-candle-mold-7cd828c0","cdnUrl":"https://cdn.3dassets.dev/assets/30661/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-tapered-candle-mold-7cd828c0","thumbnailUrl":"https://cdn.3dassets.dev/assets/30661/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30661/v1/poster.webp","blurhash":"U05=CJ?b0000?Ij[9FR*00M{~q-;?bIo9F?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":30692,"triangles":1516,"vertices":1221,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.03799999877810478,0,-0.03799999877810478],"max":[0.03799999877810478,0.28999999165534973,0.03799999877810478]},"sizeMeters":[0.076,0.29,0.076],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:13.837Z","updatedAt":"2026-09-08T10:40:13.946Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30661/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TaperedCandleMoldCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30661/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30661/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30661/v1/model.glb\" alt=\"Tapered Candle Mold (Candlemaking and Soap Workshop)\" 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/30661/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/30661/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30662","slug":"candlemaking-and-soap-workshop-mold-release-cradle-842fc69d","title":"Mold Release Cradle (Candlemaking and Soap Workshop)","summary":"Release cradle with two padded open circular supports mounted on a thick timber bed.","description":"Release cradle with two padded open circular supports mounted on a thick timber bed. Dimensions 0.37 × 0.15 × 0.16 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-mold-release-cradle-842fc69d","cdnUrl":"https://cdn.3dassets.dev/assets/30662/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-mold-release-cradle-842fc69d","thumbnailUrl":"https://cdn.3dassets.dev/assets/30662/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30662/v1/poster.webp","blurhash":"UEBWoH%M4nR*9bxu%LRQ00E2%fxE~AV@E3of","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":24440,"triangles":1068,"vertices":998,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.1850000023841858,-0.000006101688303436492,-0.0800122056153782],"max":[0.1850000023841858,0.15000610764876793,0.0800122056153782]},"sizeMeters":[0.37,0.15,0.16],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:14.435Z","updatedAt":"2026-09-08T10:40:14.525Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30662/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MoldReleaseCradleCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30662/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30662/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30662/v1/model.glb\" alt=\"Mold Release Cradle (Candlemaking and Soap Workshop)\" 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/30662/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/30662/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30663","slug":"candlemaking-and-soap-workshop-votive-mold-tray-4a8f19f7","title":"Votive Mold Tray (Candlemaking and Soap Workshop)","summary":"Six individually hollow votive mould cups held on a rigid raised-lip carrier tray.","description":"Six individually hollow votive mould cups held on a rigid raised-lip carrier tray. Dimensions 0.36 × 0.09 × 0.25 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-votive-mold-tray-4a8f19f7","cdnUrl":"https://cdn.3dassets.dev/assets/30663/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-votive-mold-tray-4a8f19f7","thumbnailUrl":"https://cdn.3dassets.dev/assets/30663/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30663/v1/poster.webp","blurhash":"U4AdJ[-;00xb_4%MITIU00NF?bD%00IA%Mt7","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":192452,"triangles":10716,"vertices":7932,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.18000000715255737,-0.000006866664904958686,-0.12499527459789699],"max":[0.18000000715255737,0.09000687024118365,0.12499527459789699]},"sizeMeters":[0.36,0.09,0.25],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:16.169Z","updatedAt":"2026-09-08T10:40:16.275Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30663/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function VotiveMoldTrayCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30663/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30663/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30663/v1/model.glb\" alt=\"Votive Mold Tray (Candlemaking and Soap Workshop)\" 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/30663/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/30663/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30664","slug":"candlemaking-and-soap-workshop-glass-candle-jar-62e1a625","title":"Glass Candle Jar (Candlemaking and Soap Workshop)","summary":"Thick-walled clear candle jar with visible amber wax fill and centred wick; canonical assembled jar candle.","description":"Thick-walled clear candle jar with visible amber wax fill and centred wick; canonical assembled jar candle. Dimensions 0.13 × 0.12 × 0.13 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-glass-candle-jar-62e1a625","cdnUrl":"https://cdn.3dassets.dev/assets/30664/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-glass-candle-jar-62e1a625","thumbnailUrl":"https://cdn.3dassets.dev/assets/30664/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30664/v1/poster.webp","blurhash":"UJF$Os%M00M|_NWVIAt702Rj^$t6ITj[bIV[","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":45708,"triangles":2256,"vertices":1831,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.06499999761581421,-0.0000010672881100987075,-0.06499999761581421],"max":[0.06499999761581421,0.12000106460590108,0.06499999761581421]},"sizeMeters":[0.13,0.12,0.13],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:16.696Z","updatedAt":"2026-09-08T10:40:17.124Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30664/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GlassCandleJarCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30664/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30664/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30664/v1/model.glb\" alt=\"Glass Candle Jar (Candlemaking and Soap Workshop)\" 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/30664/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/30664/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30665","slug":"candlemaking-and-soap-workshop-candle-lid-885c3bae","title":"Candle Lid (Candlemaking and Soap Workshop)","summary":"Separate timber candle jar lid with inset underside sealing disc.","description":"Separate timber candle jar lid with inset underside sealing disc. Dimensions 0.14 × 0.02 × 0.14 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-candle-lid-885c3bae","cdnUrl":"https://cdn.3dassets.dev/assets/30665/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-candle-lid-885c3bae","thumbnailUrl":"https://cdn.3dassets.dev/assets/30665/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30665/v1/poster.webp","blurhash":"UDCiz2xt00Rk?aj?IVa#00Rj~Voe0La#-:bF","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":6756,"triangles":320,"vertices":332,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.07000000029802322,8.547976430000465e-7,-0.07000000029802322],"max":[0.07000000029802322,0.021998504753216793,0.07000000029802322]},"sizeMeters":[0.14,0.022,0.14],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:16.023Z","updatedAt":"2026-09-08T10:40:16.115Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30665/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CandleLidCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30665/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30665/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30665/v1/model.glb\" alt=\"Candle Lid (Candlemaking and Soap Workshop)\" 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/30665/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/30665/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30666","slug":"candlemaking-and-soap-workshop-finished-pillar-candle-d0d4c6c3","title":"Finished Pillar Candle (Candlemaking and Soap Workshop)","summary":"Finished cylindrical pillar candle with rounded shoulders, recessed top wax surface and protruding wick.","description":"Finished cylindrical pillar candle with rounded shoulders, recessed top wax surface and protruding wick. Dimensions 0.11 × 0.20 × 0.11 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-finished-pillar-candle-d0d4c6c3","cdnUrl":"https://cdn.3dassets.dev/assets/30666/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-finished-pillar-candle-d0d4c6c3","thumbnailUrl":"https://cdn.3dassets.dev/assets/30666/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30666/v1/poster.webp","blurhash":"UAFYJJ?G004oo#WEe-s.02Rj~TxuE2bE%2a$","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":16312,"triangles":720,"vertices":620,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.05500473255466039,0,-0.05500473255466039],"max":[0.05500473255466039,0.20200000703334808,0.05500473255466039]},"sizeMeters":[0.11,0.202,0.11],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:16.132Z","updatedAt":"2026-09-08T10:40:16.238Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30666/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FinishedPillarCandleCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30666/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30666/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30666/v1/model.glb\" alt=\"Finished Pillar Candle (Candlemaking and Soap Workshop)\" 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/30666/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/30666/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30669","slug":"candlemaking-and-soap-workshop-dipped-taper-bundle-f9a51fb0","title":"Dipped Taper Bundle (Candlemaking and Soap Workshop)","summary":"Four dipped taper candles with graduated wax shoulders, subtle dipping layers, exposed wicks and tied bundle cord.","description":"Four dipped taper candles with graduated wax shoulders, subtle dipping layers, exposed wicks and tied bundle cord. Dimensions 0.25 × 0.31 × 0.06 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-dipped-taper-bundle-f9a51fb0","cdnUrl":"https://cdn.3dassets.dev/assets/30669/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-dipped-taper-bundle-f9a51fb0","thumbnailUrl":"https://cdn.3dassets.dev/assets/30669/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30669/v1/poster.webp","blurhash":"UCEoYk%L00IVS%%1oHE202Rl~Tt3jEs:t6M|","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":308024,"triangles":19104,"vertices":11903,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.1263275146484375,0,-0.02797425599807924],"max":[0.1263275146484375,0.3139991572166936,0.02797425599807924]},"sizeMeters":[0.253,0.314,0.056],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:19.487Z","updatedAt":"2026-09-08T10:40:19.585Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30669/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DippedTaperBundleCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30669/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30669/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30669/v1/model.glb\" alt=\"Dipped Taper Bundle (Candlemaking and Soap Workshop)\" 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/30669/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/30669/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30667","slug":"candlemaking-and-soap-workshop-candle-trimming-knife-9541cc3a","title":"Candle Trimming Knife (Candlemaking and Soap Workshop)","summary":"Wax trimming knife with rounded timber grip, tang collar and thin flat steel blade.","description":"Wax trimming knife with rounded timber grip, tang collar and thin flat steel blade. Dimensions 0.04 × 0.25 × 0.04 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-candle-trimming-knife-9541cc3a","cdnUrl":"https://cdn.3dassets.dev/assets/30667/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-candle-trimming-knife-9541cc3a","thumbnailUrl":"https://cdn.3dassets.dev/assets/30667/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30667/v1/poster.webp","blurhash":"U89Z[nxu00D%59WB=]t79bae-nof~Uoz4:RP","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":70044,"triangles":4300,"vertices":2585,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.018497778038790536,0,-0.018497778038790536],"max":[0.018497778038790536,0.25,0.018497778038790536]},"sizeMeters":[0.037,0.25,0.037],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:18.501Z","updatedAt":"2026-09-08T10:40:18.617Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30667/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CandleTrimmingKnifeCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30667/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30667/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30667/v1/model.glb\" alt=\"Candle Trimming Knife (Candlemaking and Soap Workshop)\" 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/30667/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/30667/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30668","slug":"candlemaking-and-soap-workshop-candle-finishing-bench-5d79f68b","title":"Candle Finishing Bench (Candlemaking and Soap Workshop)","summary":"Maple finishing bench with resilient work mat, suspended drawer and braced tubular underframe.","description":"Maple finishing bench with resilient work mat, suspended drawer and braced tubular underframe. Dimensions 1.80 × 0.85 × 0.75 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-candle-finishing-bench-5d79f68b","cdnUrl":"https://cdn.3dassets.dev/assets/30668/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-candle-finishing-bench-5d79f68b","thumbnailUrl":"https://cdn.3dassets.dev/assets/30668/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30668/v1/poster.webp","blurhash":"UGB3~MWBMx%2_M%MRPV@8{%fkCIU9FkBkXWB","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":73740,"triangles":4200,"vertices":2982,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.8999999761581421,0.00003418620517431359,-0.3750022789540426],"max":[0.8999999761581421,0.848046766152536,0.3750022789540426]},"sizeMeters":[1.8,0.848,0.75],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:18.490Z","updatedAt":"2026-09-08T10:40:18.603Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30668/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CandleFinishingBenchCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30668/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30668/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30668/v1/model.glb\" alt=\"Candle Finishing Bench (Candlemaking and Soap Workshop)\" 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/30668/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/30668/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30670","slug":"candlemaking-and-soap-workshop-fragrance-bottle-rack-f738cd2b","title":"Fragrance Bottle Rack (Candlemaking and Soap Workshop)","summary":"Five shouldered amber bottles with screw caps and blank labels in a protective timber rack.","description":"Five shouldered amber bottles with screw caps and blank labels in a protective timber rack. Dimensions 0.60 × 0.22 × 0.24 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-fragrance-bottle-rack-f738cd2b","cdnUrl":"https://cdn.3dassets.dev/assets/30670/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-fragrance-bottle-rack-f738cd2b","thumbnailUrl":"https://cdn.3dassets.dev/assets/30670/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30670/v1/poster.webp","blurhash":"UHDSR7xt9aj[4o%L%2M|01D*xDxt~VIpIos8","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":117608,"triangles":5800,"vertices":4944,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.30000001192092896,-0.0000032819816624674036,-0.11998352477259969],"max":[0.30000001192092896,0.22001258471283372,0.11998352477259969]},"sizeMeters":[0.6,0.22,0.24],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:20.058Z","updatedAt":"2026-09-08T10:40:20.148Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30670/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FragranceBottleRackCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30670/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30670/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30670/v1/model.glb\" alt=\"Fragrance Bottle Rack (Candlemaking and Soap Workshop)\" 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/30670/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/30670/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30671","slug":"candlemaking-and-soap-workshop-dispensing-pipette-stan-3a93c4e0","title":"Dispensing Pipette Stand (Candlemaking and Soap Workshop)","summary":"Three glass pipettes held in a bridged stand with raised bulb heads and fine downward tips.","description":"Three glass pipettes held in a bridged stand with raised bulb heads and fine downward tips. Dimensions 0.26 × 0.27 × 0.18 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-dispensing-pipette-stan-3a93c4e0","cdnUrl":"https://cdn.3dassets.dev/assets/30671/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-dispensing-pipette-stan-3a93c4e0","thumbnailUrl":"https://cdn.3dassets.dev/assets/30671/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30671/v1/poster.webp","blurhash":"UEDJ9Vs+00t702Rj-okB9GWFt8V?~U-pNHIV","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":114384,"triangles":6920,"vertices":4317,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.12999999523162842,-0.000005263797929727643,-0.09000457447507315],"max":[0.12999999523162842,0.2692018743684801,0.09000457447507315]},"sizeMeters":[0.26,0.269,0.18],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:20.190Z","updatedAt":"2026-09-08T10:40:20.298Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30671/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DispensingPipetteStandCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30671/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30671/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30671/v1/model.glb\" alt=\"Dispensing Pipette Stand (Candlemaking and Soap Workshop)\" 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/30671/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/30671/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30672","slug":"candlemaking-and-soap-workshop-pigment-measuring-spoon-d25a0e5e","title":"Pigment Measuring Spoon Set (Candlemaking and Soap Workshop)","summary":"Three differently sized hollow measuring spoons with flat handles on a low timber tray; one functional set.","description":"Three differently sized hollow measuring spoons with flat handles on a low timber tray; one functional set. Dimensions 0.27 × 0.03 × 0.20 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-pigment-measuring-spoon-d25a0e5e","cdnUrl":"https://cdn.3dassets.dev/assets/30672/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-pigment-measuring-spoon-d25a0e5e","thumbnailUrl":"https://cdn.3dassets.dev/assets/30672/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30672/v1/poster.webp","blurhash":"U5Dls9?a00V@.8-oV?Io00IV~WM|4n4;R:s;","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":66376,"triangles":3360,"vertices":2754,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.13500000536441803,0.0000028838129955653657,-0.09999237434597082],"max":[0.13500000536441803,0.03299330163181577,0.09999237434597082]},"sizeMeters":[0.27,0.033,0.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:20.209Z","updatedAt":"2026-09-08T10:40:20.309Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30672/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PigmentMeasuringSpoonSetCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30672/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30672/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30672/v1/model.glb\" alt=\"Pigment Measuring Spoon Set (Candlemaking and Soap Workshop)\" 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/30672/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/30672/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30673","slug":"candlemaking-and-soap-workshop-ingredient-scale-faf9f716","title":"Ingredient Scale (Candlemaking and Soap Workshop)","summary":"Compact ingredient balance with raised steel weighing disc, recessed readout and front controls.","description":"Compact ingredient balance with raised steel weighing disc, recessed readout and front controls. Dimensions 0.25 × 0.08 × 0.26 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-ingredient-scale-faf9f716","cdnUrl":"https://cdn.3dassets.dev/assets/30673/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-ingredient-scale-faf9f716","thumbnailUrl":"https://cdn.3dassets.dev/assets/30673/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30673/v1/poster.webp","blurhash":"U5DS?%?b00?bo~%2oHR+009F_4IU$w9GE3xa","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":24880,"triangles":1080,"vertices":920,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.125,-0.000006028597714403949,-0.13249999657273293],"max":[0.125,0.07999290231978318,0.13249694472185353]},"sizeMeters":[0.25,0.08,0.265],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:21.204Z","updatedAt":"2026-09-08T10:40:21.303Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30673/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function IngredientScaleCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30673/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30673/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30673/v1/model.glb\" alt=\"Ingredient Scale (Candlemaking and Soap Workshop)\" 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/30673/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/30673/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30674","slug":"candlemaking-and-soap-workshop-mixing-bowl-8d9da057","title":"Mixing Bowl (Candlemaking and Soap Workshop)","summary":"Deep rounded mixing bowl with thick rolled rim, smooth concave interior and flat stable foot.","description":"Deep rounded mixing bowl with thick rolled rim, smooth concave interior and flat stable foot. Dimensions 0.34 × 0.16 × 0.34 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-mixing-bowl-8d9da057","cdnUrl":"https://cdn.3dassets.dev/assets/30674/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-mixing-bowl-8d9da057","thumbnailUrl":"https://cdn.3dassets.dev/assets/30674/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30674/v1/poster.webp","blurhash":"UCAAgrt700R%~qj[D%bF00WB?cof00WU?bay","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":31480,"triangles":1792,"vertices":1219,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.17000000178813934,0.000010470653784830364,-0.17000000178813934],"max":[0.17000000178813934,0.15798953661798182,0.17000000178813934]},"sizeMeters":[0.34,0.158,0.34],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:22.745Z","updatedAt":"2026-09-08T10:40:22.859Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30674/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MixingBowlCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30674/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30674/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30674/v1/model.glb\" alt=\"Mixing Bowl (Candlemaking and Soap Workshop)\" 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/30674/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/30674/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30675","slug":"candlemaking-and-soap-workshop-stirring-paddle-7b39199c","title":"Stirring Paddle (Candlemaking and Soap Workshop)","summary":"Long maple stirring paddle with rounded broad blade, cylindrical neck and hanging collar.","description":"Long maple stirring paddle with rounded broad blade, cylindrical neck and hanging collar. Dimensions 0.09 × 0.46 × 0.04 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-stirring-paddle-7b39199c","cdnUrl":"https://cdn.3dassets.dev/assets/30675/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-stirring-paddle-7b39199c","thumbnailUrl":"https://cdn.3dassets.dev/assets/30675/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30675/v1/poster.webp","blurhash":"U2Ac-w~B00000nM|^a-o54R*^lxa}?$$599^","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":22500,"triangles":1228,"vertices":819,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.04500747785128174,0,-0.017999999225139618],"max":[0.04500747785128174,0.46000000834465027,0.017999999225139618]},"sizeMeters":[0.09,0.46,0.036],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:21.832Z","updatedAt":"2026-09-08T10:40:21.928Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30675/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StirringPaddleCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30675/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30675/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30675/v1/model.glb\" alt=\"Stirring Paddle (Candlemaking and Soap Workshop)\" 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/30675/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/30675/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30676","slug":"candlemaking-and-soap-workshop-soap-loaf-mold-ab9ddc4f","title":"Soap Loaf Mold (Candlemaking and Soap Workshop)","summary":"Open timber soap loaf mould with thick floor, substantial walls and external screwed corner straps.","description":"Open timber soap loaf mould with thick floor, substantial walls and external screwed corner straps. Dimensions 0.50 × 0.16 × 0.21 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-soap-loaf-mold-ab9ddc4f","cdnUrl":"https://cdn.3dassets.dev/assets/30676/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-soap-loaf-mold-ab9ddc4f","thumbnailUrl":"https://cdn.3dassets.dev/assets/30676/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30676/v1/poster.webp","blurhash":"U8G8r._200t7^+~okVIV00RQ^*My4:4qRQIV","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":48072,"triangles":2700,"vertices":1868,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.25,0.000005875409120573161,-0.10699583250369508],"max":[0.25,0.15499412578297234,0.10699583250369508]},"sizeMeters":[0.5,0.155,0.214],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:21.942Z","updatedAt":"2026-09-08T10:40:22.054Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30676/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SoapLoafMoldCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30676/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30676/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30676/v1/model.glb\" alt=\"Soap Loaf Mold (Candlemaking and Soap Workshop)\" 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/30676/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/30676/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30677","slug":"candlemaking-and-soap-workshop-mold-liner-frame-676be284","title":"Mold Liner Frame (Candlemaking and Soap Workshop)","summary":"Open silicone liner retaining frame with thick continuous perimeter and inward gripping tabs.","description":"Open silicone liner retaining frame with thick continuous perimeter and inward gripping tabs. Dimensions 0.50 × 0.04 × 0.20 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-mold-liner-frame-676be284","cdnUrl":"https://cdn.3dassets.dev/assets/30677/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-mold-liner-frame-676be284","thumbnailUrl":"https://cdn.3dassets.dev/assets/30677/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30677/v1/poster.webp","blurhash":"U25r}Ox^4T$*t,.SogMc00W-.mIoL~8wRiyD","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":31704,"triangles":1800,"vertices":1232,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.25,0.00001037584618700238,-0.0999862666707358],"max":[0.25,0.039989623259743326,0.0999862666707358]},"sizeMeters":[0.5,0.04,0.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:22.912Z","updatedAt":"2026-09-08T10:40:23.007Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30677/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MoldLinerFrameCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30677/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30677/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30677/v1/model.glb\" alt=\"Mold Liner Frame (Candlemaking and Soap Workshop)\" 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/30677/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/30677/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30678","slug":"candlemaking-and-soap-workshop-soap-cutting-frame-913adb0d","title":"Soap Cutting Frame (Candlemaking and Soap Workshop)","summary":"Ten-wire soap cutter with tension screws, rear hinge posts, rectangular lifting frame and timber bed with aligned clearance slots.","description":"Ten-wire soap cutter with tension screws, rear hinge posts, rectangular lifting frame and timber bed with aligned clearance slots. Dimensions 0.75 × 0.51 × 0.45 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-soap-cutting-frame-913adb0d","cdnUrl":"https://cdn.3dassets.dev/assets/30678/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-soap-cutting-frame-913adb0d","thumbnailUrl":"https://cdn.3dassets.dev/assets/30678/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30678/v1/poster.webp","blurhash":"UBE.-0xt00Ri0Q-p%1D*00I]s:xF~8-:SgM{","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":419500,"triangles":25548,"vertices":16457,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.375,-0.00001393259071857944,-0.22474593340861232],"max":[0.375,0.5107285827448323,0.22474593340861232]},"sizeMeters":[0.75,0.511,0.449],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:24.645Z","updatedAt":"2026-09-08T10:40:24.737Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30678/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SoapCuttingFrameCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30678/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30678/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30678/v1/model.glb\" alt=\"Soap Cutting Frame (Candlemaking and Soap Workshop)\" 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/30678/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/30678/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30679","slug":"candlemaking-and-soap-workshop-single-wire-cutter-cdb9eca8","title":"Single Wire Cutter (Candlemaking and Soap Workshop)","summary":"Single-wire cutter with tensioned horizontal wire, upright yoke, top adjuster and joined hand grip over a timber bed.","description":"Single-wire cutter with tensioned horizontal wire, upright yoke, top adjuster and joined hand grip over a timber bed. Dimensions 0.32 × 0.37 × 0.25 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-single-wire-cutter-cdb9eca8","cdnUrl":"https://cdn.3dassets.dev/assets/30679/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-single-wire-cutter-cdb9eca8","thumbnailUrl":"https://cdn.3dassets.dev/assets/30679/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30679/v1/poster.webp","blurhash":"U8D9kv?b00D%00Rj-oWCITM{bJof~V%1ozNI","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":95536,"triangles":5924,"vertices":3569,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.16000916803500168,0,-0.12500099564241118],"max":[0.16000916803500168,0.3695000112056732,0.12500099564241118]},"sizeMeters":[0.32,0.37,0.25],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:23.643Z","updatedAt":"2026-09-08T10:40:23.742Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30679/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SingleWireCutterCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30679/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30679/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30679/v1/model.glb\" alt=\"Single Wire Cutter (Candlemaking and Soap Workshop)\" 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/30679/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/30679/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30680","slug":"candlemaking-and-soap-workshop-soap-beveling-plane-72d6f42c","title":"Soap Beveling Plane (Candlemaking and Soap Workshop)","summary":"Small soap beveling plane with timber sole, raised blade holder and rounded front and rear finger rests.","description":"Small soap beveling plane with timber sole, raised blade holder and rounded front and rear finger rests. Dimensions 0.28 × 0.11 × 0.11 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-soap-beveling-plane-72d6f42c","cdnUrl":"https://cdn.3dassets.dev/assets/30680/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-soap-beveling-plane-72d6f42c","thumbnailUrl":"https://cdn.3dassets.dev/assets/30680/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30680/v1/poster.webp","blurhash":"U7EVi}?G00-.0M~V-U9H004p%gIW~B0MI@s+","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":28088,"triangles":1500,"vertices":1064,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.14000000059604645,-0.0000010686800205328417,-0.05500106838199731],"max":[0.14000000059604645,0.11000106808397409,0.05500106838199731]},"sizeMeters":[0.28,0.11,0.11],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:26.233Z","updatedAt":"2026-09-08T10:40:26.577Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30680/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SoapBevelingPlaneCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30680/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30680/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30680/v1/model.glb\" alt=\"Soap Beveling Plane (Candlemaking and Soap Workshop)\" 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/30680/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/30680/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30681","slug":"candlemaking-and-soap-workshop-soap-stamping-press-1de798db","title":"Soap Stamping Press (Candlemaking and Soap Workshop)","summary":"Bench soap press with C-frame, guided ram, stamp plate, return collar and supported pivot linkage ending in a wooden handle.","description":"Bench soap press with C-frame, guided ram, stamp plate, return collar and supported pivot linkage ending in a wooden handle. Dimensions 0.38 × 0.50 × 0.25 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-soap-stamping-press-1de798db","cdnUrl":"https://cdn.3dassets.dev/assets/30681/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-soap-stamping-press-1de798db","thumbnailUrl":"https://cdn.3dassets.dev/assets/30681/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30681/v1/poster.webp","blurhash":"U28#1vyY00*^004o-q~p00m,.TPAx0_2t+0L","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":114044,"triangles":7132,"vertices":4270,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.1878854034158555,0,-0.12500065360739557],"max":[0.1878921199611796,0.5038461685180664,0.12500065360739557]},"sizeMeters":[0.376,0.504,0.25],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:24.585Z","updatedAt":"2026-09-08T10:40:24.684Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30681/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SoapStampingPressCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30681/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30681/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30681/v1/model.glb\" alt=\"Soap Stamping Press (Candlemaking and Soap Workshop)\" 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/30681/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/30681/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30682","slug":"candlemaking-and-soap-workshop-soap-drying-rack-cf3e363b","title":"Soap Drying Rack (Candlemaking and Soap Workshop)","summary":"Five-level timber slatted soap drying rack on continuous steel posts with open ventilation gaps.","description":"Five-level timber slatted soap drying rack on continuous steel posts with open ventilation gaps. Dimensions 1.07 × 1.60 × 0.57 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-soap-drying-rack-cf3e363b","cdnUrl":"https://cdn.3dassets.dev/assets/30682/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-soap-drying-rack-cf3e363b","thumbnailUrl":"https://cdn.3dassets.dev/assets/30682/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30682/v1/poster.webp","blurhash":"U6DJ9V-;00D*~qxa9GWC01WE~9oIW?azV@oL","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":351320,"triangles":20100,"vertices":14242,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.5350000262260437,0,-0.28497849842064776],"max":[0.5350000262260437,1.600000023841858,0.28497849842064776]},"sizeMeters":[1.07,1.6,0.57],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:25.427Z","updatedAt":"2026-09-08T10:40:26.332Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30682/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SoapDryingRackCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30682/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30682/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30682/v1/model.glb\" alt=\"Soap Drying Rack (Candlemaking and Soap Workshop)\" 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/30682/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/30682/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30683","slug":"candlemaking-and-soap-workshop-finished-soap-loaf-c71f2008","title":"Finished Soap Loaf (Candlemaking and Soap Workshop)","summary":"Uncut soap loaf with rounded corners and gently rippled top ridges; distinct from its hollow production mould.","description":"Uncut soap loaf with rounded corners and gently rippled top ridges; distinct from its hollow production mould. Dimensions 0.42 × 0.10 × 0.15 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-finished-soap-loaf-c71f2008","cdnUrl":"https://cdn.3dassets.dev/assets/30683/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-finished-soap-loaf-c71f2008","thumbnailUrl":"https://cdn.3dassets.dev/assets/30683/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30683/v1/poster.webp","blurhash":"U9E{tZ?b00xt?b~pt7Dj00M|~pMy8{00Rj%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":253148,"triangles":16860,"vertices":9421,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.20999999344348907,0.000014287053335428068,-0.07499038432820417],"max":[0.20999999344348907,0.10373571086050201,0.07499038432820417]},"sizeMeters":[0.42,0.104,0.15],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:27.666Z","updatedAt":"2026-09-08T10:40:27.956Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30683/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FinishedSoapLoafCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30683/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30683/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30683/v1/model.glb\" alt=\"Finished Soap Loaf (Candlemaking and Soap Workshop)\" 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/30683/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/30683/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30684","slug":"candlemaking-and-soap-workshop-embossed-soap-bar-9b6ead07","title":"Embossed Soap Bar (Candlemaking and Soap Workshop)","summary":"Rounded soap bar with a physically raised botanical rosette and fine enclosing stamp ring.","description":"Rounded soap bar with a physically raised botanical rosette and fine enclosing stamp ring. Dimensions 0.09 × 0.03 × 0.06 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-embossed-soap-bar-9b6ead07","cdnUrl":"https://cdn.3dassets.dev/assets/30684/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-embossed-soap-bar-9b6ead07","thumbnailUrl":"https://cdn.3dassets.dev/assets/30684/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30684/v1/poster.webp","blurhash":"U6F$hJ~X00od?b?aNFIV009F_2M|4T9Fs:Rj","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":155948,"triangles":10268,"vertices":5768,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.04500000178813934,0.0000018301793187468912,-0.03250129832813824],"max":[0.04500000178813934,0.03305026212696987,0.03250129832813824]},"sizeMeters":[0.09,0.033,0.065],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:26.515Z","updatedAt":"2026-09-08T10:40:26.834Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30684/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EmbossedSoapBarCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30684/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30684/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30684/v1/model.glb\" alt=\"Embossed Soap Bar (Candlemaking and Soap Workshop)\" 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/30684/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/30684/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30687","slug":"candlemaking-and-soap-workshop-offcut-collection-bin-f06807dc","title":"Offcut Collection Bin (Candlemaking and Soap Workshop)","summary":"Open offcut bin with thick floor, full-height walls and reinforced corner overlaps.","description":"Open offcut bin with thick floor, full-height walls and reinforced corner overlaps. Dimensions 0.45 × 0.25 × 0.30 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-offcut-collection-bin-f06807dc","cdnUrl":"https://cdn.3dassets.dev/assets/30687/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-offcut-collection-bin-f06807dc","thumbnailUrl":"https://cdn.3dassets.dev/assets/30687/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30687/v1/poster.webp","blurhash":"U57{Hq*08wkX.Skqf,kr00MxRjWBMxx]RPH?","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":26384,"triangles":1500,"vertices":1008,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.22499999403953552,-0.00001502473619119371,-0.15000915157895728],"max":[0.22499999403953552,0.24501502950456278,0.15000915157895728]},"sizeMeters":[0.45,0.245,0.3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:28.946Z","updatedAt":"2026-09-08T10:40:29.046Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30687/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function OffcutCollectionBinCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30687/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30687/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30687/v1/model.glb\" alt=\"Offcut Collection Bin (Candlemaking and Soap Workshop)\" 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/30687/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/30687/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30686","slug":"candlemaking-and-soap-workshop-wrapping-paper-dispense-14e5632b","title":"Wrapping Paper Dispenser (Candlemaking and Soap Workshop)","summary":"Table paper dispenser with thick paper roll on an axle, upright end brackets, feed sheet and full-width cutting bar.","description":"Table paper dispenser with thick paper roll on an axle, upright end brackets, feed sheet and full-width cutting bar. Dimensions 0.60 × 0.31 × 0.37 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-wrapping-paper-dispense-14e5632b","cdnUrl":"https://cdn.3dassets.dev/assets/30686/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-wrapping-paper-dispense-14e5632b","thumbnailUrl":"https://cdn.3dassets.dev/assets/30686/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30686/v1/poster.webp","blurhash":"UCFiGQxv00IB%f?aM|D*00WB~pofIBIV%2t7","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":34000,"triangles":1724,"vertices":1296,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.30000001192092896,0.000011825612451010076,-0.18627289007510942],"max":[0.30000001192092896,0.3099961109762044,0.18623378774836247]},"sizeMeters":[0.6,0.31,0.373],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:28.875Z","updatedAt":"2026-09-08T10:40:28.989Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30686/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WrappingPaperDispenserCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30686/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30686/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30686/v1/model.glb\" alt=\"Wrapping Paper Dispenser (Candlemaking and Soap Workshop)\" 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/30686/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/30686/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30685","slug":"candlemaking-and-soap-workshop-label-roll-holder-910451a3","title":"Label Roll Holder (Candlemaking and Soap Workshop)","summary":"Upright label roll spindle with core cap, weighted plate and a short unrolled label tail.","description":"Upright label roll spindle with core cap, weighted plate and a short unrolled label tail. Dimensions 0.21 × 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 maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-label-roll-holder-910451a3","cdnUrl":"https://cdn.3dassets.dev/assets/30685/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-label-roll-holder-910451a3","thumbnailUrl":"https://cdn.3dassets.dev/assets/30685/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30685/v1/poster.webp","blurhash":"UEECqK%M00M{D$aftRax00IU~pxux]t7t7ju","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":22484,"triangles":1080,"vertices":919,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.10400000214576721,0.000005032946435362673,-0.08000427378348321],"max":[0.10400000214576721,0.18999496466937885,0.08000427378348321]},"sizeMeters":[0.208,0.19,0.16],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:28.762Z","updatedAt":"2026-09-08T10:40:28.860Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30685/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LabelRollHolderCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30685/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30685/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30685/v1/model.glb\" alt=\"Label Roll Holder (Candlemaking and Soap Workshop)\" 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/30685/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/30685/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30688","slug":"candlemaking-and-soap-workshop-packing-counter-918172eb","title":"Packing Counter (Candlemaking and Soap Workshop)","summary":"Two-metre packing counter with maple top, replaceable cutting mat, lower storage rails and braced steel legs.","description":"Two-metre packing counter with maple top, replaceable cutting mat, lower storage rails and braced steel legs. Dimensions 2.00 × 0.87 × 0.80 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-packing-counter-918172eb","cdnUrl":"https://cdn.3dassets.dev/assets/30688/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-packing-counter-918172eb","thumbnailUrl":"https://cdn.3dassets.dev/assets/30688/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30688/v1/poster.webp","blurhash":"UGC?ihxZDjs;~p-:V@M|01-ptQM{Dif5NxM|","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":81892,"triangles":4500,"vertices":3208,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1,0.000013050746078806935,-0.3999450666829432],"max":[1,0.868028465822254,0.3999450666829432]},"sizeMeters":[2,0.868,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:29.769Z","updatedAt":"2026-09-08T10:40:29.871Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30688/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PackingCounterCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30688/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30688/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30688/v1/model.glb\" alt=\"Packing Counter (Candlemaking and Soap Workshop)\" 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/30688/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/30688/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30689","slug":"candlemaking-and-soap-workshop-gift-box-insert-c03c7586","title":"Gift Box Insert (Candlemaking and Soap Workshop)","summary":"Folded-card gift insert with real base, rim and six internal compartments.","description":"Folded-card gift insert with real base, rim and six internal compartments. Dimensions 0.24 × 0.04 × 0.18 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-gift-box-insert-c03c7586","cdnUrl":"https://cdn.3dassets.dev/assets/30689/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-gift-box-insert-c03c7586","thumbnailUrl":"https://cdn.3dassets.dev/assets/30689/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30689/v1/poster.webp","blurhash":"U7FFjL?b00WB-;%Lj[Rj00IU~WRj4n9HM{RQ","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":42256,"triangles":2400,"vertices":1664,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.11999999731779099,-6.871321091492244e-7,-0.08999542021202415],"max":[0.11999999731779099,0.045000685194958194,0.08999542021202415]},"sizeMeters":[0.24,0.045,0.18],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:31.456Z","updatedAt":"2026-09-08T10:40:31.552Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30689/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GiftBoxInsertCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30689/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30689/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30689/v1/model.glb\" alt=\"Gift Box Insert (Candlemaking and Soap Workshop)\" 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/30689/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/30689/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30690","slug":"candlemaking-and-soap-workshop-ribbon-spool-stand-ec94b17c","title":"Ribbon Spool Stand (Candlemaking and Soap Workshop)","summary":"Three-spool ribbon stand with shared axle, card flanges and supported timber foot.","description":"Three-spool ribbon stand with shared axle, card flanges and supported timber foot. Dimensions 0.40 × 0.28 × 0.20 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-ribbon-spool-stand-ec94b17c","cdnUrl":"https://cdn.3dassets.dev/assets/30690/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-ribbon-spool-stand-ec94b17c","thumbnailUrl":"https://cdn.3dassets.dev/assets/30690/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30690/v1/poster.webp","blurhash":"U8FiDF^+00My03?a$zDj009bx]Ri};?Fx^9a","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":74916,"triangles":3908,"vertices":2987,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.20000000298023224,-3.81481374133949e-7,-0.1000152607450815],"max":[0.20000000298023224,0.2750056832046509,0.1000152607450815]},"sizeMeters":[0.4,0.275,0.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:30.564Z","updatedAt":"2026-09-08T10:40:30.666Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30690/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RibbonSpoolStandCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30690/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30690/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30690/v1/model.glb\" alt=\"Ribbon Spool Stand (Candlemaking and Soap Workshop)\" 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/30690/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/30690/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30691","slug":"candlemaking-and-soap-workshop-finished-goods-cabinet-d4fd5e28","title":"Finished Goods Cabinet (Candlemaking and Soap Workshop)","summary":"Closed maple goods cabinet with clear framed doors, four thick shelves, back panel and joined handles.","description":"Closed maple goods cabinet with clear framed doors, four thick shelves, back panel and joined handles. Dimensions 1.20 × 1.83 × 0.59 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-finished-goods-cabinet-d4fd5e28","cdnUrl":"https://cdn.3dassets.dev/assets/30691/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-finished-goods-cabinet-d4fd5e28","thumbnailUrl":"https://cdn.3dassets.dev/assets/30691/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30691/v1/poster.webp","blurhash":"U5F=jf_4004m~V-:E19a01M{%Ioz?G-oIo9a","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":58136,"triangles":3600,"vertices":2547,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.6000557087540761,0,-0.2937272295165252],"max":[0.6000557087540761,1.8350000381469727,0.2937478614691307]},"sizeMeters":[1.2,1.835,0.587],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:30.727Z","updatedAt":"2026-09-08T10:40:30.836Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30691/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FinishedGoodsCabinetCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30691/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30691/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30691/v1/model.glb\" alt=\"Finished Goods Cabinet (Candlemaking and Soap Workshop)\" 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/30691/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/30691/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30692","slug":"candlemaking-and-soap-workshop-equipment-wash-sink-51625e82","title":"Equipment Wash Sink (Candlemaking and Soap Workshop)","summary":"Work sink with deep hollow steel basin, raised curved faucet, dual controls and supported drain trap inside a braced stand.","description":"Work sink with deep hollow steel basin, raised curved faucet, dual controls and supported drain trap inside a braced stand. Dimensions 1.10 × 1.22 × 0.65 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-equipment-wash-sink-51625e82","cdnUrl":"https://cdn.3dassets.dev/assets/30692/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-equipment-wash-sink-51625e82","thumbnailUrl":"https://cdn.3dassets.dev/assets/30692/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30692/v1/poster.webp","blurhash":"U48;c9R+00-;~qxv9FRi00M{-;tR00M_?vxu","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":161148,"triangles":9476,"vertices":6389,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.5499965914707252,0,-0.3249920559136087],"max":[0.5499965914707252,1.2213573455810547,0.3249920559136087]},"sizeMeters":[1.1,1.221,0.65],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:31.566Z","updatedAt":"2026-09-08T10:40:31.671Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30692/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EquipmentWashSinkCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30692/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30692/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30692/v1/model.glb\" alt=\"Equipment Wash Sink (Candlemaking and Soap Workshop)\" 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/30692/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/30692/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30693","slug":"candlemaking-and-soap-workshop-apron-storage-pegboard-73230e7c","title":"Apron Storage Pegboard (Candlemaking and Soap Workshop)","summary":"Perforated maple pegboard with two hooked aprons, narrow bibs and continuous hanging neck loops.","description":"Perforated maple pegboard with two hooked aprons, narrow bibs and continuous hanging neck loops. Dimensions 0.90 × 1.00 × 0.12 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-apron-storage-pegboard-73230e7c","cdnUrl":"https://cdn.3dassets.dev/assets/30693/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-apron-storage-pegboard-73230e7c","thumbnailUrl":"https://cdn.3dassets.dev/assets/30693/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30693/v1/poster.webp","blurhash":"U9Gk?#%h00M{_2^+IV0L00aK~pR,%2xsM|E4","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":176452,"triangles":10844,"vertices":7858,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.4500106814783166,0,-0.061424327101577206],"max":[0.4500106814783166,1,0.06139882899011102]},"sizeMeters":[0.9,1,0.123],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:32.388Z","updatedAt":"2026-09-08T10:40:32.535Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30693/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ApronStoragePegboardCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30693/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30693/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30693/v1/model.glb\" alt=\"Apron Storage Pegboard (Candlemaking and Soap Workshop)\" 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/30693/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/30693/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30694","slug":"candlemaking-and-soap-workshop-order-book-stand-5f86455e","title":"Order Book Stand (Candlemaking and Soap Workshop)","summary":"Angled desk book stand with supported backrest, thick open order ledger and central binding strip.","description":"Angled desk book stand with supported backrest, thick open order ledger and central binding strip. Dimensions 0.32 × 0.22 × 0.25 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-order-book-stand-5f86455e","cdnUrl":"https://cdn.3dassets.dev/assets/30694/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-order-book-stand-5f86455e","thumbnailUrl":"https://cdn.3dassets.dev/assets/30694/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30694/v1/poster.webp","blurhash":"U7Gk?#~p00R60i-:-nM|00bb?aM{rUM|%Nf7","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":42188,"triangles":2364,"vertices":1570,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.1599999964237213,-0.000002805243983272643,-0.12515518382324903],"max":[0.1599999964237213,0.2181691567094579,0.12515518382324903]},"sizeMeters":[0.32,0.218,0.25],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:32.516Z","updatedAt":"2026-09-08T10:40:32.637Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30694/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function OrderBookStandCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30694/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30694/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30694/v1/model.glb\" alt=\"Order Book Stand (Candlemaking and Soap Workshop)\" 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/30694/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/30694/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30695","slug":"candlemaking-and-soap-workshop-workshop-courtyard-base-b677bbba","title":"Workshop Courtyard Base (Candlemaking and Soap Workshop)","summary":"Continuous eighteen by twelve metre workshop courtyard slab with a generous clear access apron.","description":"Continuous eighteen by twelve metre workshop courtyard slab with a generous clear access apron. Dimensions 18.00 × 0.15 × 12.00 m (X × Y × Z). Metre units, +Y up, +Z front; origin on the ground at the footprint centre unless stated. Original maple timber, cream enamel, stainless steel and amber wax. Metres; static geometry, no animation or collision. Static geometry; no rig, animation, collision or navigation data.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-workshop-courtyard-base-b677bbba","cdnUrl":"https://cdn.3dassets.dev/assets/30695/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-workshop-courtyard-base-b677bbba","thumbnailUrl":"https://cdn.3dassets.dev/assets/30695/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30695/v1/poster.webp","blurhash":"U6Bpqb%M00WB%M-;WBIU00Ri~qRj9F4nj@%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":6392,"triangles":300,"vertices":212,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-9,0.0002906917829911121,-6.000366222113712],"max":[9,0.14970931417747335,6.000366222113712]},"sizeMeters":[18,0.149,12.001],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:33.647Z","updatedAt":"2026-09-08T10:40:33.754Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30695/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WorkshopCourtyardBaseCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30695/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30695/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30695/v1/model.glb\" alt=\"Workshop Courtyard Base (Candlemaking and Soap Workshop)\" 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/30695/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/30695/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"30696","slug":"candlemaking-and-soap-workshop-sheltered-f7ebbc7d-starter-scene","title":"Sheltered Craft Production (Candlemaking and Soap Workshop)","summary":"Roofed craft production room with stocked dry storage, candle and wick benches, packing counters and adjacent sheltered dipping, cooling, soap cutting and drying stations.","description":"Roofed craft production room with stocked dry storage, candle and wick benches, packing counters and adjacent sheltered dipping, cooling, soap cutting and drying stations.","status":"published","url":"https://3dassets.dev/assets/candlemaking-and-soap-workshop-sheltered-f7ebbc7d-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/30696/v1/model.glb","downloadUrl":"https://3dassets.dev/download/candlemaking-and-soap-workshop-sheltered-f7ebbc7d-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/30696/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/30696/v1/poster.webp","blurhash":"U4CsgY~q00%MIT?b%MD*004n~WD*.800MxxZ","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":5272940,"triangles":331672,"vertices":225389,"meshes":143,"materials":16,"textures":0,"animations":[],"boundingBox":{"min":[-9,0.0002906917829911121,-6.000366222113712],"max":[9,3.9676744339058954,6.000366222113712]},"sizeMeters":[18,3.967,12.001],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"GPT-6","downloads":0,"publishedAt":"2026-09-08T10:40:35.032Z","updatedAt":"2026-09-08T10:40:35.132Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/30696/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShelteredCraftProductionCandlemakingAndSoapWorkshop(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/30696/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/30696/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/30696/v1/model.glb\" alt=\"Sheltered Craft Production (Candlemaking and Soap Workshop)\" 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/30696/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/30696/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}}],"demo":null}}