{"data":{"id":67,"slug":"temperate-forest-ecology","title":"Temperate Forest Ecology","summary":"Original low-poly northern-European woodland: tree species and age forms, deadwood, understorey, fungi, rock and ground detail at true metre scale.","description":"A complete temperate broadleaf and conifer woodland kit built to metre scale with flat-shaded faceted geometry and a single cohesive palette. Species are separated by structure, spreading, columnar, pendulous, whorled conical, umbrella-crowned, multi-stem, pollard and dead forms, not by colour. Every model rests on y=0 and is centred on its footprint.","url":"https://3dassets.dev/packs/temperate-forest-ecology","coverUrl":"https://cdn.3dassets.dev/assets/3884/v1/poster.webp","assetCount":112,"aiGenerated":true,"aiGeneratedAssetCount":112,"aiModels":["Claude original recipes; GPT-6 via Codex repairs and verification"],"aiModelUnspecifiedCount":0,"featured":true,"licenseLabel":"CC0 1.0 Universal","totalBytes":11919252,"totalTriangles":237837,"starterScene":{"id":"3884","slug":"temperate-forest-ecology-oak-woodland-gl-d28b8a78-starter-scene","title":"Oak woodland glade (Temperate Forest Ecology)","summary":"Composed example for Temperate Forest Ecology.","description":"A 30 m glade in mixed oak woodland: mature and veteran oak with birch, hazel and holly round the edge, a windthrown trunk, standing deadwood, boulders and a ground layer of ferns, moss and litter. 36 instances of 23 canonical designs on an eight-colour palette.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-oak-woodland-gl-d28b8a78-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/3884/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-oak-woodland-gl-d28b8a78-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/3884/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3884/v1/poster.webp","blurhash":"U98XzRbF00kVX5V[nmtQ00WC?[oLi{t7btM{","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"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":1586848,"triangles":30708,"vertices":86600,"meshes":48,"materials":8,"textures":0,"animations":[],"boundingBox":{"min":[-19.83249302579997,-0.000250819859609841,-21.029706378884093],"max":[19.81599124202979,27.585771560668945,14.57468778587244]},"sizeMeters":[39.648,27.586,35.604],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:51.956Z","updatedAt":"2026-09-06T06:02:52.777Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3884/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function OakWoodlandGladeTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3884/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3884/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3884/v1/model.glb\" alt=\"Oak woodland glade (Temperate Forest Ecology)\" 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/3884/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/3884/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},"assets":[{"id":"3776","slug":"temperate-forest-ecology-english-oak-mature-ac520af6","title":"Mature English oak (Temperate Forest Ecology)","summary":"Broad open-grown oak: a short heavy bole, five low forks and a wide domed crown of clustered foliage masses. 20.81 x 17.11 x 18.54 m.","description":"Broad open-grown oak: a short heavy bole, five low forks and a wide domed crown of clustered foliage masses. 20.81 x 17.11 x 18.54 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-english-oak-mature-ac520af6","cdnUrl":"https://cdn.3dassets.dev/assets/3776/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-english-oak-mature-ac520af6","thumbnailUrl":"https://cdn.3dassets.dev/assets/3776/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3776/v1/poster.webp","blurhash":"UE8X,hoy4Ve:?[a#IBoe8zRkx[t64VayyBj[","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":106984,"triangles":2191,"vertices":6573,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-10.406414985656738,-0.000250819859609841,-9.269448963480428],"max":[10.406414985656738,17.114223935509724,9.269448963480428]},"sizeMeters":[20.813,17.114,18.539],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:03.525Z","updatedAt":"2026-09-06T06:02:05.450Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3776/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureEnglishOakTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3776/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3776/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3776/v1/model.glb\" alt=\"Mature English oak (Temperate Forest Ecology)\" 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/3776/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/3776/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3778","slug":"temperate-forest-ecology-english-oak-veteran-895182f9","title":"Veteran stag-headed oak (Temperate Forest Ecology)","summary":"Ancient oak with a squat 1.6 m bole, a retrenched crown and six bleached dead limbs projecting above the living canopy. 16.62 x 14.19 x 17.70 m.","description":"Ancient oak with a squat 1.6 m bole, a retrenched crown and six bleached dead limbs projecting above the living canopy. 16.62 x 14.19 x 17.70 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-english-oak-veteran-895182f9","cdnUrl":"https://cdn.3dassets.dev/assets/3778/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-english-oak-veteran-895182f9","thumbnailUrl":"https://cdn.3dassets.dev/assets/3778/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3778/v1/poster.webp","blurhash":"U77U-Rt700S^.knlR6Sw00RQ?bt74TR*yVs;","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":86548,"triangles":1750,"vertices":5250,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-8.311552620423042,0.000303870434617437,-8.849541664123535],"max":[8.311552620423042,14.18853464892623,8.849541664123535]},"sizeMeters":[16.623,14.188,17.699],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:03.735Z","updatedAt":"2026-09-06T06:02:05.457Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3778/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function VeteranStagHeadedOakTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3778/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3778/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3778/v1/model.glb\" alt=\"Veteran stag-headed oak (Temperate Forest Ecology)\" 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/3778/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/3778/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3777","slug":"temperate-forest-ecology-english-oak-young-d9fcd5d4","title":"Young English oak (Temperate Forest Ecology)","summary":"Thirty-year oak with a slender straight bole and a compact upward crown, before the low spreading limbs develop. 8.05 x 8.75 x 8.55 m.","description":"Thirty-year oak with a slender straight bole and a compact upward crown, before the low spreading limbs develop. 8.05 x 8.75 x 8.55 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-english-oak-young-d9fcd5d4","cdnUrl":"https://cdn.3dassets.dev/assets/3777/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-english-oak-young-d9fcd5d4","thumbnailUrl":"https://cdn.3dassets.dev/assets/3777/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3777/v1/poster.webp","blurhash":"UF9j}fxt01M|_LoeDka|8}RQx@xt02Rk.6t6","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":86772,"triangles":1770,"vertices":5310,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-4.023234251766663,0,-4.273097038269043],"max":[4.023234251766663,8.745390598114808,4.273097038269043]},"sizeMeters":[8.046,8.745,8.546],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:03.561Z","updatedAt":"2026-09-06T06:02:05.462Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3777/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function YoungEnglishOakTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3777/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3777/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3777/v1/model.glb\" alt=\"Young English oak (Temperate Forest Ecology)\" 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/3777/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/3777/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3775","slug":"temperate-forest-ecology-sycamore-mature-d238279c","title":"Mature sycamore (Temperate Forest Ecology)","summary":"Tall dense-crowned sycamore: a clean bole to first fork, four rising limbs and a heavy rounded canopy. 18.66 x 21.21 x 19.40 m.","description":"Tall dense-crowned sycamore: a clean bole to first fork, four rising limbs and a heavy rounded canopy. 18.66 x 21.21 x 19.40 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-sycamore-mature-d238279c","cdnUrl":"https://cdn.3dassets.dev/assets/3775/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-sycamore-mature-d238279c","thumbnailUrl":"https://cdn.3dassets.dev/assets/3775/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3775/v1/poster.webp","blurhash":"UC7_lut600RQ?@ofH]V[IBafx[oe8zay%yj[","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":94460,"triangles":1930,"vertices":5790,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-9.330131003762578,0,-9.702021598815918],"max":[9.330131003762578,21.21002319342457,9.702021598815918]},"sizeMeters":[18.66,21.21,19.404],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:03.582Z","updatedAt":"2026-09-06T06:02:05.460Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3775/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureSycamoreTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3775/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3775/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3775/v1/model.glb\" alt=\"Mature sycamore (Temperate Forest Ecology)\" 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/3775/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/3775/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3781","slug":"temperate-forest-ecology-sweet-chestnut-mature-658d33fe","title":"Mature sweet chestnut (Temperate Forest Ecology)","summary":"Heavy-boled chestnut with three massive ascending limbs and a slightly leaning, coarse-textured crown. 14.62 x 15.95 x 15.88 m.","description":"Heavy-boled chestnut with three massive ascending limbs and a slightly leaning, coarse-textured crown. 14.62 x 15.95 x 15.88 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-sweet-chestnut-mature-658d33fe","cdnUrl":"https://cdn.3dassets.dev/assets/3781/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-sweet-chestnut-mature-658d33fe","thumbnailUrl":"https://cdn.3dassets.dev/assets/3781/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3781/v1/poster.webp","blurhash":"UB9HFBxb02oy_LxtICR*02k9%eRk01M{%eof","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":70424,"triangles":1429,"vertices":4287,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-7.311727414762883,0,-7.9397969245910645],"max":[7.311727414762883,15.947623365518465,7.9397969245910645]},"sizeMeters":[14.623,15.948,15.88],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:06.893Z","updatedAt":"2026-09-06T06:02:06.984Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3781/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureSweetChestnutTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3781/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3781/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3781/v1/model.glb\" alt=\"Mature sweet chestnut (Temperate Forest Ecology)\" 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/3781/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/3781/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3780","slug":"temperate-forest-ecology-field-maple-mature-40b99530","title":"Mature field maple (Temperate Forest Ecology)","summary":"Small hedgerow maple with dense twiggy branching and a tight rounded crown carried low over a short bole. 9.89 x 10.29 x 9.13 m.","description":"Small hedgerow maple with dense twiggy branching and a tight rounded crown carried low over a short bole. 9.89 x 10.29 x 9.13 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-field-maple-mature-40b99530","cdnUrl":"https://cdn.3dassets.dev/assets/3780/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-field-maple-mature-40b99530","thumbnailUrl":"https://cdn.3dassets.dev/assets/3780/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3780/v1/poster.webp","blurhash":"UE9*9}x[01IV_KxtICM|8|oL-:WC02V[.6j[","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":107008,"triangles":2191,"vertices":6573,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-4.945806503295898,0,-4.5636298601382945],"max":[4.945806503295898,10.291504174042517,4.5636298601382945]},"sizeMeters":[9.892,10.292,9.127],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:06.929Z","updatedAt":"2026-09-06T06:02:06.995Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3780/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureFieldMapleTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3780/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3780/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3780/v1/model.glb\" alt=\"Mature field maple (Temperate Forest Ecology)\" 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/3780/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/3780/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3782","slug":"temperate-forest-ecology-crab-apple-gnarled-a6575a1d","title":"Gnarled crab apple (Temperate Forest Ecology)","summary":"Crooked open-grown crab apple: a leaning short bole, five twisting limbs and an irregular broken crown. 8.60 x 7.10 x 8.33 m.","description":"Crooked open-grown crab apple: a leaning short bole, five twisting limbs and an irregular broken crown. 8.60 x 7.10 x 8.33 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-crab-apple-gnarled-a6575a1d","cdnUrl":"https://cdn.3dassets.dev/assets/3782/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-crab-apple-gnarled-a6575a1d","thumbnailUrl":"https://cdn.3dassets.dev/assets/3782/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3782/v1/poster.webp","blurhash":"UD9Q$=%f4oM|_LxtIVWX4pRQ%Lt701M{%efP","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":99304,"triangles":2031,"vertices":6093,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-4.298151969909668,-0.00015661863585547664,-4.164880007220736],"max":[4.298151969909668,7.096383931424564,4.164880007220736]},"sizeMeters":[8.596,7.097,8.33],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:06.958Z","updatedAt":"2026-09-06T06:02:07.979Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3782/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GnarledCrabAppleTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3782/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3782/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3782/v1/model.glb\" alt=\"Gnarled crab apple (Temperate Forest Ecology)\" 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/3782/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/3782/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3779","slug":"temperate-forest-ecology-wild-cherry-mature-ca5ccec9","title":"Mature wild cherry (Temperate Forest Ecology)","summary":"Straight-stemmed cherry with regular whorled tiers of near-horizontal branches and a narrow oval crown. 6.94 x 15.99 x 6.74 m.","description":"Straight-stemmed cherry with regular whorled tiers of near-horizontal branches and a narrow oval crown. 6.94 x 15.99 x 6.74 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-wild-cherry-mature-ca5ccec9","cdnUrl":"https://cdn.3dassets.dev/assets/3779/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-wild-cherry-mature-ca5ccec9","thumbnailUrl":"https://cdn.3dassets.dev/assets/3779/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3779/v1/poster.webp","blurhash":"U97_imtQ00IV.ka{HtoLDQV[yVtQICjbx@kA","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":99760,"triangles":2040,"vertices":6120,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-3.4707056219520234,0,-3.372158523546997],"max":[3.4707056219520234,15.989517211914062,3.372158523546997]},"sizeMeters":[6.941,15.99,6.744],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:06.863Z","updatedAt":"2026-09-06T06:02:06.989Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3779/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureWildCherryTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3779/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3779/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3779/v1/model.glb\" alt=\"Mature wild cherry (Temperate Forest Ecology)\" 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/3779/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/3779/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3783","slug":"temperate-forest-ecology-wild-cherry-in-blossom-983af861","title":"Wild cherry in blossom (Temperate Forest Ecology)","summary":"Spring form of the mature wild cherry: the same skeleton with pale-green new leaf and twenty-six added blossom masses. 6.66 x 15.78 x 6.46 m.","description":"Spring form of the mature wild cherry: the same skeleton with pale-green new leaf and twenty-six added blossom masses. 6.66 x 15.78 x 6.46 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-wild-cherry-in-blossom-983af861","cdnUrl":"https://cdn.3dassets.dev/assets/3783/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-wild-cherry-in-blossom-983af861","thumbnailUrl":"https://cdn.3dassets.dev/assets/3783/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3783/v1/poster.webp","blurhash":"UB9@ncoM00R%_Ka#8|od4Way.6j]DkbF%eoM","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":145468,"triangles":2976,"vertices":8928,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-3.3276720205908834,0,-3.2296914923932145],"max":[3.3276720205908834,15.784451484680176,3.2296914923932145]},"sizeMeters":[6.655,15.784,6.459],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:08.404Z","updatedAt":"2026-09-06T06:02:08.462Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3783/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WildCherryInBlossomTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3783/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3783/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3783/v1/model.glb\" alt=\"Wild cherry in blossom (Temperate Forest Ecology)\" 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/3783/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/3783/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3785","slug":"temperate-forest-ecology-beech-mature-1df9a3cf","title":"Mature common beech (Temperate Forest Ecology)","summary":"Woodland-grown beech with a long smooth grey bole, a high crown of layered branches and a dense canopy. 14.31 x 27.59 x 12.55 m.","description":"Woodland-grown beech with a long smooth grey bole, a high crown of layered branches and a dense canopy. 14.31 x 27.59 x 12.55 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-beech-mature-1df9a3cf","cdnUrl":"https://cdn.3dassets.dev/assets/3785/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-beech-mature-1df9a3cf","thumbnailUrl":"https://cdn.3dassets.dev/assets/3785/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3785/v1/poster.webp","blurhash":"U57.22%f009F*FkBM3jb01Rj?@t7D7WB%{t7","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":123736,"triangles":2540,"vertices":7620,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-7.154819686888601,0,-6.273640424996331],"max":[7.154819686888601,27.585771560668945,6.273640424996331]},"sizeMeters":[14.31,27.586,12.547],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:08.506Z","updatedAt":"2026-09-06T06:02:08.552Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3785/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureCommonBeechTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3785/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3785/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3785/v1/model.glb\" alt=\"Mature common beech (Temperate Forest Ecology)\" 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/3785/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/3785/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3784","slug":"temperate-forest-ecology-beech-young-a504ded7","title":"Young beech (Temperate Forest Ecology)","summary":"Pole-stage beech retaining low branches: a slender stem with five tiers of thin near-level shoots. 5.36 x 12.17 x 5.47 m.","description":"Pole-stage beech retaining low branches: a slender stem with five tiers of thin near-level shoots. 5.36 x 12.17 x 5.47 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-beech-young-a504ded7","cdnUrl":"https://cdn.3dassets.dev/assets/3784/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-beech-young-a504ded7","thumbnailUrl":"https://cdn.3dassets.dev/assets/3784/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3784/v1/poster.webp","blurhash":"U9AA%1tQ00My_KkC8}V[4VWC?soxV]jsovf+","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":123716,"triangles":2540,"vertices":7620,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.6807845466489897,0,-2.733048581508029],"max":[2.6807845466489897,12.173354148864746,2.733048581508029]},"sizeMeters":[5.362,12.173,5.466],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:08.369Z","updatedAt":"2026-09-06T06:02:08.497Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3784/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function YoungBeechTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3784/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3784/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3784/v1/model.glb\" alt=\"Young beech (Temperate Forest Ecology)\" 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/3784/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/3784/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3786","slug":"temperate-forest-ecology-common-ash-mature-0ef032d4","title":"Mature common ash (Temperate Forest Ecology)","summary":"Ash with a light open crown: strongly ascending limbs, wide gaps between foliage masses and an upswept outline. 11.03 x 25.47 x 11.46 m.","description":"Ash with a light open crown: strongly ascending limbs, wide gaps between foliage masses and an upswept outline. 11.03 x 25.47 x 11.46 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-common-ash-mature-0ef032d4","cdnUrl":"https://cdn.3dassets.dev/assets/3786/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-common-ash-mature-0ef032d4","thumbnailUrl":"https://cdn.3dassets.dev/assets/3786/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3786/v1/poster.webp","blurhash":"U88;i4x[00Dk_Koy8}RkDkaf%LbbDlWBx@oy","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":99760,"triangles":2040,"vertices":6120,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-5.513425710956749,0,-5.727870975680306],"max":[5.513425710956749,25.46807861328125,5.727870975680306]},"sizeMeters":[11.027,25.468,11.456],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:09.382Z","updatedAt":"2026-09-06T06:02:09.492Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3786/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureCommonAshTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3786/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3786/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3786/v1/model.glb\" alt=\"Mature common ash (Temperate Forest Ecology)\" 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/3786/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/3786/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3787","slug":"temperate-forest-ecology-small-leaved-lime-7d20650f","title":"Small-leaved lime with basal shoots (Temperate Forest Ecology)","summary":"Lime with a dense skirt of epicormic basal shoots round the butt beneath a tall regularly branched crown. 12.36 x 23.55 x 10.93 m.","description":"Lime with a dense skirt of epicormic basal shoots round the butt beneath a tall regularly branched crown. 12.36 x 23.55 x 10.93 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-small-leaved-lime-7d20650f","cdnUrl":"https://cdn.3dassets.dev/assets/3787/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-small-leaved-lime-7d20650f","thumbnailUrl":"https://cdn.3dassets.dev/assets/3787/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3787/v1/poster.webp","blurhash":"U97xgVtQ00My.jofDQV[8zR*%ys;MfWBtjt7","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":197028,"triangles":4038,"vertices":12114,"meshes":4,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-6.178789293885715,0,-5.462869793603217],"max":[6.178789293885715,23.545167922973633,5.462869793603217]},"sizeMeters":[12.358,23.545,10.926],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:09.886Z","updatedAt":"2026-09-06T06:02:09.923Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3787/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SmallLeavedLimeWithBasalShootsTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3787/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3787/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3787/v1/model.glb\" alt=\"Small-leaved lime with basal shoots (Temperate Forest Ecology)\" 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/3787/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/3787/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3788","slug":"temperate-forest-ecology-hornbeam-mature-6e37a40c","title":"Mature hornbeam (Temperate Forest Ecology)","summary":"Fluted-stemmed hornbeam with six close tiers of sinuous branches and a dense, rather narrow crown. 8.97 x 18.19 x 8.67 m.","description":"Fluted-stemmed hornbeam with six close tiers of sinuous branches and a dense, rather narrow crown. 8.97 x 18.19 x 8.67 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-hornbeam-mature-6e37a40c","cdnUrl":"https://cdn.3dassets.dev/assets/3788/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-hornbeam-mature-6e37a40c","thumbnailUrl":"https://cdn.3dassets.dev/assets/3788/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3788/v1/poster.webp","blurhash":"U56bf3tk00Me%|ofMLV@4TRQ.ktRVGWBpGoy","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":147736,"triangles":3040,"vertices":9120,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-4.48483503081304,0,-4.333345781848375],"max":[4.48483503081304,18.186105728149414,4.333345781848375]},"sizeMeters":[8.97,18.186,8.667],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:09.831Z","updatedAt":"2026-09-06T06:02:09.975Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3788/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureHornbeamTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3788/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3788/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3788/v1/model.glb\" alt=\"Mature hornbeam (Temperate Forest Ecology)\" 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/3788/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/3788/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3789","slug":"temperate-forest-ecology-common-alder-mature-9ee793ad","title":"Mature common alder (Temperate Forest Ecology)","summary":"Riverside alder: a narrow upright broadleaf outline of dark foliage masses with twenty-two small woody cone clusters. 6.19 x 16.61 x 5.82 m.","description":"Riverside alder: a narrow upright broadleaf outline of dark foliage masses with twenty-two small woody cone clusters. 6.19 x 16.61 x 5.82 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-common-alder-mature-9ee793ad","cdnUrl":"https://cdn.3dassets.dev/assets/3789/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-common-alder-mature-9ee793ad","thumbnailUrl":"https://cdn.3dassets.dev/assets/3789/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3789/v1/poster.webp","blurhash":"U45$PHyC00D6*Go|HtQ:D5ae%|fiaLn$oyX8","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":186508,"triangles":3832,"vertices":11496,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-3.094105533467631,0,-2.907802363359834],"max":[3.094105533467631,16.612552642822266,2.907802363359834]},"sizeMeters":[6.188,16.613,5.816],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:09.976Z","updatedAt":"2026-09-06T06:02:10.041Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3789/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureCommonAlderTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3789/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3789/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3789/v1/model.glb\" alt=\"Mature common alder (Temperate Forest Ecology)\" 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/3789/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/3789/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3790","slug":"temperate-forest-ecology-silver-birch-mature-c3711d50","title":"Mature silver birch (Temperate Forest Ecology)","summary":"Silver birch with a white banded bole, thirteen arching branches and light drooping foliage masses. 5.52 x 14.71 x 5.78 m.","description":"Silver birch with a white banded bole, thirteen arching branches and light drooping foliage masses. 5.52 x 14.71 x 5.78 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-silver-birch-mature-c3711d50","cdnUrl":"https://cdn.3dassets.dev/assets/3790/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-silver-birch-mature-c3711d50","thumbnailUrl":"https://cdn.3dassets.dev/assets/3790/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3790/v1/poster.webp","blurhash":"U89aZ,%f004o.5fhDlaj02V@_KozMzt7x@M{","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":96572,"triangles":1958,"vertices":5874,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-2.7574426987225964,0,-2.887488962202072],"max":[2.7574426987225964,14.707953453063965,2.887488962202072]},"sizeMeters":[5.515,14.708,5.775],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:10.797Z","updatedAt":"2026-09-06T06:02:10.965Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3790/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureSilverBirchTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3790/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3790/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3790/v1/model.glb\" alt=\"Mature silver birch (Temperate Forest Ecology)\" 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/3790/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/3790/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3791","slug":"temperate-forest-ecology-downy-birch-young-2ddbeef9","title":"Young downy birch (Temperate Forest Ecology)","summary":"Young birch with a leaning stem, upswept branches and a narrow feathered crown; no dark bark banding yet. 3.10 x 8.20 x 3.69 m.","description":"Young birch with a leaning stem, upswept branches and a narrow feathered crown; no dark bark banding yet. 3.10 x 8.20 x 3.69 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-downy-birch-young-2ddbeef9","cdnUrl":"https://cdn.3dassets.dev/assets/3791/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-downy-birch-young-2ddbeef9","thumbnailUrl":"https://cdn.3dassets.dev/assets/3791/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3791/v1/poster.webp","blurhash":"U77U#7x[00Dk%ykBIBV[4URk?[xaM{oMxuWB","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":71676,"triangles":1455,"vertices":4365,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.5483572489483972,0,-1.8433266868523492],"max":[1.5483572489483972,8.195657730102539,1.8433266868523492]},"sizeMeters":[3.097,8.196,3.687],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:11.298Z","updatedAt":"2026-09-06T06:02:11.396Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3791/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function YoungDownyBirchTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3791/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3791/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3791/v1/model.glb\" alt=\"Young downy birch (Temperate Forest Ecology)\" 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/3791/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/3791/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3792","slug":"temperate-forest-ecology-white-willow-mature-7dfd213b","title":"Mature white willow (Temperate Forest Ecology)","summary":"Leaning waterside willow with sixteen long weeping branches and pale narrow-leaved foliage curtains. 9.19 x 12.90 x 9.59 m.","description":"Leaning waterside willow with sixteen long weeping branches and pale narrow-leaved foliage curtains. 9.19 x 12.90 x 9.59 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-white-willow-mature-7dfd213b","cdnUrl":"https://cdn.3dassets.dev/assets/3792/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-white-willow-mature-7dfd213b","thumbnailUrl":"https://cdn.3dassets.dev/assets/3792/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3792/v1/poster.webp","blurhash":"U79Qy*s:00WU%MRjMyxu01NG_L%LM|t6tPV]","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":110544,"triangles":2265,"vertices":6795,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-4.595626676919281,0,-4.795793487517551],"max":[4.595626676919281,12.903533935546875,4.795793487517551]},"sizeMeters":[9.191,12.904,9.592],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:11.477Z","updatedAt":"2026-09-06T06:02:12.396Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3792/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureWhiteWillowTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3792/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3792/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3792/v1/model.glb\" alt=\"Mature white willow (Temperate Forest Ecology)\" 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/3792/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/3792/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3793","slug":"temperate-forest-ecology-goat-willow-shrub-tree-c0a3f369","title":"Goat willow shrub tree (Temperate Forest Ecology)","summary":"Five-stemmed goat willow rising from a low stool, each stem carrying rounded foliage clumps. 5.38 x 9.09 x 5.23 m.","description":"Five-stemmed goat willow rising from a low stool, each stem carrying rounded foliage clumps. 5.38 x 9.09 x 5.23 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-goat-willow-shrub-tree-c0a3f369","cdnUrl":"https://cdn.3dassets.dev/assets/3793/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-goat-willow-shrub-tree-c0a3f369","thumbnailUrl":"https://cdn.3dassets.dev/assets/3793/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3793/v1/poster.webp","blurhash":"UA8N%pxt01IV_Lt6DkRkIBj?%LWE4VWB-:ay","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":73932,"triangles":1502,"vertices":4506,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.688462734222412,0,-2.6172451783489707],"max":[2.688462734222412,9.094661767730802,2.6172451783489707]},"sizeMeters":[5.377,9.095,5.234],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:11.378Z","updatedAt":"2026-09-06T06:02:11.496Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3793/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GoatWillowShrubTreeTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3793/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3793/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3793/v1/model.glb\" alt=\"Goat willow shrub tree (Temperate Forest Ecology)\" 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/3793/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/3793/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3794","slug":"temperate-forest-ecology-hazel-coppice-stool-4ae89da0","title":"Hazel coppice stool (Temperate Forest Ecology)","summary":"Nine-rod hazel stool from a broad cut base, the standard understorey unit of managed broadleaf woodland. 6.90 x 8.28 x 5.74 m.","description":"Nine-rod hazel stool from a broad cut base, the standard understorey unit of managed broadleaf woodland. 6.90 x 8.28 x 5.74 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-hazel-coppice-stool-4ae89da0","cdnUrl":"https://cdn.3dassets.dev/assets/3794/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-hazel-coppice-stool-4ae89da0","thumbnailUrl":"https://cdn.3dassets.dev/assets/3794/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3794/v1/poster.webp","blurhash":"UD8OO[tQ4URk.jtPMfaMDkoxx[RQDjV[tQW-","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":130364,"triangles":2678,"vertices":8034,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-3.450716018676758,0,-2.8706646306683474],"max":[3.450716018676758,8.278011149539646,2.8706646306683474]},"sizeMeters":[6.901,8.278,5.741],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:12.280Z","updatedAt":"2026-09-06T06:02:12.408Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3794/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HazelCoppiceStoolTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3794/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3794/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3794/v1/model.glb\" alt=\"Hazel coppice stool (Temperate Forest Ecology)\" 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/3794/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/3794/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3796","slug":"temperate-forest-ecology-hazel-shrub-young-2aa5af26","title":"Young hazel shrub (Temperate Forest Ecology)","summary":"Small five-stem hazel of regrowth height, useful for filling coppice panels cut in the last few seasons. 2.88 x 3.98 x 2.95 m.","description":"Small five-stem hazel of regrowth height, useful for filling coppice panels cut in the last few seasons. 2.88 x 3.98 x 2.95 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-hazel-shrub-young-2aa5af26","cdnUrl":"https://cdn.3dassets.dev/assets/3796/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-hazel-shrub-young-2aa5af26","thumbnailUrl":"https://cdn.3dassets.dev/assets/3796/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3796/v1/poster.webp","blurhash":"UF9*6=-:02IV_LxtICRk9HRk%ekB02M|.6oy","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":54708,"triangles":1102,"vertices":3306,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.4380840526005643,0,-1.4748114347457886],"max":[1.4380840526005643,3.9789121004264487,1.4748114347457886]},"sizeMeters":[2.876,3.979,2.95],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:12.895Z","updatedAt":"2026-09-06T06:02:12.966Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3796/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function YoungHazelShrubTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3796/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3796/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3796/v1/model.glb\" alt=\"Young hazel shrub (Temperate Forest Ecology)\" 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/3796/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/3796/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3795","slug":"temperate-forest-ecology-aspen-clone-group-62fe8c4a","title":"Aspen clone group (Temperate Forest Ecology)","summary":"Six suckering aspen stems of staggered height from one root system, pale-barked with small fluttering crowns. 5.25 x 13.52 x 6.26 m.","description":"Six suckering aspen stems of staggered height from one root system, pale-barked with small fluttering crowns. 5.25 x 13.52 x 6.26 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-aspen-clone-group-62fe8c4a","cdnUrl":"https://cdn.3dassets.dev/assets/3795/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-aspen-clone-group-62fe8c4a","thumbnailUrl":"https://cdn.3dassets.dev/assets/3795/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3795/v1/poster.webp","blurhash":"UB8g~Pxt00IU_Koe8}WFIUaxxuogDkayx@ay","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":86504,"triangles":1764,"vertices":5292,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.625466800694296,0,-3.1297948360443115],"max":[2.625466800694296,13.518338419438122,3.1297948360443115]},"sizeMeters":[5.251,13.518,6.26],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:12.806Z","updatedAt":"2026-09-06T06:02:12.949Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3795/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function AspenCloneGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3795/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3795/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3795/v1/model.glb\" alt=\"Aspen clone group (Temperate Forest Ecology)\" 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/3795/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/3795/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3797","slug":"temperate-forest-ecology-rowan-multi-stem-07bd63fd","title":"Multi-stem rowan with berries (Temperate Forest Ecology)","summary":"Four-stem rowan carrying fourteen red berry clusters through a light pinnate-leaved crown. 5.12 x 9.83 x 4.95 m.","description":"Four-stem rowan carrying fourteen red berry clusters through a light pinnate-leaved crown. 5.12 x 9.83 x 4.95 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-rowan-multi-stem-07bd63fd","cdnUrl":"https://cdn.3dassets.dev/assets/3797/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-rowan-multi-stem-07bd63fd","thumbnailUrl":"https://cdn.3dassets.dev/assets/3797/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3797/v1/poster.webp","blurhash":"U58E3jt700Mx~nt78}IU56t6?GM|9JoK-lWX","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":84760,"triangles":1712,"vertices":5136,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-2.5607316493988037,0,-2.4772677557998195],"max":[2.5607316493988037,9.826264005077403,2.4772677557998195]},"sizeMeters":[5.121,9.826,4.955],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:14.009Z","updatedAt":"2026-09-06T06:02:14.855Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3797/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MultiStemRowanWithBerriesTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3797/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3797/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3797/v1/model.glb\" alt=\"Multi-stem rowan with berries (Temperate Forest Ecology)\" 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/3797/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/3797/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3798","slug":"temperate-forest-ecology-elder-shrub-055a3e4c","title":"Elder shrub in flower (Temperate Forest Ecology)","summary":"Sprawling elder with soft pithy stems and eleven flat creamy flower plates held above the foliage. 4.08 x 5.74 x 3.95 m.","description":"Sprawling elder with soft pithy stems and eleven flat creamy flower plates held above the foliage. 4.08 x 5.74 x 3.95 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-elder-shrub-055a3e4c","cdnUrl":"https://cdn.3dassets.dev/assets/3798/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-elder-shrub-055a3e4c","thumbnailUrl":"https://cdn.3dassets.dev/assets/3798/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3798/v1/poster.webp","blurhash":"U56R.5x[00Mfy:oyiKjI4TRQ?uo|D6R6l7pG","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":82576,"triangles":1668,"vertices":5004,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-2.0383641719818115,0,-1.9761563356836513],"max":[2.0383641719818115,5.74495412497029,1.9761563356836513]},"sizeMeters":[4.077,5.745,3.952],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:13.932Z","updatedAt":"2026-09-06T06:02:14.857Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3798/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ElderShrubInFlowerTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3798/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3798/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3798/v1/model.glb\" alt=\"Elder shrub in flower (Temperate Forest Ecology)\" 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/3798/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/3798/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3799","slug":"temperate-forest-ecology-crack-willow-pollard-41b030b4","title":"Crack willow pollard (Temperate Forest Ecology)","summary":"Repeatedly cut willow: a swollen bolling, a knuckled head and eleven straight regrowth poles with narrow foliage. 4.58 x 8.29 x 4.15 m.","description":"Repeatedly cut willow: a swollen bolling, a knuckled head and eleven straight regrowth poles with narrow foliage. 4.58 x 8.29 x 4.15 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-crack-willow-pollard-41b030b4","cdnUrl":"https://cdn.3dassets.dev/assets/3799/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-crack-willow-pollard-41b030b4","thumbnailUrl":"https://cdn.3dassets.dev/assets/3799/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3799/v1/poster.webp","blurhash":"U88E9uxs00IW_Kt6DkM|M{oxxtRS8|ob%eRn","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":73680,"triangles":1497,"vertices":4491,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.289046049118042,0,-2.075559165176737],"max":[2.289046049118042,8.288406934322545,2.075559165176737]},"sizeMeters":[4.578,8.288,4.151],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:14.222Z","updatedAt":"2026-09-06T06:02:14.370Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3799/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CrackWillowPollardTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3799/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3799/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3799/v1/model.glb\" alt=\"Crack willow pollard (Temperate Forest Ecology)\" 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/3799/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/3799/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3800","slug":"temperate-forest-ecology-hornbeam-pollard-8dbd0e4d","title":"Hornbeam pollard (Temperate Forest Ecology)","summary":"Wood-pasture hornbeam pollard cut above browsing height, with a hard knuckle and nine dense shoots. 3.34 x 6.68 x 3.38 m.","description":"Wood-pasture hornbeam pollard cut above browsing height, with a hard knuckle and nine dense shoots. 3.34 x 6.68 x 3.38 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-hornbeam-pollard-8dbd0e4d","cdnUrl":"https://cdn.3dassets.dev/assets/3800/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-hornbeam-pollard-8dbd0e4d","thumbnailUrl":"https://cdn.3dassets.dev/assets/3800/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3800/v1/poster.webp","blurhash":"U27L13pG00MMLbSw+4#r0LRj~V%2QVe.l6bY","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":62648,"triangles":1267,"vertices":3801,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.6708472670716268,0,-1.6917051076889038],"max":[1.6708472670716268,6.6762069355496685,1.6917051076889038]},"sizeMeters":[3.342,6.676,3.383],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:14.280Z","updatedAt":"2026-09-06T06:02:14.424Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3800/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HornbeamPollardTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3800/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3800/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3800/v1/model.glb\" alt=\"Hornbeam pollard (Temperate Forest Ecology)\" 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/3800/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/3800/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3801","slug":"temperate-forest-ecology-norway-spruce-mature-770657d8","title":"Mature Norway spruce (Temperate Forest Ecology)","summary":"Full-skirted spruce with thirteen drooping whorls narrowing to a leading shoot; the classic plantation conifer. 6.59 x 23.13 x 6.80 m.","description":"Full-skirted spruce with thirteen drooping whorls narrowing to a leading shoot; the classic plantation conifer. 6.59 x 23.13 x 6.80 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-norway-spruce-mature-770657d8","cdnUrl":"https://cdn.3dassets.dev/assets/3801/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-norway-spruce-mature-770657d8","thumbnailUrl":"https://cdn.3dassets.dev/assets/3801/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3801/v1/poster.webp","blurhash":"U35PExyD00D58wWB.loy8{R*.7xbxaa}X7oe","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":36640,"triangles":726,"vertices":2178,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-3.296846227772279,0,-3.3988573646282196],"max":[3.296846227772279,23.1308650970459,3.3988573646282196]},"sizeMeters":[6.594,23.131,6.798],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:16.146Z","updatedAt":"2026-09-06T06:02:16.820Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3801/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureNorwaySpruceTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3801/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3801/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3801/v1/model.glb\" alt=\"Mature Norway spruce (Temperate Forest Ecology)\" 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/3801/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/3801/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3802","slug":"temperate-forest-ecology-norway-spruce-young-be199bc1","title":"Young Norway spruce (Temperate Forest Ecology)","summary":"Thicket-stage spruce, dense to the ground, for planting blocks and regeneration edges. 3.32 x 5.22 x 3.09 m.","description":"Thicket-stage spruce, dense to the ground, for planting blocks and regeneration edges. 3.32 x 5.22 x 3.09 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-norway-spruce-young-be199bc1","cdnUrl":"https://cdn.3dassets.dev/assets/3802/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-norway-spruce-young-be199bc1","thumbnailUrl":"https://cdn.3dassets.dev/assets/3802/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3802/v1/poster.webp","blurhash":"U45~j~%N008_8wRj.RtQ8wR%.lxJyWj[Vsof","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":25116,"triangles":486,"vertices":1458,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.6606958293353073,0,-1.5454294329745786],"max":[1.6606958293353073,5.21675968170166,1.5454294329745786]},"sizeMeters":[3.321,5.217,3.091],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:16.202Z","updatedAt":"2026-09-06T06:02:16.836Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3802/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function YoungNorwaySpruceTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3802/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3802/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3802/v1/model.glb\" alt=\"Young Norway spruce (Temperate Forest Ecology)\" 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/3802/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/3802/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3804","slug":"temperate-forest-ecology-douglas-fir-mature-0213c3b2","title":"Mature Douglas fir (Temperate Forest Ecology)","summary":"Tall narrow Douglas fir with a clear lower stem, twelve level whorls and a blue-green needle mass. 5.85 x 31.48 x 6.66 m.","description":"Tall narrow Douglas fir with a clear lower stem, twelve level whorls and a blue-green needle mass. 5.85 x 31.48 x 6.66 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-douglas-fir-mature-0213c3b2","cdnUrl":"https://cdn.3dassets.dev/assets/3804/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-douglas-fir-mature-0213c3b2","thumbnailUrl":"https://cdn.3dassets.dev/assets/3804/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3804/v1/poster.webp","blurhash":"U46b0]%M008{OrWVv~sC8wRj?^x]tkofVsRj","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":25120,"triangles":486,"vertices":1458,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.9247065570992077,0,-3.3302927808278167],"max":[2.9247065570992077,31.482254028320312,3.3302927808278167]},"sizeMeters":[5.849,31.482,6.661],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:17.129Z","updatedAt":"2026-09-06T06:02:17.271Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3804/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureDouglasFirTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3804/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3804/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3804/v1/model.glb\" alt=\"Mature Douglas fir (Temperate Forest Ecology)\" 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/3804/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/3804/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3803","slug":"temperate-forest-ecology-european-larch-mature-5f8af7ce","title":"Mature European larch (Temperate Forest Ecology)","summary":"Open airy larch: widely spaced drooping whorls of soft bright needles on a straight tapering stem. 4.71 x 25.17 x 5.02 m.","description":"Open airy larch: widely spaced drooping whorls of soft bright needles on a straight tapering stem. 4.71 x 25.17 x 5.02 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-european-larch-mature-5f8af7ce","cdnUrl":"https://cdn.3dassets.dev/assets/3803/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-european-larch-mature-5f8af7ce","thumbnailUrl":"https://cdn.3dassets.dev/assets/3803/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3803/v1/poster.webp","blurhash":"U77e03xt00D*kVkBV[ae4VRj_Lx[xue:RjkU","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":20152,"triangles":382,"vertices":1146,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.3564848800157647,0,-2.5115167800168017],"max":[2.3564848800157647,25.16707992553711,2.5115167800168017]},"sizeMeters":[4.713,25.167,5.023],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:17.099Z","updatedAt":"2026-09-06T06:02:17.259Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3803/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureEuropeanLarchTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3803/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3803/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3803/v1/model.glb\" alt=\"Mature European larch (Temperate Forest Ecology)\" 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/3803/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/3803/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3805","slug":"temperate-forest-ecology-scots-pine-mature-818bd1b5","title":"Mature Scots pine (Temperate Forest Ecology)","summary":"Scots pine with a long bare orange-brown bole and a flat plated crown of seven needle pads. 11.42 x 19.41 x 11.90 m.","description":"Scots pine with a long bare orange-brown bole and a flat plated crown of seven needle pads. 11.42 x 19.41 x 11.90 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-scots-pine-mature-818bd1b5","cdnUrl":"https://cdn.3dassets.dev/assets/3805/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-scots-pine-mature-818bd1b5","thumbnailUrl":"https://cdn.3dassets.dev/assets/3805/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3805/v1/poster.webp","blurhash":"U76Roj%f009G*Io}Mda1K4bu$NnPR5n%t6Rj","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":100784,"triangles":2062,"vertices":6186,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-5.710265664268203,0,-5.947686672210693],"max":[5.710265664268203,19.41204725205489,5.947686672210693]},"sizeMeters":[11.421,19.412,11.895],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:18.296Z","updatedAt":"2026-09-06T06:02:18.422Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3805/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureScotsPineTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3805/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3805/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3805/v1/model.glb\" alt=\"Mature Scots pine (Temperate Forest Ecology)\" 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/3805/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/3805/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3806","slug":"temperate-forest-ecology-scots-pine-veteran-b5e9e504","title":"Veteran wind-shaped Scots pine (Temperate Forest Ecology)","summary":"Old exposed pine with a strongly leaning fluted bole and an asymmetric five-pad crown pushed to one side. 10.57 x 13.27 x 11.14 m.","description":"Old exposed pine with a strongly leaning fluted bole and an asymmetric five-pad crown pushed to one side. 10.57 x 13.27 x 11.14 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-scots-pine-veteran-b5e9e504","cdnUrl":"https://cdn.3dassets.dev/assets/3806/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-scots-pine-veteran-b5e9e504","thumbnailUrl":"https://cdn.3dassets.dev/assets/3806/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3806/v1/poster.webp","blurhash":"U86k@V.7019Gy=pHZ%niD*R*%LxZHsVspHX9","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":77664,"triangles":1580,"vertices":4740,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-5.283077895195661,0,-5.572170257568359],"max":[5.283077895195661,13.268012181074031,5.572170257568359]},"sizeMeters":[10.566,13.268,11.144],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:18.307Z","updatedAt":"2026-09-06T06:02:18.424Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3806/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function VeteranWindShapedScotsPineTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3806/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3806/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3806/v1/model.glb\" alt=\"Veteran wind-shaped Scots pine (Temperate Forest Ecology)\" 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/3806/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/3806/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3807","slug":"temperate-forest-ecology-ancient-yew-2d535ab2","title":"Ancient fluted yew (Temperate Forest Ecology)","summary":"Ancient yew: six fused fluted stems from a massive base carrying one heavy dome of very dark evergreen foliage. 7.58 x 12.97 x 6.89 m.","description":"Ancient yew: six fused fluted stems from a massive base carrying one heavy dome of very dark evergreen foliage. 7.58 x 12.97 x 6.89 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-ancient-yew-2d535ab2","cdnUrl":"https://cdn.3dassets.dev/assets/3807/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-ancient-yew-2d535ab2","thumbnailUrl":"https://cdn.3dassets.dev/assets/3807/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3807/v1/poster.webp","blurhash":"U46bMix[00IBLyo|*zR5D5WC%|kAL#RQYhtQ","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":130836,"triangles":2676,"vertices":8028,"meshes":3,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-3.7922902653025004,0,-3.447120167699962],"max":[3.7922902653025004,12.968348503112793,3.447120167699962]},"sizeMeters":[7.585,12.968,6.894],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:18.626Z","updatedAt":"2026-09-06T06:02:18.765Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3807/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function AncientFlutedYewTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3807/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3807/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3807/v1/model.glb\" alt=\"Ancient fluted yew (Temperate Forest Ecology)\" 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/3807/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/3807/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3808","slug":"temperate-forest-ecology-holly-mature-128f3ca9","title":"Mature holly (Temperate Forest Ecology)","summary":"Dense evergreen holly: three close stems inside a tight column of very dark glossy foliage reaching near ground level. 3.68 x 11.47 x 3.35 m.","description":"Dense evergreen holly: three close stems inside a tight column of very dark glossy foliage reaching near ground level. 3.68 x 11.47 x 3.35 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-holly-mature-128f3ca9","cdnUrl":"https://cdn.3dassets.dev/assets/3808/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-holly-mature-128f3ca9","thumbnailUrl":"https://cdn.3dassets.dev/assets/3808/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3808/v1/poster.webp","blurhash":"U25O$syB00DQqCo|mAQoMKoeu2NGHZaeuMg2","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":91744,"triangles":1874,"vertices":5622,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.8392833525542138,0,-1.6765898921562694],"max":[1.8392833525542138,11.4701566696167,1.6765898921562694]},"sizeMeters":[3.679,11.47,3.353],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:18.661Z","updatedAt":"2026-09-06T06:02:18.810Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3808/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MatureHollyTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3808/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3808/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3808/v1/model.glb\" alt=\"Mature holly (Temperate Forest Ecology)\" 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/3808/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/3808/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3809","slug":"temperate-forest-ecology-holly-sapling-clump-680f5dfe","title":"Holly sapling clump (Temperate Forest Ecology)","summary":"Two young hollies of different height, the shade-tolerant regeneration layer under beech and oak. 1.26 x 2.58 x 1.23 m.","description":"Two young hollies of different height, the shade-tolerant regeneration layer under beech and oak. 1.26 x 2.58 x 1.23 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-holly-sapling-clump-680f5dfe","cdnUrl":"https://cdn.3dassets.dev/assets/3809/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-holly-sapling-clump-680f5dfe","thumbnailUrl":"https://cdn.3dassets.dev/assets/3809/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3809/v1/poster.webp","blurhash":"U24fEeyW008wlko|mUR6D5ix*HY3vVi~P2XN","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":42876,"triangles":828,"vertices":2484,"meshes":4,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6296038381812425,0,-0.6140887124476593],"max":[0.629577454775831,2.584080696105957,0.6140948185622106]},"sizeMeters":[1.259,2.584,1.228],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:19.745Z","updatedAt":"2026-09-06T06:02:19.869Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3809/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HollySaplingClumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3809/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3809/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3809/v1/model.glb\" alt=\"Holly sapling clump (Temperate Forest Ecology)\" 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/3809/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/3809/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3810","slug":"temperate-forest-ecology-low-juniper-d1e449f7","title":"Low spreading juniper (Temperate Forest Ecology)","summary":"Prostrate juniper mat of wiry stems under a low blue-green cushion, for rocky clearings and woodland edge. 2.63 x 0.69 x 2.66 m.","description":"Prostrate juniper mat of wiry stems under a low blue-green cushion, for rocky clearings and woodland edge. 2.63 x 0.69 x 2.66 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-low-juniper-d1e449f7","cdnUrl":"https://cdn.3dassets.dev/assets/3810/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-low-juniper-d1e449f7","thumbnailUrl":"https://cdn.3dassets.dev/assets/3810/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3810/v1/poster.webp","blurhash":"U87xRCoz4TV@kWofaKRj00V[?^ozVYRjo}xu","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":47528,"triangles":953,"vertices":2859,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.3157019855178125,0.000055161055477481735,-1.3288415670394897],"max":[1.3157019855178125,0.6898960434186856,1.3288415670394897]},"sizeMeters":[2.631,0.69,2.658],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:19.781Z","updatedAt":"2026-09-06T06:02:19.881Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3810/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LowSpreadingJuniperTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3810/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3810/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3810/v1/model.glb\" alt=\"Low spreading juniper (Temperate Forest Ecology)\" 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/3810/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/3810/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3811","slug":"temperate-forest-ecology-oak-sapling-18213f91","title":"Oak sapling (Temperate Forest Ecology)","summary":"Single-whip oak sapling about knee to waist height, with three small leaf clusters. 0.46 x 1.57 x 0.52 m.","description":"Single-whip oak sapling about knee to waist height, with three small leaf clusters. 0.46 x 1.57 x 0.52 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-oak-sapling-18213f91","cdnUrl":"https://cdn.3dassets.dev/assets/3811/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-oak-sapling-18213f91","thumbnailUrl":"https://cdn.3dassets.dev/assets/3811/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3811/v1/poster.webp","blurhash":"U76*s*xa00E1?[j]8|WAIVbZ%Li}DRoe.6Rl","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":15884,"triangles":294,"vertices":882,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.2293646893957644,0,-0.2601365980351961],"max":[0.2293646893957644,1.5748484134674072,0.2601365980351961]},"sizeMeters":[0.459,1.575,0.52],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:20.045Z","updatedAt":"2026-09-06T06:02:20.197Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3811/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function OakSaplingTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3811/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3811/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3811/v1/model.glb\" alt=\"Oak sapling (Temperate Forest Ecology)\" 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/3811/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/3811/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3812","slug":"temperate-forest-ecology-beech-sapling-164240da","title":"Beech sapling (Temperate Forest Ecology)","summary":"Slender beech sapling with four low leaf clusters, typical of dense shade-bearing regeneration. 0.41 x 1.48 x 0.48 m.","description":"Slender beech sapling with four low leaf clusters, typical of dense shade-bearing regeneration. 0.41 x 1.48 x 0.48 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-beech-sapling-164240da","cdnUrl":"https://cdn.3dassets.dev/assets/3812/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-beech-sapling-164240da","thumbnailUrl":"https://cdn.3dassets.dev/assets/3812/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3812/v1/poster.webp","blurhash":"U97-vExa00E1?@s;8}NFjbofkARQDlbF%daf","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":19760,"triangles":374,"vertices":1122,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.2037507098678718,0,-0.23840665385783288],"max":[0.2037507098678718,1.483399510383606,0.23840665385783288]},"sizeMeters":[0.408,1.483,0.477],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:20.020Z","updatedAt":"2026-09-06T06:02:20.214Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3812/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BeechSaplingTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3812/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3812/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3812/v1/model.glb\" alt=\"Beech sapling (Temperate Forest Ecology)\" 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/3812/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/3812/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3813","slug":"temperate-forest-ecology-birch-sapling-group-6b8742c1","title":"Birch sapling group (Temperate Forest Ecology)","summary":"Five birch seedlings of mixed height colonising open ground; place in clearings and on disturbed soil. 1.27 x 2.76 x 1.34 m.","description":"Five birch seedlings of mixed height colonising open ground; place in clearings and on disturbed soil. 1.27 x 2.76 x 1.34 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-birch-sapling-group-6b8742c1","cdnUrl":"https://cdn.3dassets.dev/assets/3813/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-birch-sapling-group-6b8742c1","thumbnailUrl":"https://cdn.3dassets.dev/assets/3813/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3813/v1/poster.webp","blurhash":"U997zztQ00IC_Koy8}RQDjj[-:WUDkf6x@bF","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":53208,"triangles":1070,"vertices":3210,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6365956378022385,0,-0.6717435378767397],"max":[0.6365956378022385,2.7621986865997314,0.6717435378767397]},"sizeMeters":[1.273,2.762,1.343],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:21.189Z","updatedAt":"2026-09-06T06:02:21.311Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3813/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BirchSaplingGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3813/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3813/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3813/v1/model.glb\" alt=\"Birch sapling group (Temperate Forest Ecology)\" 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/3813/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/3813/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3814","slug":"temperate-forest-ecology-spruce-seedling-group-ec5eb655","title":"Spruce seedling group (Temperate Forest Ecology)","summary":"Three spruce seedlings of ascending age on one footprint, for restocked and naturally seeded ground. 1.22 x 1.02 x 1.03 m.","description":"Three spruce seedlings of ascending age on one footprint, for restocked and naturally seeded ground. 1.22 x 1.02 x 1.03 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-spruce-seedling-group-ec5eb655","cdnUrl":"https://cdn.3dassets.dev/assets/3814/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-spruce-seedling-group-ec5eb655","thumbnailUrl":"https://cdn.3dassets.dev/assets/3814/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3814/v1/poster.webp","blurhash":"UA6+kHx]D5X5DPV[oeRP8wRjyVn+?]tQWCt7","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":34032,"triangles":618,"vertices":1854,"meshes":6,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6099659440127795,0,-0.5142099844400039],"max":[0.609986798735147,1.0248162746429443,0.5142221404063599]},"sizeMeters":[1.22,1.025,1.028],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:21.159Z","updatedAt":"2026-09-06T06:02:21.327Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3814/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SpruceSeedlingGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3814/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3814/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3814/v1/model.glb\" alt=\"Spruce seedling group (Temperate Forest Ecology)\" 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/3814/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/3814/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3816","slug":"temperate-forest-ecology-oak-snag-standing-7613f534","title":"Standing oak snag (Temperate Forest Ecology)","summary":"Broken standing oak trunk with six weathered limb stubs and a splintered top, key deadwood habitat. 3.03 x 8.42 x 2.54 m.","description":"Broken standing oak trunk with six weathered limb stubs and a splintered top, key deadwood habitat. 3.03 x 8.42 x 2.54 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-oak-snag-standing-7613f534","cdnUrl":"https://cdn.3dassets.dev/assets/3816/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-oak-snag-standing-7613f534","thumbnailUrl":"https://cdn.3dassets.dev/assets/3816/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3816/v1/poster.webp","blurhash":"U59tGm-;0000M{j[t7WB00NG~p%MM{kAxbV[","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":24148,"triangles":481,"vertices":1443,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-1.5123559146774812,0,-1.2704200614676338],"max":[1.5123559146774812,8.415617942810059,1.2704200614676338]},"sizeMeters":[3.025,8.416,2.541],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:21.476Z","updatedAt":"2026-09-06T06:02:21.672Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3816/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StandingOakSnagTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3816/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3816/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3816/v1/model.glb\" alt=\"Standing oak snag (Temperate Forest Ecology)\" 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/3816/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/3816/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3815","slug":"temperate-forest-ecology-birch-snag-standing-ce0eb621","title":"Standing birch snag (Temperate Forest Ecology)","summary":"Dead birch still holding papery bark: a leaning stem with four stubs, split top and dark bark scars. 0.81 x 5.78 x 0.77 m.","description":"Dead birch still holding papery bark: a leaning stem with four stubs, split top and dark bark scars. 0.81 x 5.78 x 0.77 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-birch-snag-standing-ce0eb621","cdnUrl":"https://cdn.3dassets.dev/assets/3815/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-birch-snag-standing-ce0eb621","thumbnailUrl":"https://cdn.3dassets.dev/assets/3815/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3815/v1/poster.webp","blurhash":"U297eKRk00%LxtayM|oe00WB_3t8%NRjM_%N","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":32900,"triangles":647,"vertices":1941,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.40467757681311295,0,-0.3839519023061914],"max":[0.40467757681311295,5.781998634338379,0.3839519023061914]},"sizeMeters":[0.809,5.782,0.768],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:21.526Z","updatedAt":"2026-09-06T06:02:21.659Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3815/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StandingBirchSnagTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3815/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3815/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3815/v1/model.glb\" alt=\"Standing birch snag (Temperate Forest Ecology)\" 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/3815/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/3815/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3818","slug":"temperate-forest-ecology-spruce-snag-standing-d5e13a7a","title":"Standing spruce snag (Temperate Forest Ecology)","summary":"Bark-stripped spruce spar with eleven short down-swept stubs, from windthrow gaps and beetle-killed blocks. 1.63 x 10.32 x 1.46 m.","description":"Bark-stripped spruce spar with eleven short down-swept stubs, from windthrow gaps and beetle-killed blocks. 1.63 x 10.32 x 1.46 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-spruce-snag-standing-d5e13a7a","cdnUrl":"https://cdn.3dassets.dev/assets/3818/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-spruce-snag-standing-d5e13a7a","thumbnailUrl":"https://cdn.3dassets.dev/assets/3818/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3818/v1/poster.webp","blurhash":"U17nH~_300004.IU?H_M00Rj_4%M-=xtITIB","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":33280,"triangles":671,"vertices":2013,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.8162115650443019,0,-0.728040562647541],"max":[0.8162115650443019,10.318211555480957,0.728040562647541]},"sizeMeters":[1.632,10.318,1.456],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:22.582Z","updatedAt":"2026-09-06T06:02:22.787Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3818/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StandingSpruceSnagTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3818/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3818/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3818/v1/model.glb\" alt=\"Standing spruce snag (Temperate Forest Ecology)\" 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/3818/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/3818/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3817","slug":"temperate-forest-ecology-burnt-stump-adb0c32b","title":"Burnt stump (Temperate Forest Ecology)","summary":"Charred stump with five burnt spikes above the break; for fire-damaged clearings and charcoal sites. 1.14 x 1.79 x 1.13 m.","description":"Charred stump with five burnt spikes above the break; for fire-damaged clearings and charcoal sites. 1.14 x 1.79 x 1.13 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-burnt-stump-adb0c32b","cdnUrl":"https://cdn.3dassets.dev/assets/3817/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-burnt-stump-adb0c32b","thumbnailUrl":"https://cdn.3dassets.dev/assets/3817/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3817/v1/poster.webp","blurhash":"U5ATi.xu00D%00t6~qRk00Ri~q%MRjfPxuRj","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":10528,"triangles":185,"vertices":555,"meshes":2,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.5714035630226135,0.000010785743060792718,-0.564986237323211],"max":[0.5714035630226135,1.7906405925750732,0.564986237323211]},"sizeMeters":[1.143,1.791,1.13],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:22.611Z","updatedAt":"2026-09-06T06:02:22.747Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3817/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BurntStumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3817/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3817/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3817/v1/model.glb\" alt=\"Burnt stump (Temperate Forest Ecology)\" 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/3817/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/3817/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3819","slug":"temperate-forest-ecology-oak-stump-cut-2b69ec0b","title":"Sawn oak stump (Temperate Forest Ecology)","summary":"Freshly sawn oak stump with a pale flat cut face, a slight fall away and seven root buttresses. 1.50 x 0.54 x 1.51 m.","description":"Freshly sawn oak stump with a pale flat cut face, a slight fall away and seven root buttresses. 1.50 x 0.54 x 1.51 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-oak-stump-cut-2b69ec0b","cdnUrl":"https://cdn.3dassets.dev/assets/3819/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-oak-stump-cut-2b69ec0b","thumbnailUrl":"https://cdn.3dassets.dev/assets/3819/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3819/v1/poster.webp","blurhash":"UCBWMQxa00Iox]WCMxof00Rk~Wt7D%of-;WB","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":10176,"triangles":175,"vertices":525,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.7508933745709112,0.000001864477382262919,-0.7543928623199463],"max":[0.7508933745709112,0.535683737022307,0.7543928623199463]},"sizeMeters":[1.502,0.536,1.509],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:23.205Z","updatedAt":"2026-09-06T06:02:24.118Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3819/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SawnOakStumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3819/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3819/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3819/v1/model.glb\" alt=\"Sawn oak stump (Temperate Forest Ecology)\" 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/3819/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/3819/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3820","slug":"temperate-forest-ecology-conifer-stump-cut-a336fd89","title":"Sawn conifer stump (Temperate Forest Ecology)","summary":"Low sawn spruce stump left by thinning work, with a clean pale face and shallow surface roots. 0.87 x 0.35 x 0.86 m.","description":"Low sawn spruce stump left by thinning work, with a clean pale face and shallow surface roots. 0.87 x 0.35 x 0.86 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-conifer-stump-cut-a336fd89","cdnUrl":"https://cdn.3dassets.dev/assets/3820/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-conifer-stump-cut-a336fd89","thumbnailUrl":"https://cdn.3dassets.dev/assets/3820/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3820/v1/poster.webp","blurhash":"UBB:d5-:00IU%MkCIVWB00IV~Wxu9GWB?at7","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":8748,"triangles":145,"vertices":435,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.43316829204559326,-0.00001792490635130206,-0.4324808702130675],"max":[0.43316829204559326,0.3520119031545324,0.4324808702130675]},"sizeMeters":[0.866,0.352,0.865],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:23.063Z","updatedAt":"2026-09-06T06:02:23.163Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3820/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SawnConiferStumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3820/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3820/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3820/v1/model.glb\" alt=\"Sawn conifer stump (Temperate Forest Ecology)\" 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/3820/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/3820/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3821","slug":"temperate-forest-ecology-mossy-stump-decayed-52d7058d","title":"Decayed mossy stump (Temperate Forest Ecology)","summary":"Soft rotted stump with a moss cap and moss patches down the flanks; the late stage of stump decay. 1.30 x 0.82 x 1.36 m.","description":"Soft rotted stump with a moss cap and moss patches down the flanks; the late stage of stump decay. 1.30 x 0.82 x 1.36 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-mossy-stump-decayed-52d7058d","cdnUrl":"https://cdn.3dassets.dev/assets/3821/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-mossy-stump-decayed-52d7058d","thumbnailUrl":"https://cdn.3dassets.dev/assets/3821/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3821/v1/poster.webp","blurhash":"UADS:g.700D%NXV@V|t600IU~p%Lw8ogteWU","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":26288,"triangles":495,"vertices":1485,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.6494181612720531,-0.000020618532146854385,-0.6805732846260071],"max":[0.6494181612720531,0.8200040036568502,0.6805732846260071]},"sizeMeters":[1.299,0.82,1.361],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:24.067Z","updatedAt":"2026-09-06T06:02:24.190Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3821/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DecayedMossyStumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3821/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3821/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3821/v1/model.glb\" alt=\"Decayed mossy stump (Temperate Forest Ecology)\" 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/3821/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/3821/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3822","slug":"temperate-forest-ecology-hazel-stool-cut-22234785","title":"Freshly cut hazel stool (Temperate Forest Ecology)","summary":"Hazel stool cut this winter: nine pale angled stubs on a broad low base, the counterpart to the standing stool. 1.45 x 0.47 x 1.51 m.","description":"Hazel stool cut this winter: nine pale angled stubs on a broad low base, the counterpart to the standing stool. 1.45 x 0.47 x 1.51 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-hazel-stool-cut-22234785","cdnUrl":"https://cdn.3dassets.dev/assets/3822/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-hazel-stool-cut-22234785","thumbnailUrl":"https://cdn.3dassets.dev/assets/3822/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3822/v1/poster.webp","blurhash":"U9AJyVxt00WBIUWBoft600NG~Vof-;t6s;M|","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":18076,"triangles":339,"vertices":1017,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.7262832558554886,-0.00000726143403270707,-0.7559999823570251],"max":[0.7262832558554886,0.4661757365184267,0.7559999823570251]},"sizeMeters":[1.453,0.466,1.512],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:24.088Z","updatedAt":"2026-09-06T06:02:24.233Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3822/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FreshlyCutHazelStoolTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3822/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3822/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3822/v1/model.glb\" alt=\"Freshly cut hazel stool (Temperate Forest Ecology)\" 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/3822/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/3822/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3823","slug":"temperate-forest-ecology-fallen-oak-trunk-075cb5b3","title":"Fallen oak trunk with root plate (Temperate Forest Ecology)","summary":"Windthrown oak lying along its length with four broken limb stubs and an upturned root plate at the butt. 10.54 x 4.07 x 3.93 m.","description":"Windthrown oak lying along its length with four broken limb stubs and an upturned root plate at the butt. 10.54 x 4.07 x 3.93 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-fallen-oak-trunk-075cb5b3","cdnUrl":"https://cdn.3dassets.dev/assets/3823/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-fallen-oak-trunk-075cb5b3","thumbnailUrl":"https://cdn.3dassets.dev/assets/3823/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3823/v1/poster.webp","blurhash":"U68|*A-o00bbDi?H-;D*00E1~Wxu~q4.4n-:","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":24836,"triangles":480,"vertices":1440,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-5.267633744495725,0,-1.9645759860353176],"max":[5.2676191329956055,4.073354721069336,1.9645759860353176]},"sizeMeters":[10.535,4.073,3.929],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:24.425Z","updatedAt":"2026-09-06T06:02:24.592Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3823/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FallenOakTrunkWithRootPlateTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3823/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3823/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3823/v1/model.glb\" alt=\"Fallen oak trunk with root plate (Temperate Forest Ecology)\" 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/3823/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/3823/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3824","slug":"temperate-forest-ecology-fallen-birch-log-mossy-b18dee7a","title":"Mossy fallen birch log (Temperate Forest Ecology)","summary":"Fallen birch settled into the litter, with moss colonising the upper surface and two short branch stubs. 5.61 x 0.99 x 1.25 m.","description":"Fallen birch settled into the litter, with moss colonising the upper surface and two short branch stubs. 5.61 x 0.99 x 1.25 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-fallen-birch-log-mossy-b18dee7a","cdnUrl":"https://cdn.3dassets.dev/assets/3824/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-fallen-birch-log-mossy-b18dee7a","thumbnailUrl":"https://cdn.3dassets.dev/assets/3824/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3824/v1/poster.webp","blurhash":"U79tMzt64nM|WA_3j[IU00NG~pt7s;00R*?u","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":41108,"triangles":818,"vertices":2454,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.807187557220459,0.00010945114588234439,-0.6250524473859671],"max":[2.807187557220459,0.9884121843864968,0.6248960920728936]},"sizeMeters":[5.614,0.988,1.25],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:25.505Z","updatedAt":"2026-09-06T06:02:25.582Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3824/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MossyFallenBirchLogTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3824/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3824/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3824/v1/model.glb\" alt=\"Mossy fallen birch log (Temperate Forest Ecology)\" 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/3824/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/3824/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3825","slug":"temperate-forest-ecology-rotting-log-hollow-a23fa081","title":"Hollow rotting log (Temperate Forest Ecology)","summary":"Decayed log three and a half metres long with dark hollow recesses at both ends, shed bark bands and a moss pad on top. 3.54 x 0.72 x 0.96 m.","description":"Decayed log three and a half metres long with dark hollow recesses at both ends, shed bark bands and a moss pad on top. 3.54 x 0.72 x 0.96 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-rotting-log-hollow-a23fa081","cdnUrl":"https://cdn.3dassets.dev/assets/3825/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-rotting-log-hollow-a23fa081","thumbnailUrl":"https://cdn.3dassets.dev/assets/3825/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3825/v1/poster.webp","blurhash":"U7BphB%L4nt6%f~qoyIV00o#~WRj9G00WC-;","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":37348,"triangles":698,"vertices":2094,"meshes":5,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1.7702256441116333,-0.0000901860086199302,-0.4815109627441931],"max":[1.7702256441116333,0.7198630049955459,0.4815109627441931]},"sizeMeters":[3.54,0.72,0.963],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:25.522Z","updatedAt":"2026-09-06T06:02:25.662Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3825/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HollowRottingLogTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3825/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3825/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3825/v1/model.glb\" alt=\"Hollow rotting log (Temperate Forest Ecology)\" 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/3825/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/3825/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3826","slug":"temperate-forest-ecology-windthrow-root-plate-d7cab9e8","title":"Upturned root plate (Temperate Forest Ecology)","summary":"Free-standing root plate torn vertical by windthrow: a soil disc laced with thirteen broken roots above a shallow pit rim. 4.72 x 4.04 x 5.43 m.","description":"Free-standing root plate torn vertical by windthrow: a soil disc laced with thirteen broken roots above a shallow pit rim. 4.72 x 4.04 x 5.43 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-windthrow-root-plate-d7cab9e8","cdnUrl":"https://cdn.3dassets.dev/assets/3826/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-windthrow-root-plate-d7cab9e8","thumbnailUrl":"https://cdn.3dassets.dev/assets/3826/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3826/v1/poster.webp","blurhash":"U38|qwxr00M~01S5-;sS00M|~Vxt^*jEWBtQ","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":21344,"triangles":407,"vertices":1221,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.362284842731351,0.0000779388348686183,-2.7149205207824707],"max":[2.362284842731351,4.035339617927827,2.7149205207824707]},"sizeMeters":[4.725,4.035,5.43],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:25.545Z","updatedAt":"2026-09-06T06:02:25.775Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3826/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function UpturnedRootPlateTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3826/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3826/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3826/v1/model.glb\" alt=\"Upturned root plate (Temperate Forest Ecology)\" 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/3826/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/3826/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3827","slug":"temperate-forest-ecology-nurse-log-with-seedlings-98f3e95f","title":"Nurse log with seedlings (Temperate Forest Ecology)","summary":"Moss-covered fallen log carrying three spruce seedlings rooted along its crown, regeneration on decaying wood. 4.65 x 1.27 x 0.98 m.","description":"Moss-covered fallen log carrying three spruce seedlings rooted along its crown, regeneration on decaying wood. 4.65 x 1.27 x 0.98 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-nurse-log-with-seedlings-98f3e95f","cdnUrl":"https://cdn.3dassets.dev/assets/3827/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-nurse-log-with-seedlings-98f3e95f","thumbnailUrl":"https://cdn.3dassets.dev/assets/3827/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3827/v1/poster.webp","blurhash":"U5AAjq_400SzD*~p-qD%0000_M%2?G0000?u","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":69268,"triangles":1321,"vertices":3963,"meshes":8,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-2.323479175567627,-0.0000428792962252067,-0.49010200994104314],"max":[2.323479175567627,1.2745988368988037,0.49010200994104314]},"sizeMeters":[4.647,1.275,0.98],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:25.907Z","updatedAt":"2026-09-06T06:02:26.059Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3827/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function NurseLogWithSeedlingsTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3827/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3827/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3827/v1/model.glb\" alt=\"Nurse log with seedlings (Temperate Forest Ecology)\" 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/3827/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/3827/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3828","slug":"temperate-forest-ecology-log-pile-cord-00e53fec","title":"Stacked cordwood pile (Temperate Forest Ecology)","summary":"Four-by-four stack of two-metre roundwood held between four driven stakes; a forestry ride-side timber pile. 1.57 x 1.18 x 2.14 m.","description":"Four-by-four stack of two-metre roundwood held between four driven stakes; a forestry ride-side timber pile. 1.57 x 1.18 x 2.14 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-log-pile-cord-00e53fec","cdnUrl":"https://cdn.3dassets.dev/assets/3828/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-log-pile-cord-00e53fec","thumbnailUrl":"https://cdn.3dassets.dev/assets/3828/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3828/v1/poster.webp","blurhash":"U4E{a]~q00IB~W009G_200D%DiV@4n_4oH%N","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":29356,"triangles":576,"vertices":1728,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.7826898217839717,-0.000051158613676549614,-1.0700000524520874],"max":[0.7826771873110007,1.177720409895033,1.0700000524520874]},"sizeMeters":[1.565,1.178,2.14],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:26.886Z","updatedAt":"2026-09-06T06:02:27.044Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3828/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StackedCordwoodPileTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3828/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3828/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3828/v1/model.glb\" alt=\"Stacked cordwood pile (Temperate Forest Ecology)\" 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/3828/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/3828/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3829","slug":"temperate-forest-ecology-sawn-log-stack-large-94f4f113","title":"Large sawlog stack (Temperate Forest Ecology)","summary":"Nine large sawlogs stacked three-two-three-one against a landing bank, with visible pale end grain. 3.40 x 2.37 x 4.82 m.","description":"Nine large sawlogs stacked three-two-three-one against a landing bank, with visible pale end grain. 3.40 x 2.37 x 4.82 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-sawn-log-stack-large-94f4f113","cdnUrl":"https://cdn.3dassets.dev/assets/3829/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-sawn-log-stack-large-94f4f113","thumbnailUrl":"https://cdn.3dassets.dev/assets/3829/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3829/v1/poster.webp","blurhash":"U5ECn8?b00xaWF00M{?u00D%-qM|jE~p-:t5","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":22924,"triangles":440,"vertices":1320,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.7014680079160567,0.00007277151763163126,-2.4100000858306885],"max":[1.7014680079160567,2.371580785306099,2.4100000858306885]},"sizeMeters":[3.403,2.372,4.82],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:26.952Z","updatedAt":"2026-09-06T06:02:27.081Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3829/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LargeSawlogStackTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3829/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3829/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3829/v1/model.glb\" alt=\"Large sawlog stack (Temperate Forest Ecology)\" 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/3829/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/3829/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3830","slug":"temperate-forest-ecology-brash-pile-508725b3","title":"Brash pile (Temperate Forest Ecology)","summary":"Low heap of thirty lopped branches with side twigs from thinning work, about two and a half metres across and knee high. 2.39 x 0.87 x 2.60 m.","description":"Low heap of thirty lopped branches with side twigs from thinning work, about two and a half metres across and knee high. 2.39 x 0.87 x 2.60 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-brash-pile-508725b3","cdnUrl":"https://cdn.3dassets.dev/assets/3830/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-brash-pile-508725b3","thumbnailUrl":"https://cdn.3dassets.dev/assets/3830/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3830/v1/poster.webp","blurhash":"U9A0,g-:00M|bFaxRkWC00IU~poyoMofxts.","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":34152,"triangles":690,"vertices":2070,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-1.1952626003745959,-0.0000688277491244782,-1.298278570175171],"max":[1.1952626003745959,0.8685142837771092,1.298278570175171]},"sizeMeters":[2.391,0.869,2.597],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:27.097Z","updatedAt":"2026-09-06T06:02:27.227Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3830/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BrashPileTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3830/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3830/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3830/v1/model.glb\" alt=\"Brash pile (Temperate Forest Ecology)\" 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/3830/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/3830/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3831","slug":"temperate-forest-ecology-branch-scatter-564ee677","title":"Fallen branch scatter (Temperate Forest Ecology)","summary":"Nine loose fallen branches lying on a litter patch, ground clutter for paths, clearings and camp sites. 2.63 x 0.16 x 2.83 m.","description":"Nine loose fallen branches lying on a litter patch, ground clutter for paths, clearings and camp sites. 2.63 x 0.16 x 2.83 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-branch-scatter-564ee677","cdnUrl":"https://cdn.3dassets.dev/assets/3831/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-branch-scatter-564ee677","thumbnailUrl":"https://cdn.3dassets.dev/assets/3831/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3831/v1/poster.webp","blurhash":"UAA0m:t701t6WCWBoLt700NG~VWCt6t7WURP","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":18160,"triangles":341,"vertices":1023,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.3148513753104116,0.00006770809463356106,-1.4151569604873657],"max":[1.3148513753104116,0.16215166812032727,1.4151569604873657]},"sizeMeters":[2.63,0.162,2.83],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:27.359Z","updatedAt":"2026-09-06T06:02:27.475Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3831/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FallenBranchScatterTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3831/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3831/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3831/v1/model.glb\" alt=\"Fallen branch scatter (Temperate Forest Ecology)\" 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/3831/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/3831/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3832","slug":"temperate-forest-ecology-bark-slab-fallen-7ad1cf01","title":"Shed bark slabs (Temperate Forest Ecology)","summary":"Six curved bark plates shed from a dead conifer, lying overlapped on the ground beneath the stem. 1.05 x 0.21 x 1.37 m.","description":"Six curved bark plates shed from a dead conifer, lying overlapped on the ground beneath the stem. 1.05 x 0.21 x 1.37 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-bark-slab-fallen-7ad1cf01","cdnUrl":"https://cdn.3dassets.dev/assets/3832/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-bark-slab-fallen-7ad1cf01","thumbnailUrl":"https://cdn.3dassets.dev/assets/3832/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3832/v1/poster.webp","blurhash":"UCA0XSS201s:%2R*NGs:01n*~UW:9txa%2NG","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":6836,"triangles":120,"vertices":360,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.5257992918764874,0.000022074173044825396,-0.6858897805213928],"max":[0.5257992918764874,0.20566132109348806,0.6858897805213928]},"sizeMeters":[1.052,0.206,1.372],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:29.162Z","updatedAt":"2026-09-06T06:02:29.537Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3832/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShedBarkSlabsTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3832/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3832/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3832/v1/model.glb\" alt=\"Shed bark slabs (Temperate Forest Ecology)\" 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/3832/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/3832/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3833","slug":"temperate-forest-ecology-hawthorn-scrub-4ad407ec","title":"Wind-shaped hawthorn (Temperate Forest Ecology)","summary":"Thorny hawthorn with twenty-two twisted stems and a dense flat-topped crown pruned by exposure. 3.98 x 4.24 x 3.92 m.","description":"Thorny hawthorn with twenty-two twisted stems and a dense flat-topped crown pruned by exposure. 3.98 x 4.24 x 3.92 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-hawthorn-scrub-4ad407ec","cdnUrl":"https://cdn.3dassets.dev/assets/3833/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-hawthorn-scrub-4ad407ec","thumbnailUrl":"https://cdn.3dassets.dev/assets/3833/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3833/v1/poster.webp","blurhash":"U87U@gxu00Io.kt7MLRj8yj]%yjEMLaftjjG","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":138024,"triangles":2838,"vertices":8514,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.9892852306365967,0,-1.9584445403944815],"max":[1.9892852306365967,4.2443069918757335,1.9584445403944815]},"sizeMeters":[3.979,4.244,3.917],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:29.010Z","updatedAt":"2026-09-06T06:02:29.554Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3833/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WindShapedHawthornTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3833/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3833/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3833/v1/model.glb\" alt=\"Wind-shaped hawthorn (Temperate Forest Ecology)\" 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/3833/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/3833/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3834","slug":"temperate-forest-ecology-blackthorn-thicket-f2de45c5","title":"Blackthorn thicket (Temperate Forest Ecology)","summary":"Impenetrable suckering blackthorn: thirty near-vertical dark stems with thorn spurs and a low even top. 4.76 x 3.30 x 4.60 m.","description":"Impenetrable suckering blackthorn: thirty near-vertical dark stems with thorn spurs and a low even top. 4.76 x 3.30 x 4.60 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-blackthorn-thicket-f2de45c5","cdnUrl":"https://cdn.3dassets.dev/assets/3834/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-blackthorn-thicket-f2de45c5","thumbnailUrl":"https://cdn.3dassets.dev/assets/3834/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3834/v1/poster.webp","blurhash":"U67xdYtQ00WB.jWBVaoz00R6?]tQD6a{X%n,","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":187588,"triangles":3870,"vertices":11610,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.3812074661254883,0.0001104654717039022,-2.3006881060233413],"max":[2.3812074661254883,3.30433374724819,2.3006881060233413]},"sizeMeters":[4.762,3.304,4.601],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:29.082Z","updatedAt":"2026-09-06T06:02:29.648Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3834/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BlackthornThicketTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3834/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3834/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3834/v1/model.glb\" alt=\"Blackthorn thicket (Temperate Forest Ecology)\" 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/3834/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/3834/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3835","slug":"temperate-forest-ecology-blackthorn-in-blossom-a30caea4","title":"Blackthorn in blossom (Temperate Forest Ecology)","summary":"Leafless March form of the blackthorn thicket: bare dark stems carrying thirty white blossom masses. 4.11 x 3.03 x 3.85 m.","description":"Leafless March form of the blackthorn thicket: bare dark stems carrying thirty white blossom masses. 4.11 x 3.03 x 3.85 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-blackthorn-in-blossom-a30caea4","cdnUrl":"https://cdn.3dassets.dev/assets/3835/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-blackthorn-in-blossom-a30caea4","thumbnailUrl":"https://cdn.3dassets.dev/assets/3835/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3835/v1/poster.webp","blurhash":"UFCi~;of00Rk~qofD%WB00ay?bj[00WB-;of","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":124240,"triangles":2550,"vertices":7650,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.057474136352539,0.0001182178154810476,-1.9226422309875488],"max":[2.057474136352539,3.0276881962124182,1.9226422309875488]},"sizeMeters":[4.115,3.028,3.845],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:29.125Z","updatedAt":"2026-09-06T06:02:29.991Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3835/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BlackthornInBlossomTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3835/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3835/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3835/v1/model.glb\" alt=\"Blackthorn in blossom (Temperate Forest Ecology)\" 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/3835/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/3835/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3837","slug":"temperate-forest-ecology-bramble-thicket-0b0dfc8c","title":"Bramble thicket (Temperate Forest Ecology)","summary":"Arching bramble mound of twenty-six rooting canes with a rough leafy surface; blocks access at knee to chest height. 3.44 x 2.14 x 3.30 m.","description":"Arching bramble mound of twenty-six rooting canes with a rough leafy surface; blocks access at knee to chest height. 3.44 x 2.14 x 3.30 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-bramble-thicket-0b0dfc8c","cdnUrl":"https://cdn.3dassets.dev/assets/3837/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-bramble-thicket-0b0dfc8c","thumbnailUrl":"https://cdn.3dassets.dev/assets/3837/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3837/v1/poster.webp","blurhash":"U98q_~t700oy%fafMyoy00Rj?[jtIBbYx[V[","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":162800,"triangles":3354,"vertices":10062,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.7210346460342407,-0.00005719341706256209,-1.6512835546943723],"max":[1.7210346460342407,2.1428394047207737,1.6512835546943723]},"sizeMeters":[3.442,2.143,3.303],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:31.037Z","updatedAt":"2026-09-06T06:02:31.077Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3837/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BrambleThicketTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3837/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3837/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3837/v1/model.glb\" alt=\"Bramble thicket (Temperate Forest Ecology)\" 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/3837/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/3837/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3836","slug":"temperate-forest-ecology-dog-rose-shrub-baf4d436","title":"Dog rose shrub (Temperate Forest Ecology)","summary":"Scrambling dog rose with thirteen arching prickly canes and nine pale pink flower heads. 2.22 x 3.16 x 2.77 m.","description":"Scrambling dog rose with thirteen arching prickly canes and nine pale pink flower heads. 2.22 x 3.16 x 2.77 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-dog-rose-shrub-baf4d436","cdnUrl":"https://cdn.3dassets.dev/assets/3836/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-dog-rose-shrub-baf4d436","thumbnailUrl":"https://cdn.3dassets.dev/assets/3836/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3836/v1/poster.webp","blurhash":"U89Q$?t600Rk-:oeRjWD00fl_LWB4VRk-:t6","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":98784,"triangles":2005,"vertices":6015,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1.1087603278019955,0,-1.383132815361023],"max":[1.1087603278019955,3.1572368144989014,1.383132815361023]},"sizeMeters":[2.218,3.157,2.766],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:30.948Z","updatedAt":"2026-09-06T06:02:31.054Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3836/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DogRoseShrubTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3836/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3836/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3836/v1/model.glb\" alt=\"Dog rose shrub (Temperate Forest Ecology)\" 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/3836/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/3836/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3838","slug":"temperate-forest-ecology-gorse-bush-65a81e1f","title":"Gorse bush (Temperate Forest Ecology)","summary":"Spiny gorse dome of thirty stems with dark green shoots and scattered yellow flower clusters. 2.36 x 1.94 x 2.28 m.","description":"Spiny gorse dome of thirty stems with dark green shoots and scattered yellow flower clusters. 2.36 x 1.94 x 2.28 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-gorse-bush-65a81e1f","cdnUrl":"https://cdn.3dassets.dev/assets/3838/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-gorse-bush-65a81e1f","thumbnailUrl":"https://cdn.3dassets.dev/assets/3838/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3838/v1/poster.webp","blurhash":"U57285xt00Io.5jaIXV[00RR?[oM8zoe%dkV","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":74480,"triangles":1500,"vertices":4500,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1.1788119077682495,-4.4825632439238206e-7,-1.1390948648233308],"max":[1.1788119077682495,1.9417982096729103,1.1390948648233308]},"sizeMeters":[2.358,1.942,2.278],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:31.192Z","updatedAt":"2026-09-06T06:02:32.123Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3838/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GorseBushTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3838/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3838/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3838/v1/model.glb\" alt=\"Gorse bush (Temperate Forest Ecology)\" 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/3838/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/3838/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3839","slug":"temperate-forest-ecology-dogwood-thicket-71bc6fb3","title":"Red-stemmed dogwood thicket (Temperate Forest Ecology)","summary":"Winter-red dogwood: twenty-four straight rust-coloured stems in a tight clump with sparse foliage. 2.82 x 2.69 x 2.73 m.","description":"Winter-red dogwood: twenty-four straight rust-coloured stems in a tight clump with sparse foliage. 2.82 x 2.69 x 2.73 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-dogwood-thicket-71bc6fb3","cdnUrl":"https://cdn.3dassets.dev/assets/3839/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-dogwood-thicket-71bc6fb3","thumbnailUrl":"https://cdn.3dassets.dev/assets/3839/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3839/v1/poster.webp","blurhash":"UCB3[-WF01Rj_LjcR6Rk02of?ZRk8{f#o|jG","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":145840,"triangles":3000,"vertices":9000,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.4094582796096802,0,-1.366959888537737],"max":[1.4094582796096802,2.686387126956267,1.366959888537737]},"sizeMeters":[2.819,2.686,2.734],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:31.403Z","updatedAt":"2026-09-06T06:02:31.488Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3839/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RedStemmedDogwoodThicketTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3839/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3839/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3839/v1/model.glb\" alt=\"Red-stemmed dogwood thicket (Temperate Forest Ecology)\" 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/3839/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/3839/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3840","slug":"temperate-forest-ecology-rhododendron-clump-cc7dbb0b","title":"Rhododendron clump (Temperate Forest Ecology)","summary":"Dense evergreen rhododendron with sixteen sinuous stems, heavy dark foliage and eight purple-pink flower trusses. 6.42 x 4.09 x 5.03 m.","description":"Dense evergreen rhododendron with sixteen sinuous stems, heavy dark foliage and eight purple-pink flower trusses. 6.42 x 4.09 x 5.03 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-rhododendron-clump-cc7dbb0b","cdnUrl":"https://cdn.3dassets.dev/assets/3840/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-rhododendron-clump-cc7dbb0b","thumbnailUrl":"https://cdn.3dassets.dev/assets/3840/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3840/v1/poster.webp","blurhash":"U67ekdxu00cCyVkpi|s:00Rj?[nQHZR6W:N@","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":112392,"triangles":2288,"vertices":6864,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-3.2108874320983887,0.00006169143127499055,-2.5159317245743016],"max":[3.2108874320983887,4.085476333002864,2.5159317245743016]},"sizeMeters":[6.422,4.085,5.032],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:32.486Z","updatedAt":"2026-09-06T06:02:32.524Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3840/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RhododendronClumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3840/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3840/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3840/v1/model.glb\" alt=\"Rhododendron clump (Temperate Forest Ecology)\" 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/3840/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/3840/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3841","slug":"temperate-forest-ecology-bilberry-mound-ecaa338c","title":"Bilberry mound (Temperate Forest Ecology)","summary":"Low bilberry cushion of twenty-six green wiry stems, the characteristic acid-woodland field layer. 1.33 x 0.52 x 1.36 m.","description":"Low bilberry cushion of twenty-six green wiry stems, the characteristic acid-woodland field layer. 1.33 x 0.52 x 1.36 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-bilberry-mound-ecaa338c","cdnUrl":"https://cdn.3dassets.dev/assets/3841/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-bilberry-mound-ecaa338c","thumbnailUrl":"https://cdn.3dassets.dev/assets/3841/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3841/v1/poster.webp","blurhash":"UC9ac@V[01k9xtofRkWA00oy_LafICRjx@t7","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":51904,"triangles":1044,"vertices":3132,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6656775993576426,0.000007028937354325304,-0.681313693523407],"max":[0.6656775993576426,0.5193853015495349,0.681313693523407]},"sizeMeters":[1.331,0.519,1.363],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:32.535Z","updatedAt":"2026-09-06T06:02:32.588Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3841/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BilberryMoundTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3841/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3841/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3841/v1/model.glb\" alt=\"Bilberry mound (Temperate Forest Ecology)\" 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/3841/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/3841/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3842","slug":"temperate-forest-ecology-heather-clump-d5cb5570","title":"Heather clump (Temperate Forest Ecology)","summary":"Woody heather clump with thirty fine upright stems and small purple flower spikes at the tips. 1.05 x 0.51 x 1.20 m.","description":"Woody heather clump with thirty fine upright stems and small purple flower spikes at the tips. 1.05 x 0.51 x 1.20 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-heather-clump-d5cb5570","cdnUrl":"https://cdn.3dassets.dev/assets/3842/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-heather-clump-d5cb5570","thumbnailUrl":"https://cdn.3dassets.dev/assets/3842/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3842/v1/poster.webp","blurhash":"U56uX{x[00kW%fR%IUs;00R6_Mj[9F%2-;Io","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":74528,"triangles":1500,"vertices":4500,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.5242052101821892,-0.00001618913640163977,-0.5978431701660156],"max":[0.5242052101821892,0.5119696538294516,0.5978431701660156]},"sizeMeters":[1.048,0.512,1.196],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:32.800Z","updatedAt":"2026-09-06T06:02:32.907Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3842/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HeatherClumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3842/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3842/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3842/v1/model.glb\" alt=\"Heather clump (Temperate Forest Ecology)\" 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/3842/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/3842/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3843","slug":"temperate-forest-ecology-ivy-clad-stem-28ae1e59","title":"Ivy-clad standing stem (Temperate Forest Ecology)","summary":"Dead stem completely sheathed in ivy: ninety overlapping leaf plates and five visible climbing stems. 1.05 x 6.97 x 1.12 m.","description":"Dead stem completely sheathed in ivy: ninety overlapping leaf plates and five visible climbing stems. 1.05 x 6.97 x 1.12 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-ivy-clad-stem-28ae1e59","cdnUrl":"https://cdn.3dassets.dev/assets/3843/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-ivy-clad-stem-28ae1e59","thumbnailUrl":"https://cdn.3dassets.dev/assets/3843/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3843/v1/poster.webp","blurhash":"U16[Ba?u0000#an,OkSJ00M{~q?H56Ri=|%N","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":63716,"triangles":1275,"vertices":3825,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.5252612151891547,0,-0.5594090513481875],"max":[0.5252257641402025,6.966684341430664,0.5594090513481875]},"sizeMeters":[1.05,6.967,1.119],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:33.394Z","updatedAt":"2026-09-06T06:02:33.584Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3843/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function IvyCladStandingStemTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3843/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3843/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3843/v1/model.glb\" alt=\"Ivy-clad standing stem (Temperate Forest Ecology)\" 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/3843/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/3843/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3844","slug":"temperate-forest-ecology-bracken-clump-15ed29ef","title":"Bracken clump (Temperate Forest Ecology)","summary":"Nine bracken fronds on long stipes forming a waist-high shuttlecock, the dominant fern of acid clearings. 1.32 x 1.31 x 1.02 m.","description":"Nine bracken fronds on long stipes forming a waist-high shuttlecock, the dominant fern of acid clearings. 1.32 x 1.31 x 1.02 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-bracken-clump-15ed29ef","cdnUrl":"https://cdn.3dassets.dev/assets/3844/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-bracken-clump-15ed29ef","thumbnailUrl":"https://cdn.3dassets.dev/assets/3844/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3844/v1/poster.webp","blurhash":"U99%#1ob00N2~nj=9Ha$02of_0Rj02t7?ZM{","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":156184,"triangles":3232,"vertices":9696,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.6605736613273621,0.00000232706959968354,-0.5106659570630027],"max":[0.6605736613273621,1.310344037905376,0.5106659570630027]},"sizeMeters":[1.321,1.31,1.021],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:33.958Z","updatedAt":"2026-09-06T06:02:34.024Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3844/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BrackenClumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3844/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3844/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3844/v1/model.glb\" alt=\"Bracken clump (Temperate Forest Ecology)\" 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/3844/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/3844/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3845","slug":"temperate-forest-ecology-male-fern-clump-81113304","title":"Male fern clump (Temperate Forest Ecology)","summary":"Twelve arching fronds in a tight shuttlecock about eighty centimetres high, for damp shaded banks. 0.95 x 0.74 x 0.96 m.","description":"Twelve arching fronds in a tight shuttlecock about eighty centimetres high, for damp shaded banks. 0.95 x 0.74 x 0.96 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-male-fern-clump-81113304","cdnUrl":"https://cdn.3dassets.dev/assets/3845/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-male-fern-clump-81113304","thumbnailUrl":"https://cdn.3dassets.dev/assets/3845/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3845/v1/poster.webp","blurhash":"U88X%bx[00R7?[fRIBoy00My?[kV00WB.7Rk","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":179620,"triangles":3720,"vertices":11160,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.4739058721419143,-0.000016508860376629464,-0.48077258467674255],"max":[0.4739058721419143,0.7383898480365546,0.48077258467674255]},"sizeMeters":[0.948,0.738,0.962],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:33.902Z","updatedAt":"2026-09-06T06:02:34.087Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3845/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MaleFernClumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3845/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3845/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3845/v1/model.glb\" alt=\"Male fern clump (Temperate Forest Ecology)\" 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/3845/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/3845/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3846","slug":"temperate-forest-ecology-hart-tongue-fern-clump-e3c6570b","title":"Hart's tongue fern clump (Temperate Forest Ecology)","summary":"Eleven undivided strap leaves in a shining rosette; the ferns of limestone banks and shaded gullies. 0.95 x 0.35 x 0.88 m.","description":"Eleven undivided strap leaves in a shining rosette; the ferns of limestone banks and shaded gullies. 0.95 x 0.35 x 0.88 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-hart-tongue-fern-clump-e3c6570b","cdnUrl":"https://cdn.3dassets.dev/assets/3846/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-hart-tongue-fern-clump-e3c6570b","thumbnailUrl":"https://cdn.3dassets.dev/assets/3846/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3846/v1/poster.webp","blurhash":"U65O~Fxu4TM{%zofIBRj4TV@.ko38xRk%zt6","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":11672,"triangles":220,"vertices":660,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.47587284445762634,-0.000011194517924806302,-0.43979788655385904],"max":[0.47587284445762634,0.3497300036457324,0.43979788655385904]},"sizeMeters":[0.952,0.35,0.88],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:34.242Z","updatedAt":"2026-09-06T06:02:34.351Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3846/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HartSTongueFernClumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3846/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3846/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3846/v1/model.glb\" alt=\"Hart's tongue fern clump (Temperate Forest Ecology)\" 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/3846/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/3846/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3847","slug":"temperate-forest-ecology-tufted-hair-grass-7d62ee65","title":"Tufted hair grass (Temperate Forest Ecology)","summary":"Dense tussock of forty-six blades with fourteen tall flowering stems above; a metre-high wet-woodland grass. 0.75 x 1.14 x 0.72 m.","description":"Dense tussock of forty-six blades with fourteen tall flowering stems above; a metre-high wet-woodland grass. 0.75 x 1.14 x 0.72 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-tufted-hair-grass-7d62ee65","cdnUrl":"https://cdn.3dassets.dev/assets/3847/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-tufted-hair-grass-7d62ee65","thumbnailUrl":"https://cdn.3dassets.dev/assets/3847/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3847/v1/poster.webp","blurhash":"U6A,%Zt700NE^kogEKV?01j=~oa$0KWA^+t7","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":37908,"triangles":752,"vertices":2256,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.37302452325820923,0.000009265550852677329,-0.3619455555822537],"max":[0.37302452325820923,1.1429846286773682,0.3619363454886234]},"sizeMeters":[0.746,1.143,0.724],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:35.000Z","updatedAt":"2026-09-06T06:02:35.084Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3847/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TuftedHairGrassTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3847/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3847/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3847/v1/model.glb\" alt=\"Tufted hair grass (Temperate Forest Ecology)\" 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/3847/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/3847/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3848","slug":"temperate-forest-ecology-wood-sedge-clump-9f0b2abd","title":"Wood sedge clump (Temperate Forest Ecology)","summary":"Lax sedge clump of thirty-two broad arching blades that fall well outside the crown; for shaded ride edges. 0.90 x 0.56 x 1.27 m.","description":"Lax sedge clump of thirty-two broad arching blades that fall well outside the crown; for shaded ride edges. 0.90 x 0.56 x 1.27 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-wood-sedge-clump-9f0b2abd","cdnUrl":"https://cdn.3dassets.dev/assets/3848/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-wood-sedge-clump-9f0b2abd","thumbnailUrl":"https://cdn.3dassets.dev/assets/3848/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3848/v1/poster.webp","blurhash":"U77BM%x[00IB-:j?IUf901My_K.6D%Rk%Mxt","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":24124,"triangles":480,"vertices":1440,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.4519449156168219,-0.00001480754859484179,-0.6341046094894409],"max":[0.4519449156168219,0.5582883017922167,0.6341046094894409]},"sizeMeters":[0.904,0.558,1.268],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:35.334Z","updatedAt":"2026-09-06T06:02:35.462Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3848/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WoodSedgeClumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3848/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3848/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3848/v1/model.glb\" alt=\"Wood sedge clump (Temperate Forest Ecology)\" 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/3848/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/3848/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3849","slug":"temperate-forest-ecology-purple-moor-grass-tussock-56681188","title":"Purple moor grass tussock (Temperate Forest Ecology)","summary":"Tall stiff tussock of fifty-four upright straw-coloured blades on a raised litter base, typical of wet flushes. 0.86 x 1.01 x 0.79 m.","description":"Tall stiff tussock of fifty-four upright straw-coloured blades on a raised litter base, typical of wet flushes. 0.86 x 1.01 x 0.79 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-purple-moor-grass-tussock-56681188","cdnUrl":"https://cdn.3dassets.dev/assets/3849/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-purple-moor-grass-tussock-56681188","thumbnailUrl":"https://cdn.3dassets.dev/assets/3849/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3849/v1/poster.webp","blurhash":"U7A^8m_200000MRk={ow00M{~p-:?Gs.NGj]","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":39268,"triangles":779,"vertices":2337,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.4296035119544548,0,-0.39516104437679367],"max":[0.42960991523858627,1.0058956146240234,0.3951204717159271]},"sizeMeters":[0.859,1.006,0.79],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:35.380Z","updatedAt":"2026-09-06T06:02:35.526Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3849/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PurpleMoorGrassTussockTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3849/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3849/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3849/v1/model.glb\" alt=\"Purple moor grass tussock (Temperate Forest Ecology)\" 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/3849/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/3849/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3850","slug":"temperate-forest-ecology-dry-grass-tussock-e2e47ba1","title":"Dry grass tussock (Temperate Forest Ecology)","summary":"Collapsed straw-coloured grass tuft spilling outward, for path verges, clearings and late-season ground. 0.97 x 0.47 x 1.08 m.","description":"Collapsed straw-coloured grass tuft spilling outward, for path verges, clearings and late-season ground. 0.97 x 0.47 x 1.08 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-dry-grass-tussock-e2e47ba1","cdnUrl":"https://cdn.3dassets.dev/assets/3850/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-dry-grass-tussock-e2e47ba1","thumbnailUrl":"https://cdn.3dassets.dev/assets/3850/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3850/v1/poster.webp","blurhash":"UDAJ=wax00oft7WVRjof00az~ooeR%oLt7WU","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":27176,"triangles":544,"vertices":1632,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.48360333823013896,-0.000008765685495376596,-0.5395931005477905],"max":[0.48360333823013896,0.4675716199755039,0.5395931005477905]},"sizeMeters":[0.967,0.468,1.079],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:35.925Z","updatedAt":"2026-09-06T06:02:36.809Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3850/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DryGrassTussockTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3850/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3850/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3850/v1/model.glb\" alt=\"Dry grass tussock (Temperate Forest Ecology)\" 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/3850/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/3850/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3851","slug":"temperate-forest-ecology-nettle-patch-ec1d9121","title":"Nettle patch (Temperate Forest Ecology)","summary":"Sixteen nettle stems with opposite paired leaves in a chest-high patch, marking nutrient-rich disturbed ground. 1.30 x 1.39 x 1.33 m.","description":"Sixteen nettle stems with opposite paired leaves in a chest-high patch, marking nutrient-rich disturbed ground. 1.30 x 1.39 x 1.33 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-nettle-patch-ec1d9121","cdnUrl":"https://cdn.3dassets.dev/assets/3851/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-nettle-patch-ec1d9121","thumbnailUrl":"https://cdn.3dassets.dev/assets/3851/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3851/v1/poster.webp","blurhash":"U78hXNx@00M$s;bFIUV]00RQ?[oyyCoLs:W.","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":84732,"triangles":1728,"vertices":5184,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.650441487873354,0,-0.6674709916114807],"max":[0.650441487873354,1.3948298692703247,0.6674709916114807]},"sizeMeters":[1.301,1.395,1.335],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:36.568Z","updatedAt":"2026-09-06T06:02:36.637Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3851/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function NettlePatchTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3851/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3851/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3851/v1/model.glb\" alt=\"Nettle patch (Temperate Forest Ecology)\" 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/3851/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/3851/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3852","slug":"temperate-forest-ecology-dogs-mercury-carpet-d9832b59","title":"Dog's mercury carpet (Temperate Forest Ecology)","summary":"Low even sward of twenty-six short leafy shoots covering 1.7 m of shaded woodland floor. 1.47 x 0.37 x 1.67 m.","description":"Low even sward of twenty-six short leafy shoots covering 1.7 m of shaded woodland floor. 1.47 x 0.37 x 1.67 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-dogs-mercury-carpet-d9832b59","cdnUrl":"https://cdn.3dassets.dev/assets/3852/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-dogs-mercury-carpet-d9832b59","thumbnailUrl":"https://cdn.3dassets.dev/assets/3852/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3852/v1/poster.webp","blurhash":"U76+C6WV00eVbGbFofaf00oy?[baV@jbWBkB","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":178088,"triangles":3672,"vertices":11016,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.7341137192933042,-0.000003744604462618817,-0.8367726802825928],"max":[0.7341137192933042,0.37227739835011386,0.8367726802825928]},"sizeMeters":[1.468,0.372,1.674],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:36.945Z","updatedAt":"2026-09-06T06:02:37.962Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3852/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DogSMercuryCarpetTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3852/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3852/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3852/v1/model.glb\" alt=\"Dog's mercury carpet (Temperate Forest Ecology)\" 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/3852/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/3852/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3853","slug":"temperate-forest-ecology-bluebell-carpet-89700229","title":"Bluebell carpet (Temperate Forest Ecology)","summary":"Strap-leaved bluebell patch with nodding bell-shaped flower heads on 1.8 m of leaf litter. 1.88 x 0.48 x 1.67 m.","description":"Strap-leaved bluebell patch with nodding bell-shaped flower heads on 1.8 m of leaf litter. 1.88 x 0.48 x 1.67 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-bluebell-carpet-89700229","cdnUrl":"https://cdn.3dassets.dev/assets/3853/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-bluebell-carpet-89700229","thumbnailUrl":"https://cdn.3dassets.dev/assets/3853/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3853/v1/poster.webp","blurhash":"U88qya%L00WUb]WDo0oy00Io_MkCm,s,R-RQ","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":136420,"triangles":2789,"vertices":8367,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.9421049952507019,0.000014311997443606367,-0.8356089198575136],"max":[0.9421049952507019,0.4754204070000577,0.8356089198575136]},"sizeMeters":[1.884,0.475,1.671],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:36.894Z","updatedAt":"2026-09-06T06:02:36.975Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3853/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BluebellCarpetTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3853/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3853/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3853/v1/model.glb\" alt=\"Bluebell carpet (Temperate Forest Ecology)\" 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/3853/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/3853/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3854","slug":"temperate-forest-ecology-wood-anemone-carpet-b59e5c2d","title":"Wood anemone carpet (Temperate Forest Ecology)","summary":"Early-spring anemone sheet: divided low leaves and flat open white flowers barely above the litter. 1.44 x 0.27 x 1.53 m.","description":"Early-spring anemone sheet: divided low leaves and flat open white flowers barely above the litter. 1.44 x 0.27 x 1.53 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-wood-anemone-carpet-b59e5c2d","cdnUrl":"https://cdn.3dassets.dev/assets/3854/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-wood-anemone-carpet-b59e5c2d","thumbnailUrl":"https://cdn.3dassets.dev/assets/3854/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3854/v1/poster.webp","blurhash":"UCAdAVxt00NIxukBRje=00M}~os,IAV]tSkS","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":87676,"triangles":1773,"vertices":5319,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.7176421069646298,-0.00002322152050503873,-0.7648888826370239],"max":[0.7176421069646298,0.2652790910298129,0.7648888826370239]},"sizeMeters":[1.435,0.265,1.53],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:38.013Z","updatedAt":"2026-09-06T06:02:38.105Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3854/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WoodAnemoneCarpetTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3854/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3854/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3854/v1/model.glb\" alt=\"Wood anemone carpet (Temperate Forest Ecology)\" 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/3854/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/3854/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3855","slug":"temperate-forest-ecology-wild-garlic-carpet-61792f89","title":"Wild garlic carpet (Temperate Forest Ecology)","summary":"Broad-leaved ramsons carpet with rounded white flower heads held above the foliage on 2 m of damp soil. 2.00 x 0.55 x 2.11 m.","description":"Broad-leaved ramsons carpet with rounded white flower heads held above the foliage on 2 m of damp soil. 2.00 x 0.55 x 2.11 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-wild-garlic-carpet-61792f89","cdnUrl":"https://cdn.3dassets.dev/assets/3855/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-wild-garlic-carpet-61792f89","thumbnailUrl":"https://cdn.3dassets.dev/assets/3855/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3855/v1/poster.webp","blurhash":"UA9tS,xt00oxx[ayM|oy00M|~pahDkazx[Rk","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":70772,"triangles":1421,"vertices":4263,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.9997504695812937,-0.000026683868770360775,-1.0573160648345947],"max":[0.9997504695812937,0.5471955677529651,1.0573160648345947]},"sizeMeters":[2,0.547,2.115],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:38.226Z","updatedAt":"2026-09-06T06:02:38.321Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3855/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WildGarlicCarpetTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3855/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3855/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3855/v1/model.glb\" alt=\"Wild garlic carpet (Temperate Forest Ecology)\" 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/3855/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/3855/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3856","slug":"temperate-forest-ecology-foxglove-group-2306d84d","title":"Foxglove group (Temperate Forest Ecology)","summary":"Three foxglove spires of different height carrying tubular flowers down one side, over a basal leaf rosette. 0.66 x 1.25 x 0.50 m.","description":"Three foxglove spires of different height carrying tubular flowers down one side, over a basal leaf rosette. 0.66 x 1.25 x 0.50 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-foxglove-group-2306d84d","cdnUrl":"https://cdn.3dassets.dev/assets/3856/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-foxglove-group-2306d84d","thumbnailUrl":"https://cdn.3dassets.dev/assets/3856/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3856/v1/poster.webp","blurhash":"U67^*?xu009ZrKspTWNY0JWB~DxaTCR%rw%3","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":55668,"triangles":1055,"vertices":3165,"meshes":7,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.33072000628086407,0,-0.25056004504062296],"max":[0.3307003711589609,1.2508519887924194,0.25055897054261467]},"sizeMeters":[0.661,1.251,0.501],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:38.270Z","updatedAt":"2026-09-06T06:02:38.391Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3856/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FoxgloveGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3856/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3856/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3856/v1/model.glb\" alt=\"Foxglove group (Temperate Forest Ecology)\" 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/3856/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/3856/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3857","slug":"temperate-forest-ecology-rosebay-willowherb-group-79db88cf","title":"Rosebay willowherb group (Temperate Forest Ecology)","summary":"Three tall slender fireweed stems with narrow pink flower spikes; a rapid coloniser of clearfell and burnt ground. 0.97 x 1.65 x 0.72 m.","description":"Three tall slender fireweed stems with narrow pink flower spikes; a rapid coloniser of clearfell and burnt ground. 0.97 x 1.65 x 0.72 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-rosebay-willowherb-group-79db88cf","cdnUrl":"https://cdn.3dassets.dev/assets/3857/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-rosebay-willowherb-group-79db88cf","thumbnailUrl":"https://cdn.3dassets.dev/assets/3857/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3857/v1/poster.webp","blurhash":"U78z#^xt00IV,^s;JzM{01aO~okkJzWBwPt6","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":106400,"triangles":2178,"vertices":6534,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.4830606943353086,0,-0.3616786653876112],"max":[0.4830606943353086,1.649999976158142,0.3616786653876112]},"sizeMeters":[0.966,1.65,0.723],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:39.349Z","updatedAt":"2026-09-06T06:02:39.421Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3857/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RosebayWillowherbGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3857/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3857/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3857/v1/model.glb\" alt=\"Rosebay willowherb group (Temperate Forest Ecology)\" 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/3857/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/3857/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3858","slug":"temperate-forest-ecology-cow-parsley-group-d32b8f86","title":"Cow parsley group (Temperate Forest Ecology)","summary":"Five hollow stems carrying flat lacy white umbels at about a metre, the standard ride-edge spring verge plant. 0.99 x 1.14 x 1.04 m.","description":"Five hollow stems carrying flat lacy white umbels at about a metre, the standard ride-edge spring verge plant. 0.99 x 1.14 x 1.04 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-cow-parsley-group-d32b8f86","cdnUrl":"https://cdn.3dassets.dev/assets/3858/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-cow-parsley-group-d32b8f86","thumbnailUrl":"https://cdn.3dassets.dev/assets/3858/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3858/v1/poster.webp","blurhash":"ULA,,wt700Rj~qj[9FoejbWBWUt79FWA%Mog","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":97096,"triangles":1985,"vertices":5955,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.4960094013056072,0,-0.5217405557632446],"max":[0.4960094013056072,1.1374633217052912,0.5217405557632446]},"sizeMeters":[0.992,1.137,1.043],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:39.451Z","updatedAt":"2026-09-06T06:02:39.530Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3858/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CowParsleyGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3858/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3858/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3858/v1/model.glb\" alt=\"Cow parsley group (Temperate Forest Ecology)\" 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/3858/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/3858/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3859","slug":"temperate-forest-ecology-moss-mound-98189798","title":"Moss mound (Temperate Forest Ecology)","summary":"Soft bryophyte hummock about 1.1 m across, with seven raised cushions of brighter moss on a darker base. 1.25 x 0.23 x 1.25 m.","description":"Soft bryophyte hummock about 1.1 m across, with seven raised cushions of brighter moss on a darker base. 1.25 x 0.23 x 1.25 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-moss-mound-98189798","cdnUrl":"https://cdn.3dassets.dev/assets/3859/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-moss-mound-98189798","thumbnailUrl":"https://cdn.3dassets.dev/assets/3859/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3859/v1/poster.webp","blurhash":"UEAA,9t601WAWBjuWqj?00V[_Loft7axoJbI","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":16956,"triangles":317,"vertices":951,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6248196363449097,0.00002212253303608691,-0.6245145393210284],"max":[0.6248196363449097,0.23006539615898053,0.6245145393210284]},"sizeMeters":[1.25,0.23,1.249],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:39.669Z","updatedAt":"2026-09-06T06:02:39.836Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3859/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MossMoundTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3859/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3859/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3859/v1/model.glb\" alt=\"Moss mound (Temperate Forest Ecology)\" 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/3859/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/3859/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3860","slug":"temperate-forest-ecology-leaf-litter-drift-ffe00467","title":"Leaf litter drift (Temperate Forest Ecology)","summary":"Wind-drifted leaf litter mound with twenty-six individual rust-coloured leaves visible on the surface. 2.18 x 0.15 x 2.16 m.","description":"Wind-drifted leaf litter mound with twenty-six individual rust-coloured leaves visible on the surface. 2.18 x 0.15 x 2.16 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-leaf-litter-drift-ffe00467","cdnUrl":"https://cdn.3dassets.dev/assets/3860/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-leaf-litter-drift-ffe00467","thumbnailUrl":"https://cdn.3dassets.dev/assets/3860/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3860/v1/poster.webp","blurhash":"UCA]$yoz01ixa}bHayjZ00WA~UoyoejGj[W;","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":18360,"triangles":345,"vertices":1035,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.088617205619812,0.000048972495955493245,-1.077802300453186],"max":[1.088617205619812,0.149951033464509,1.077802300453186]},"sizeMeters":[2.177,0.15,2.156],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:39.700Z","updatedAt":"2026-09-06T06:02:39.862Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3860/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LeafLitterDriftTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3860/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3860/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3860/v1/model.glb\" alt=\"Leaf litter drift (Temperate Forest Ecology)\" 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/3860/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/3860/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3861","slug":"temperate-forest-ecology-bare-soil-scrape-633fe043","title":"Bare soil scrape (Temperate Forest Ecology)","summary":"Rooted-over patch of bare earth with exposed stones and severed roots, for boar diggings and track scrapes. 1.73 x 0.13 x 1.66 m.","description":"Rooted-over patch of bare earth with exposed stones and severed roots, for boar diggings and track scrapes. 1.73 x 0.13 x 1.66 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-bare-soil-scrape-633fe043","cdnUrl":"https://cdn.3dassets.dev/assets/3861/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-bare-soil-scrape-633fe043","thumbnailUrl":"https://cdn.3dassets.dev/assets/3861/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3861/v1/poster.webp","blurhash":"U68D%@-:00E2Rjf7oMfP00IU~Vxt%3bGR%oM","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":20116,"triangles":367,"vertices":1101,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.8649812340736389,-0.0000445215881851313,-0.8289744466571393],"max":[0.8649812340736389,0.13004451681981355,0.8289744466571393]},"sizeMeters":[1.73,0.13,1.658],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:40.821Z","updatedAt":"2026-09-06T06:02:40.898Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3861/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BareSoilScrapeTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3861/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3861/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3861/v1/model.glb\" alt=\"Bare soil scrape (Temperate Forest Ecology)\" 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/3861/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/3861/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3862","slug":"temperate-forest-ecology-fly-agaric-group-b608df40","title":"Fly agaric group (Temperate Forest Ecology)","summary":"Seven red white-flecked toadstools with ringed swollen stems and warted caps, scattered over sixty centimetres. 0.69 x 0.21 x 0.53 m.","description":"Seven red white-flecked toadstools with ringed swollen stems and warted caps, scattered over sixty centimetres. 0.69 x 0.21 x 0.53 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-fly-agaric-group-b608df40","cdnUrl":"https://cdn.3dassets.dev/assets/3862/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-fly-agaric-group-b608df40","thumbnailUrl":"https://cdn.3dassets.dev/assets/3862/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3862/v1/poster.webp","blurhash":"UABVR_s-0eEM#R$*kWEM00oM}@xGGZELVY=y","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":108020,"triangles":2212,"vertices":6636,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.34315627813339233,0.000012877945084380227,-0.26540756116625147],"max":[0.34315627813339233,0.21321920716367265,0.26540756116625147]},"sizeMeters":[0.686,0.213,0.531],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:41.315Z","updatedAt":"2026-09-06T06:02:42.042Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3862/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FlyAgaricGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3862/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3862/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3862/v1/model.glb\" alt=\"Fly agaric group (Temperate Forest Ecology)\" 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/3862/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/3862/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3864","slug":"temperate-forest-ecology-penny-bun-group-79b58140","title":"Penny bun bolete group (Temperate Forest Ecology)","summary":"Five squat boletes with thick barrel stems and rounded brown caps, the classic edible under beech and oak. 0.53 x 0.14 x 0.52 m.","description":"Five squat boletes with thick barrel stems and rounded brown caps, the classic edible under beech and oak. 0.53 x 0.14 x 0.52 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-penny-bun-group-79b58140","cdnUrl":"https://cdn.3dassets.dev/assets/3864/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-penny-bun-group-79b58140","thumbnailUrl":"https://cdn.3dassets.dev/assets/3864/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3864/v1/poster.webp","blurhash":"U9ATN4SL00IpWAWCt7fk00xG~WxDX9s:M{ax","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":30172,"triangles":590,"vertices":1770,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.2647552490234375,-0.000010802868345406724,-0.26139039500070294],"max":[0.2647552490234375,0.1424146468660493,0.26138765680353193]},"sizeMeters":[0.53,0.142,0.523],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:41.236Z","updatedAt":"2026-09-06T06:02:41.299Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3864/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PennyBunBoleteGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3864/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3864/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3864/v1/model.glb\" alt=\"Penny bun bolete group (Temperate Forest Ecology)\" 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/3864/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/3864/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3863","slug":"temperate-forest-ecology-chanterelle-group-a270c724","title":"Chanterelle group (Temperate Forest Ecology)","summary":"Nine small egg-yellow funnels with wavy in-rolled caps, in-rolled margins turned down at the edge. 0.41 x 0.09 x 0.31 m.","description":"Nine small egg-yellow funnels with wavy in-rolled caps, in-rolled margins turned down at the edge. 0.41 x 0.09 x 0.31 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-chanterelle-group-a270c724","cdnUrl":"https://cdn.3dassets.dev/assets/3863/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-chanterelle-group-a270c724","thumbnailUrl":"https://cdn.3dassets.dev/assets/3863/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3863/v1/poster.webp","blurhash":"UAAmbZ-p02R%xtt6NHRj00IV~UoLD+M|%Kxa","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":46884,"triangles":954,"vertices":2862,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.20391665399074554,0.000007964577545746532,-0.1535582579186879],"max":[0.20391665399074554,0.0938543082214693,0.1535582579186879]},"sizeMeters":[0.408,0.094,0.307],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:41.214Z","updatedAt":"2026-09-06T06:02:41.274Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3863/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ChanterelleGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3863/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3863/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3863/v1/model.glb\" alt=\"Chanterelle group (Temperate Forest Ecology)\" 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/3863/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/3863/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3865","slug":"temperate-forest-ecology-shaggy-inkcap-group-e5b0afd4","title":"Shaggy inkcap group (Temperate Forest Ecology)","summary":"Five tall cylindrical inkcaps of graded age with shaggy scaled caps, for grassy ride edges and lawns. 0.26 x 0.31 x 0.28 m.","description":"Five tall cylindrical inkcaps of graded age with shaggy scaled caps, for grassy ride edges and lawns. 0.26 x 0.31 x 0.28 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-shaggy-inkcap-group-e5b0afd4","cdnUrl":"https://cdn.3dassets.dev/assets/3865/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-shaggy-inkcap-group-e5b0afd4","thumbnailUrl":"https://cdn.3dassets.dev/assets/3865/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3865/v1/poster.webp","blurhash":"UEC?r?~q009Fj[t7ofRj00IU_3xuM{M{a#t7","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":74820,"triangles":1520,"vertices":4560,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.12919276822863723,0,-0.1396952488946497],"max":[0.12919276822863723,0.3089181184768677,0.1396952488946497]},"sizeMeters":[0.258,0.309,0.279],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:42.810Z","updatedAt":"2026-09-06T06:02:43.367Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3865/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShaggyInkcapGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3865/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3865/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3865/v1/model.glb\" alt=\"Shaggy inkcap group (Temperate Forest Ecology)\" 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/3865/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/3865/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3866","slug":"temperate-forest-ecology-puffball-group-969a42c9","title":"Puffball group (Temperate Forest Ecology)","summary":"Nine rounded stemless puffballs of mixed size; no gills or cap, just a pale sphere resting on the ground. 0.58 x 0.14 x 0.47 m.","description":"Nine rounded stemless puffballs of mixed size; no gills or cap, just a pale sphere resting on the ground. 0.58 x 0.14 x 0.47 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-puffball-group-969a42c9","cdnUrl":"https://cdn.3dassets.dev/assets/3866/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-puffball-group-969a42c9","thumbnailUrl":"https://cdn.3dassets.dev/assets/3866/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3866/v1/poster.webp","blurhash":"U9AwF:of00-:xuxuj@WB00kB~qD*ITE1a#t6","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":39960,"triangles":810,"vertices":2430,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.29214075207710266,0.0000045462127633011384,-0.23340411843093573],"max":[0.29214075207710266,0.14443889124432135,0.23340411843093573]},"sizeMeters":[0.584,0.144,0.467],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:42.651Z","updatedAt":"2026-09-06T06:02:42.709Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3866/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PuffballGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3866/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3866/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3866/v1/model.glb\" alt=\"Puffball group (Temperate Forest Ecology)\" 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/3866/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/3866/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3867","slug":"temperate-forest-ecology-morel-group-4c76c338","title":"Morel group (Temperate Forest Ecology)","summary":"Six morels with pale hollow stems and deeply pitted conical honeycomb heads. 0.38 x 0.18 x 0.38 m.","description":"Six morels with pale hollow stems and deeply pitted conical honeycomb heads. 0.38 x 0.18 x 0.38 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-morel-group-4c76c338","cdnUrl":"https://cdn.3dassets.dev/assets/3867/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-morel-group-4c76c338","thumbnailUrl":"https://cdn.3dassets.dev/assets/3867/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3867/v1/poster.webp","blurhash":"U5AmSNSe004:xAkCWG%L00xG~U?GO[RPV?IU","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":36368,"triangles":720,"vertices":2160,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.18998414278030396,0.0000040983583908978105,-0.18891730473374566],"max":[0.18998414278030396,0.18244531965811633,0.18891730473374566]},"sizeMeters":[0.38,0.182,0.378],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:42.524Z","updatedAt":"2026-09-06T06:02:42.728Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3867/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MorelGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3867/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3867/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3867/v1/model.glb\" alt=\"Morel group (Temperate Forest Ecology)\" 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/3867/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/3867/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3868","slug":"temperate-forest-ecology-earthstar-group-8077d1cb","title":"Earthstar group (Temperate Forest Ecology)","summary":"Five earthstars, each a grey spore sac sitting inside seven splayed tan rays; distinctive litter-layer detail. 0.27 x 0.08 x 0.32 m.","description":"Five earthstars, each a grey spore sac sitting inside seven splayed tan rays; distinctive litter-layer detail. 0.27 x 0.08 x 0.32 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-earthstar-group-8077d1cb","cdnUrl":"https://cdn.3dassets.dev/assets/3868/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-earthstar-group-8077d1cb","thumbnailUrl":"https://cdn.3dassets.dev/assets/3868/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3868/v1/poster.webp","blurhash":"U98Na-t700RjtRWERPoI01WA~VogM_s.x]R.","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":34472,"triangles":680,"vertices":2040,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.1329832001927098,-0.000005811998124313766,-0.16091659665107727],"max":[0.1329832001927098,0.0799695781677976,0.16091659665107727]},"sizeMeters":[0.266,0.08,0.322],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:43.324Z","updatedAt":"2026-09-06T06:02:43.459Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3868/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EarthstarGroupTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3868/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3868/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3868/v1/model.glb\" alt=\"Earthstar group (Temperate Forest Ecology)\" 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/3868/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/3868/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3869","slug":"temperate-forest-ecology-bracket-fungus-log-a08931e1","title":"Bracket fungus on standing log (Temperate Forest Ecology)","summary":"Standing dead log section carrying ten banded hoof-shaped brackets stepped up the trunk. 1.18 x 2.10 x 1.08 m.","description":"Standing dead log section carrying ten banded hoof-shaped brackets stepped up the trunk. 1.18 x 2.10 x 1.08 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-bracket-fungus-log-a08931e1","cdnUrl":"https://cdn.3dassets.dev/assets/3869/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-bracket-fungus-log-a08931e1","thumbnailUrl":"https://cdn.3dassets.dev/assets/3869/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3869/v1/poster.webp","blurhash":"U8BWSd?a0001xukCRjWA01M|~V%LM|s:xaM|","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":39736,"triangles":774,"vertices":2322,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.588935426241471,0,-0.5395061440560533],"max":[0.588935426241471,2.0999999046325684,0.5395061440560533]},"sizeMeters":[1.178,2.1,1.079],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:43.988Z","updatedAt":"2026-09-06T06:02:44.185Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3869/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BracketFungusOnStandingLogTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3869/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3869/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3869/v1/model.glb\" alt=\"Bracket fungus on standing log (Temperate Forest Ecology)\" 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/3869/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/3869/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3870","slug":"temperate-forest-ecology-turkeytail-stump-29fa10eb","title":"Turkeytail-covered stump (Temperate Forest Ecology)","summary":"Low decaying stump ringed by twenty-two thin overlapping fan brackets around its flanks. 1.13 x 0.45 x 1.24 m.","description":"Low decaying stump ringed by twenty-two thin overlapping fan brackets around its flanks. 1.13 x 0.45 x 1.24 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-turkeytail-stump-29fa10eb","cdnUrl":"https://cdn.3dassets.dev/assets/3870/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-turkeytail-stump-29fa10eb","thumbnailUrl":"https://cdn.3dassets.dev/assets/3870/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3870/v1/poster.webp","blurhash":"UCCP-K%f00IUR*jbofbH00M{~ptQoKbFayja","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":42112,"triangles":839,"vertices":2517,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.5654708119426753,-0.000022459884465836355,-0.6215065121650696],"max":[0.565512861547957,0.4493000918843445,0.6215065121650696]},"sizeMeters":[1.131,0.449,1.243],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:44.019Z","updatedAt":"2026-09-06T06:02:44.187Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3870/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TurkeytailCoveredStumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3870/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3870/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3870/v1/model.glb\" alt=\"Turkeytail-covered stump (Temperate Forest Ecology)\" 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/3870/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/3870/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3871","slug":"temperate-forest-ecology-honey-fungus-clump-d54f1685","title":"Honey fungus clump on stump (Temperate Forest Ecology)","summary":"Fourteen tightly clustered honey-coloured mushrooms erupting round the base of a decaying stump. 1.06 x 0.36 x 1.24 m.","description":"Fourteen tightly clustered honey-coloured mushrooms erupting round the base of a decaying stump. 1.06 x 0.36 x 1.24 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-honey-fungus-clump-d54f1685","cdnUrl":"https://cdn.3dassets.dev/assets/3871/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-honey-fungus-clump-d54f1685","thumbnailUrl":"https://cdn.3dassets.dev/assets/3871/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3871/v1/poster.webp","blurhash":"UDA,n7Rj00ogM|a#s:oe00s:~pax%Lj?RkR+","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":114068,"triangles":2306,"vertices":6918,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.5315208009629464,0.000023217790894508594,-0.6218043565750122],"max":[0.5315491344984259,0.3599767965142202,0.6218043565750122]},"sizeMeters":[1.063,0.36,1.244],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:44.787Z","updatedAt":"2026-09-06T06:02:45.824Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3871/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HoneyFungusClumpOnStumpTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3871/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3871/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3871/v1/model.glb\" alt=\"Honey fungus clump on stump (Temperate Forest Ecology)\" 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/3871/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/3871/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3872","slug":"temperate-forest-ecology-granite-boulder-large-c0840fbc","title":"Large granite boulder (Temperate Forest Ecology)","summary":"Rounded glacial erratic about two and a half metres across, faceted and flat-bedded on the ground. 2.54 x 1.88 x 2.10 m.","description":"Rounded glacial erratic about two and a half metres across, faceted and flat-bedded on the ground. 2.54 x 1.88 x 2.10 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-granite-boulder-large-c0840fbc","cdnUrl":"https://cdn.3dassets.dev/assets/3872/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-granite-boulder-large-c0840fbc","thumbnailUrl":"https://cdn.3dassets.dev/assets/3872/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3872/v1/poster.webp","blurhash":"UAEV+;?b00D%4nj[t7Rj00D%~qxu%Mof%Mt7","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":8564,"triangles":156,"vertices":468,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-1.2707396745681763,0.00002167651959394945,-1.048446519423525],"max":[1.2707396745681763,1.87531961967639,1.048446519423525]},"sizeMeters":[2.541,1.875,2.097],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:44.725Z","updatedAt":"2026-09-06T06:02:44.889Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3872/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LargeGraniteBoulderTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3872/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3872/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3872/v1/model.glb\" alt=\"Large granite boulder (Temperate Forest Ecology)\" 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/3872/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/3872/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3873","slug":"temperate-forest-ecology-granite-boulder-mossy-4f320faf","title":"Mossy granite boulder (Temperate Forest Ecology)","summary":"Medium boulder with a moss cap and five moss shelves down the shaded flanks; damp-woodland dressing. 1.68 x 1.33 x 1.54 m.","description":"Medium boulder with a moss cap and five moss shelves down the shaded flanks; damp-woodland dressing. 1.68 x 1.33 x 1.54 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-granite-boulder-mossy-4f320faf","cdnUrl":"https://cdn.3dassets.dev/assets/3873/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-granite-boulder-mossy-4f320faf","thumbnailUrl":"https://cdn.3dassets.dev/assets/3873/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3873/v1/poster.webp","blurhash":"U9D]uL~q004mD%Rkxbk900D*_Mt7V{k9oujc","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":20524,"triangles":390,"vertices":1170,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.8421327471733093,-0.0000648303970112174,-0.7707877810136637],"max":[0.8421327471733093,1.328709463690163,0.7707877810136637]},"sizeMeters":[1.684,1.329,1.542],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:45.602Z","updatedAt":"2026-09-06T06:02:46.615Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3873/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MossyGraniteBoulderTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3873/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3873/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3873/v1/model.glb\" alt=\"Mossy granite boulder (Temperate Forest Ecology)\" 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/3873/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/3873/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3874","slug":"temperate-forest-ecology-fallen-boulder-split-6a91095b","title":"Split boulder pair (Temperate Forest Ecology)","summary":"One boulder frost-split into two angular halves leaning apart, with litter gathered in the gap. 2.80 x 1.42 x 1.69 m.","description":"One boulder frost-split into two angular halves leaning apart, with litter gathered in the gap. 2.80 x 1.42 x 1.69 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-fallen-boulder-split-6a91095b","cdnUrl":"https://cdn.3dassets.dev/assets/3874/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-fallen-boulder-split-6a91095b","thumbnailUrl":"https://cdn.3dassets.dev/assets/3874/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3874/v1/poster.webp","blurhash":"U9D]o9-;00IUM{?bxu4n00IU~qt7of9FRj-;","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":9228,"triangles":141,"vertices":423,"meshes":3,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.399330496788025,-0.00003747302833856381,-0.8468663182855288],"max":[1.3993689412922512,1.4187615364325552,0.8468156456947327]},"sizeMeters":[2.799,1.419,1.694],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:45.522Z","updatedAt":"2026-09-06T06:02:45.622Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3874/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SplitBoulderPairTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3874/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3874/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3874/v1/model.glb\" alt=\"Split boulder pair (Temperate Forest Ecology)\" 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/3874/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/3874/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3875","slug":"temperate-forest-ecology-limestone-outcrop-e739efb5","title":"Limestone outcrop (Temperate Forest Ecology)","summary":"Bedded limestone step of five stacked blocks with a grass tuft in a joint; about five metres wide. 5.26 x 1.73 x 2.57 m.","description":"Bedded limestone step of five stacked blocks with a grass tuft in a joint; about five metres wide. 5.26 x 1.73 x 2.57 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-limestone-outcrop-e739efb5","cdnUrl":"https://cdn.3dassets.dev/assets/3875/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-limestone-outcrop-e739efb5","thumbnailUrl":"https://cdn.3dassets.dev/assets/3875/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3875/v1/poster.webp","blurhash":"U9EfQX-;00Rj9G_3%M9F00IU~qxt~q01In?b","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":18672,"triangles":352,"vertices":1056,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-2.631096839904785,0.000014227185042736679,-1.285798324454339],"max":[2.631096839904785,1.732666212763993,1.285798324454339]},"sizeMeters":[5.262,1.733,2.572],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:46.109Z","updatedAt":"2026-09-06T06:02:46.309Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3875/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LimestoneOutcropTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3875/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3875/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3875/v1/model.glb\" alt=\"Limestone outcrop (Temperate Forest Ecology)\" 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/3875/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/3875/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3876","slug":"temperate-forest-ecology-sandstone-crag-slab-f44446be","title":"Sandstone crag slab (Temperate Forest Ecology)","summary":"Leaning sandstone block over two metres high with four fallen slabs at its foot; for gorge and bank features. 3.45 x 2.54 x 2.83 m.","description":"Leaning sandstone block over two metres high with four fallen slabs at its foot; for gorge and bank features. 3.45 x 2.54 x 2.83 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-sandstone-crag-slab-f44446be","cdnUrl":"https://cdn.3dassets.dev/assets/3876/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-sandstone-crag-slab-f44446be","thumbnailUrl":"https://cdn.3dassets.dev/assets/3876/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3876/v1/poster.webp","blurhash":"UBFO=S?H00I.s,M{E1oe00Rj~VNG-:xuxas:","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":8528,"triangles":142,"vertices":426,"meshes":2,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-1.7260818481445312,0.000006717114400922597,-1.4160470910927205],"max":[1.7260818481445312,2.5447487417173864,1.4160478467949216]},"sizeMeters":[3.452,2.545,2.832],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:46.858Z","updatedAt":"2026-09-06T06:02:47.053Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3876/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SandstoneCragSlabTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3876/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3876/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3876/v1/model.glb\" alt=\"Sandstone crag slab (Temperate Forest Ecology)\" 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/3876/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/3876/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3877","slug":"temperate-forest-ecology-scree-scatter-e04d14d3","title":"Scree scatter (Temperate Forest Ecology)","summary":"Thirty-four angular frost-shattered stones spread over a three-metre soil patch below a rock face. 3.55 x 0.31 x 3.47 m.","description":"Thirty-four angular frost-shattered stones spread over a three-metre soil patch below a rock face. 3.55 x 0.31 x 3.47 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-scree-scatter-e04d14d3","cdnUrl":"https://cdn.3dassets.dev/assets/3877/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-scree-scatter-e04d14d3","thumbnailUrl":"https://cdn.3dassets.dev/assets/3877/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3877/v1/poster.webp","blurhash":"U88ggI%M00IAbIs:oLRk00M{~WxujENGR+xt","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":47072,"triangles":944,"vertices":2832,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.7752926349639893,0.0000465169763465105,-1.735199963987905],"max":[1.7752926349639893,0.3072196989323544,1.735199963987905]},"sizeMeters":[3.551,0.307,3.47],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:47.947Z","updatedAt":"2026-09-06T06:02:48.257Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3877/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ScreeScatterTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3877/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3877/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3877/v1/model.glb\" alt=\"Scree scatter (Temperate Forest Ecology)\" 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/3877/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/3877/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3878","slug":"temperate-forest-ecology-stream-cobble-bed-89a5b491","title":"Stream cobble bed (Temperate Forest Ecology)","summary":"Twenty-six water-rounded cobbles of mixed size laid over a gravel base, for dry stream beds and fords. 3.22 x 0.37 x 3.08 m.","description":"Twenty-six water-rounded cobbles of mixed size laid over a gravel base, for dry stream beds and fords. 3.22 x 0.37 x 3.08 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-stream-cobble-bed-89a5b491","cdnUrl":"https://cdn.3dassets.dev/assets/3878/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-stream-cobble-bed-89a5b491","thumbnailUrl":"https://cdn.3dassets.dev/assets/3878/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3878/v1/poster.webp","blurhash":"UDAJ~Bt700ayRjj[ofWB00Rj~qj[%MWBRjt6","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":65668,"triangles":1333,"vertices":3999,"meshes":2,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-1.6090949773788452,-0.00008932317615602953,-1.5417199259867806],"max":[1.6090949773788452,0.37404547448369474,1.5417199259867806]},"sizeMeters":[3.218,0.374,3.083],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:48.592Z","updatedAt":"2026-09-06T06:02:48.833Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3878/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StreamCobbleBedTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3878/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3878/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3878/v1/model.glb\" alt=\"Stream cobble bed (Temperate Forest Ecology)\" 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/3878/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/3878/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3879","slug":"temperate-forest-ecology-anthill-wood-ant-5811e826","title":"Wood ant nest mound (Temperate Forest Ecology)","summary":"Conical wood ant nest of needles and twigs, 1.7 m across and 0.7 m high, with forty loose sticks on the surface. 1.90 x 0.97 x 1.81 m.","description":"Conical wood ant nest of needles and twigs, 1.7 m across and 0.7 m high, with forty loose sticks on the surface. 1.90 x 0.97 x 1.81 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-anthill-wood-ant-5811e826","cdnUrl":"https://cdn.3dassets.dev/assets/3879/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-anthill-wood-ant-5811e826","thumbnailUrl":"https://cdn.3dassets.dev/assets/3879/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3879/v1/poster.webp","blurhash":"UBBD4oxu01M{IVkCj[af00RP~UtQ-;aeofoy","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":27848,"triangles":543,"vertices":1629,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.9515093564987183,0.000051262835854992694,-0.9053959845659821],"max":[0.9515093564987183,0.9700619772655973,0.9053959845659821]},"sizeMeters":[1.903,0.97,1.811],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:48.720Z","updatedAt":"2026-09-06T06:02:48.896Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3879/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WoodAntNestMoundTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3879/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3879/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3879/v1/model.glb\" alt=\"Wood ant nest mound (Temperate Forest Ecology)\" 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/3879/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/3879/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3880","slug":"temperate-forest-ecology-badger-sett-mound-201f26c3","title":"Badger sett entrance (Temperate Forest Ecology)","summary":"Bank sett: an excavated spoil fan running downslope from a dark tunnel mouth cut into a soil bank, with stones thrown out below. 3.12 x 1.59 x 4.71 m.","description":"Bank sett: an excavated spoil fan running downslope from a dark tunnel mouth cut into a soil bank, with stones thrown out below. 3.12 x 1.59 x 4.71 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-badger-sett-mound-201f26c3","cdnUrl":"https://cdn.3dassets.dev/assets/3880/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-badger-sett-mound-201f26c3","thumbnailUrl":"https://cdn.3dassets.dev/assets/3880/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3880/v1/poster.webp","blurhash":"U78;3_oy00njWBNGWVxt00V[~VkCt7-ooeIo","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":24152,"triangles":451,"vertices":1353,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1.562149811835875,-0.0001352511174212978,-2.354722738265991],"max":[1.562149811835875,1.5896098099476825,2.354722738265991]},"sizeMeters":[3.124,1.59,4.709],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:48.813Z","updatedAt":"2026-09-06T06:02:49.014Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3880/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BadgerSettEntranceTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3880/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3880/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3880/v1/model.glb\" alt=\"Badger sett entrance (Temperate Forest Ecology)\" 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/3880/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/3880/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3881","slug":"temperate-forest-ecology-earth-bank-tile-ea31f879","title":"Woodland earth bank tile (Temperate Forest Ecology)","summary":"Four-metre modular bank tile, one metre high, with exposed roots and moss on the crest. West and east ports at x = -2 and x = 2, type bank-4m, join tiles end to end. 4.00 x 1.20 x 3.20 m.","description":"Four-metre modular bank tile, one metre high, with exposed roots and moss on the crest. West and east ports at x = -2 and x = 2, type bank-4m, join tiles end to end. 4.00 x 1.20 x 3.20 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-earth-bank-tile-ea31f879","cdnUrl":"https://cdn.3dassets.dev/assets/3881/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-earth-bank-tile-ea31f879","thumbnailUrl":"https://cdn.3dassets.dev/assets/3881/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3881/v1/poster.webp","blurhash":"U5BWSZ}[00NY%{RRVbSc00EL~oMfD7.6x?Q;","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"modular","title":"Modular"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":33976,"triangles":657,"vertices":1971,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-2,0.00009604301218923972,-1.9002617924489613],"max":[2,1.2019149461769587,1.2999664296395763]},"sizeMeters":[4,1.202,3.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:49.799Z","updatedAt":"2026-09-06T06:02:49.945Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3881/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WoodlandEarthBankTileTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3881/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3881/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3881/v1/model.glb\" alt=\"Woodland earth bank tile (Temperate Forest Ecology)\" 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/3881/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/3881/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3882","slug":"temperate-forest-ecology-woodland-pool-34916ba2","title":"Woodland pool (Temperate Forest Ecology)","summary":"Five-metre seasonal pool: a raised earth rim, a shallow basin, a still translucent water surface and two bank grass tufts. 4.68 x 0.75 x 4.96 m.","description":"Five-metre seasonal pool: a raised earth rim, a shallow basin, a still translucent water surface and two bank grass tufts. 4.68 x 0.75 x 4.96 m.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-woodland-pool-34916ba2","cdnUrl":"https://cdn.3dassets.dev/assets/3882/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-woodland-pool-34916ba2","thumbnailUrl":"https://cdn.3dassets.dev/assets/3882/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3882/v1/poster.webp","blurhash":"U48D^O-o00IqR%R*ofs;00Ip~pj=s;t8bERi","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"slug":"exterior","title":"Exterior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":33140,"triangles":624,"vertices":1872,"meshes":4,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-2.339561617850646,-0.00007619687289006638,-2.480036735534668],"max":[2.339561617850646,0.7519073749143734,2.480036735534668]},"sizeMeters":[4.679,0.752,4.96],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:50.300Z","updatedAt":"2026-09-06T06:02:50.359Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3882/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WoodlandPoolTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3882/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3882/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3882/v1/model.glb\" alt=\"Woodland pool (Temperate Forest Ecology)\" 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/3882/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/3882/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3884","slug":"temperate-forest-ecology-oak-woodland-gl-d28b8a78-starter-scene","title":"Oak woodland glade (Temperate Forest Ecology)","summary":"Composed example for Temperate Forest Ecology.","description":"A 30 m glade in mixed oak woodland: mature and veteran oak with birch, hazel and holly round the edge, a windthrown trunk, standing deadwood, boulders and a ground layer of ferns, moss and litter. 36 instances of 23 canonical designs on an eight-colour palette.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-oak-woodland-gl-d28b8a78-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/3884/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-oak-woodland-gl-d28b8a78-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/3884/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3884/v1/poster.webp","blurhash":"U98XzRbF00kVX5V[nmtQ00WC?[oLi{t7btM{","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"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":1586848,"triangles":30708,"vertices":86600,"meshes":48,"materials":8,"textures":0,"animations":[],"boundingBox":{"min":[-19.83249302579997,-0.000250819859609841,-21.029706378884093],"max":[19.81599124202979,27.585771560668945,14.57468778587244]},"sizeMeters":[39.648,27.586,35.604],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:51.956Z","updatedAt":"2026-09-06T06:02:52.777Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3884/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function OakWoodlandGladeTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3884/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3884/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3884/v1/model.glb\" alt=\"Oak woodland glade (Temperate Forest Ecology)\" 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/3884/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/3884/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3883","slug":"temperate-forest-ecology-conifer-plantation-edge-13137e82","title":"Conifer plantation edge (Temperate Forest Ecology)","summary":"Composed example for Temperate Forest Ecology.","description":"A worked spruce, fir and larch stand meeting an open ride: planted rows, a thinned edge with sawn stumps and brash, a cordwood stack, a sawlog landing and an ant nest, with bracken and moor grass on the ride. 40 instances of 16 canonical designs.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-conifer-plantation-edge-13137e82","cdnUrl":"https://cdn.3dassets.dev/assets/3883/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-conifer-plantation-edge-13137e82","thumbnailUrl":"https://cdn.3dassets.dev/assets/3883/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3883/v1/poster.webp","blurhash":"U68}l2yW00q]57R.-pnh00s*.kIq$kxZj?NH","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"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":732472,"triangles":14580,"vertices":38367,"meshes":34,"materials":7,"textures":0,"animations":[],"boundingBox":{"min":[-17.54767524592969,-0.0000688277491244782,-16.34582217999507],"max":[18.597230648988205,31.482254028320312,12.38736010184159]},"sizeMeters":[36.145,31.482,28.733],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:51.181Z","updatedAt":"2026-09-06T06:02:51.996Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3883/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ConiferPlantationEdgeTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3883/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3883/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3883/v1/model.glb\" alt=\"Conifer plantation edge (Temperate Forest Ecology)\" 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/3883/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/3883/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3885","slug":"temperate-forest-ecology-wet-woodland-pool-9a7383dd","title":"Wet woodland pool (Temperate Forest Ecology)","summary":"Composed example for Temperate Forest Ecology.","description":"A pool in a hollow of alder and willow carr, with two modular earth-bank tiles joined along the north side, sedge and hair grass at the margin, hollow deadwood and two fungus-covered stumps. 32 instances of 14 canonical designs.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-wet-woodland-pool-9a7383dd","cdnUrl":"https://cdn.3dassets.dev/assets/3885/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-wet-woodland-pool-9a7383dd","thumbnailUrl":"https://cdn.3dassets.dev/assets/3885/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3885/v1/poster.webp","blurhash":"U6AdP+%L00MxScM{Vvo#00jb_LM|xa%LoyWB","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"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":1214364,"triangles":23493,"vertices":64761,"meshes":41,"materials":8,"textures":0,"animations":[],"boundingBox":{"min":[-11.329751951659189,-0.0000901860086199302,-8.400261792448962],"max":[11.200414317720229,16.612552642822266,8.166661610641214]},"sizeMeters":[22.53,16.613,16.567],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:52.714Z","updatedAt":"2026-09-06T06:02:52.850Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3885/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WetWoodlandPoolTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3885/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3885/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3885/v1/model.glb\" alt=\"Wet woodland pool (Temperate Forest Ecology)\" 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/3885/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/3885/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"3886","slug":"temperate-forest-ecology-deadwood-and-fungi-study-a475867d","title":"Deadwood and fungi study (Temperate Forest Ecology)","summary":"Composed example for Temperate Forest Ecology.","description":"Every decay stage and fungus design laid out in four rows on a 14 m plot for close inspection: standing snags, fallen and hollow timber, cut stumps, and ten fungus groups. 27 instances of 27 canonical designs.","status":"published","url":"https://3dassets.dev/assets/temperate-forest-ecology-deadwood-and-fungi-study-a475867d","cdnUrl":"https://cdn.3dassets.dev/assets/3886/v1/model.glb","downloadUrl":"https://3dassets.dev/download/temperate-forest-ecology-deadwood-and-fungi-study-a475867d","thumbnailUrl":"https://cdn.3dassets.dev/assets/3886/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/3886/v1/poster.webp","blurhash":"U8BWYwIA00kX4oWBxt%M00%M~qRO~VoMofIU","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"low-poly","title":"Low Poly"},{"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":1045056,"triangles":20693,"vertices":54714,"meshes":62,"materials":8,"textures":0,"animations":[],"boundingBox":{"min":[-10.31012119584639,-0.0000901860086199302,-7.270420061467634],"max":[7.560042437244564,10.318211555480957,10.925742222007422]},"sizeMeters":[17.87,10.318,18.196],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude original recipes; GPT-6 via Codex repairs and verification","downloads":0,"publishedAt":"2026-09-06T06:02:52.764Z","updatedAt":"2026-09-06T06:02:52.927Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/3886/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DeadwoodAndFungiStudyTemperateForestEcology(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/3886/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/3886/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/3886/v1/model.glb\" alt=\"Deadwood and fungi study (Temperate Forest Ecology)\" 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/3886/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/3886/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}}]}}