{"data":{"id":169,"slug":"arcane-academy-and-spell-trials","title":"Arcane Academy and Spell Trials","summary":"Forty premium stylized magical research, celestial study and spell-training designs.","description":"Original ivory, midnight enamel and brass academy kit for constructing research hubs and magical trial courtyards. Includes closed roofed archive modules, complete observatory, furnished research stations and animated mechanisms. CC0 geometry; no gameplay systems.","url":"https://3dassets.dev/packs/arcane-academy-and-spell-trials","coverUrl":"https://cdn.3dassets.dev/assets/28311/v1/poster.webp","assetCount":41,"aiGenerated":true,"aiGeneratedAssetCount":41,"aiModels":["Claude Fable 5.1"],"aiModelUnspecifiedCount":0,"featured":true,"licenseLabel":"CC0 1.0 Universal","totalBytes":13680840,"totalTriangles":358868,"starterScene":{"id":"28311","slug":"arcane-academy-and-spell-trials-celestia-3db3a107-starter-scene","title":"Celestial Trials Courtyard (Arcane Academy and Spell Trials)","summary":"Enclosed roofed archive wings frame a furnished academy courtyard, portal training circle and complete domed observatory. Walking paths remain open between study and trial stations.","description":"Enclosed roofed archive wings frame a furnished academy courtyard, portal training circle and complete domed observatory. Walking paths remain open between study and trial stations.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-celestia-3db3a107-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/28311/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-celestia-3db3a107-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/28311/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28311/v1/poster.webp","blurhash":"UAB|Qnoc00Rj9Gt7xsRj00NGx]xa~pM{M|t7","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"},{"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":2811552,"triangles":168840,"vertices":115991,"meshes":113,"materials":5,"textures":1,"animations":[],"boundingBox":{"min":[-10.5,-0.00004219273342023766,-7.699957274086733],"max":[10.5,5.154999809265137,7.5]},"sizeMeters":[21,5.155,15.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":1,"publishedAt":"2026-09-08T02:57:17.370Z","updatedAt":"2026-09-08T04:08:16.278Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28311/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CelestialTrialsCourtyardArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28311/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28311/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28311/v1/model.glb\" alt=\"Celestial Trials Courtyard (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28311/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28311/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},"assets":[{"id":"28269","slug":"arcane-academy-and-spell-trials-courtyard-floor-1e904da6","title":"Courtyard Floor (Arcane Academy and Spell Trials)","summary":"Three-metre limestone paving bay with individual bevelled slabs.","description":"Three-metre limestone paving bay with individual bevelled slabs. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-courtyard-floor-1e904da6","cdnUrl":"https://cdn.3dassets.dev/assets/28269/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-courtyard-floor-1e904da6","thumbnailUrl":"https://cdn.3dassets.dev/assets/28269/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28269/v1/poster.webp","blurhash":"U8D0Db%M00Rj-;ayM{j]00Io~pay4.oft7Rj","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":249224,"triangles":3000,"vertices":2140,"meshes":1,"materials":1,"textures":1,"animations":[],"boundingBox":{"min":[-1.5,-0.00004219273342023766,-1.5],"max":[1.5,0.2050421909452809,1.5]},"sizeMeters":[3,0.205,3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:05.177Z","updatedAt":"2026-09-08T02:57:05.340Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28269/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CourtyardFloorArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28269/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28269/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28269/v1/model.glb\" alt=\"Courtyard Floor (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28269/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28269/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28270","slug":"arcane-academy-and-spell-trials-celestial-mosaic-floor-106047de","title":"Celestial Mosaic Floor (Arcane Academy and Spell Trials)","summary":"Three-metre inlaid celestial compass pavement.","description":"Three-metre inlaid celestial compass pavement. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-celestial-mosaic-floor-106047de","cdnUrl":"https://cdn.3dassets.dev/assets/28270/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-celestial-mosaic-floor-106047de","thumbnailUrl":"https://cdn.3dassets.dev/assets/28270/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28270/v1/poster.webp","blurhash":"U68EJLx^I7afE5WBxXof00M_NhWA~St8M|V@","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":356024,"triangles":10296,"vertices":6406,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-1.5,-0.00001953363420398313,-1.5],"max":[1.5,0.27499039050131496,1.5]},"sizeMeters":[3,0.275,3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:05.319Z","updatedAt":"2026-09-08T02:57:05.414Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28270/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CelestialMosaicFloorArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28270/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28270/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28270/v1/model.glb\" alt=\"Celestial Mosaic Floor (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28270/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28270/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28272","slug":"arcane-academy-and-spell-trials-academy-wall-d37de8e9","title":"Academy Wall (Arcane Academy and Spell Trials)","summary":"Three-metre coursed masonry wall with cornice.","description":"Three-metre coursed masonry wall with cornice. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-academy-wall-d37de8e9","cdnUrl":"https://cdn.3dassets.dev/assets/28272/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-academy-wall-d37de8e9","thumbnailUrl":"https://cdn.3dassets.dev/assets/28272/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28272/v1/poster.webp","blurhash":"U6F=]o~q00IU_3~pRk0000IV~pj[%L-;Rj9F","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":309280,"triangles":6000,"vertices":4244,"meshes":1,"materials":1,"textures":1,"animations":[],"boundingBox":{"min":[-1.5,0,-0.19995727408673364],"max":[1.5,3,0.19995727408673364]},"sizeMeters":[3,3,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:05.701Z","updatedAt":"2026-09-08T02:57:05.866Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28272/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function AcademyWallArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28272/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28272/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28272/v1/model.glb\" alt=\"Academy Wall (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28272/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28272/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28271","slug":"arcane-academy-and-spell-trials-window-bay-bb11d0de","title":"Window Bay (Arcane Academy and Spell Trials)","summary":"Lead-free turquoise glazing, brass mullions and recessed sill.","description":"Lead-free turquoise glazing, brass mullions and recessed sill. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-window-bay-bb11d0de","cdnUrl":"https://cdn.3dassets.dev/assets/28271/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-window-bay-bb11d0de","thumbnailUrl":"https://cdn.3dassets.dev/assets/28271/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28271/v1/poster.webp","blurhash":"U7EyrQ-;00Vs.8?bi_4n00ae*IS1-V-:I;9F","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":262764,"triangles":3900,"vertices":2764,"meshes":3,"materials":3,"textures":1,"animations":[],"boundingBox":{"min":[-1.5,0,-0.19995727408673364],"max":[1.5,3,0.19995727408673364]},"sizeMeters":[3,3,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:05.474Z","updatedAt":"2026-09-08T02:57:05.624Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28271/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WindowBayArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28271/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28271/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28271/v1/model.glb\" alt=\"Window Bay (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28271/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28271/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28273","slug":"arcane-academy-and-spell-trials-corner-pier-43d7e7a8","title":"Corner Pier (Arcane Academy and Spell Trials)","summary":"Square capital and turned stone corner pier.","description":"Square capital and turned stone corner pier. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-corner-pier-43d7e7a8","cdnUrl":"https://cdn.3dassets.dev/assets/28273/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-corner-pier-43d7e7a8","thumbnailUrl":"https://cdn.3dassets.dev/assets/28273/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28273/v1/poster.webp","blurhash":"U58qNc%M009F?aa#D%oc~qt74nM{V@ayozof","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":210368,"triangles":1048,"vertices":785,"meshes":1,"materials":1,"textures":1,"animations":[],"boundingBox":{"min":[-0.19995727408673364,0,-0.19995727408673364],"max":[0.19995727408673364,3,0.19995727408673364]},"sizeMeters":[0.4,3,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:06.327Z","updatedAt":"2026-09-08T02:57:06.423Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28273/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CornerPierArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28273/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28273/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28273/v1/model.glb\" alt=\"Corner Pier (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28273/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28273/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28274","slug":"arcane-academy-and-spell-trials-entrance-doorway-bbc7f050","title":"Entrance Doorway (Arcane Academy and Spell Trials)","summary":"Brass-bound enamel door with modelled pull, paired open and close clips.","description":"Brass-bound enamel door with modelled pull, paired open and close clips. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-entrance-doorway-bbc7f050","cdnUrl":"https://cdn.3dassets.dev/assets/28274/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-entrance-doorway-bbc7f050","thumbnailUrl":"https://cdn.3dassets.dev/assets/28274/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28274/v1/poster.webp","blurhash":"U6DJL:?b00-nWE~q%M019E-;Iu4oxb%L-:D*","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":263856,"triangles":4188,"vertices":2778,"meshes":3,"materials":3,"textures":1,"animations":["open","close"],"boundingBox":{"min":[-1.5,0,-0.19995727408673364],"max":[1.5,3,0.2049656606797713]},"sizeMeters":[3,3,0.405],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:06.388Z","updatedAt":"2026-09-08T02:57:06.474Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28274/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function EntranceDoorwayArcaneAcademyAndSpellTrials(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/28274/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28274/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28274/v1/model.glb\" alt=\"Entrance Doorway (Arcane Academy and Spell Trials)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28274/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28274/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"28275","slug":"arcane-academy-and-spell-trials-roof-bay-56cb49da","title":"Roof Bay (Arcane Academy and Spell Trials)","summary":"Three-metre complete flat roof cassette with raised weather cap.","description":"Three-metre complete flat roof cassette with raised weather cap. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-roof-bay-56cb49da","cdnUrl":"https://cdn.3dassets.dev/assets/28275/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-roof-bay-56cb49da","thumbnailUrl":"https://cdn.3dassets.dev/assets/28275/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28275/v1/poster.webp","blurhash":"U4C6c0?a01NH=.WANhoz00D*~8V[0@t8wGM{","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":199076,"triangles":900,"vertices":642,"meshes":3,"materials":3,"textures":1,"animations":[],"boundingBox":{"min":[-1.5,0.00009247465999095983,-1.5],"max":[1.5,0.35493216337512473,1.5]},"sizeMeters":[3,0.355,3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:06.707Z","updatedAt":"2026-09-08T02:57:06.816Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28275/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RoofBayArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28275/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28275/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28275/v1/model.glb\" alt=\"Roof Bay (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28275/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28275/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28277","slug":"arcane-academy-and-spell-trials-roof-end-6299b14d","title":"Roof End (Arcane Academy and Spell Trials)","summary":"Roof termination cassette with raised rear parapet.","description":"Roof termination cassette with raised rear parapet. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-roof-end-6299b14d","cdnUrl":"https://cdn.3dassets.dev/assets/28277/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-roof-end-6299b14d","thumbnailUrl":"https://cdn.3dassets.dev/assets/28277/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28277/v1/poster.webp","blurhash":"U49tT6E800^*o~9ZM{?H00xU9iIUxS~po#4.","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":206544,"triangles":900,"vertices":642,"meshes":2,"materials":2,"textures":1,"animations":[],"boundingBox":{"min":[-1.5,-0.00004792240452755614,-1.5],"max":[1.5,0.580047905715227,1.5]},"sizeMeters":[3,0.58,3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:07.994Z","updatedAt":"2026-09-08T02:57:08.103Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28277/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RoofEndArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28277/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28277/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28277/v1/model.glb\" alt=\"Roof End (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28277/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28277/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28278","slug":"arcane-academy-and-spell-trials-stair-ad759e80","title":"Stair (Arcane Academy and Spell Trials)","summary":"Six solid chamfered stone treads climbing 1.08 metres.","description":"Six solid chamfered stone treads climbing 1.08 metres. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-stair-ad759e80","cdnUrl":"https://cdn.3dassets.dev/assets/28278/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-stair-ad759e80","thumbnailUrl":"https://cdn.3dassets.dev/assets/28278/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28278/v1/poster.webp","blurhash":"UDD]h.~p4oRj9Gof%Lt700D%%LRj-:M{V@WB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":230052,"triangles":1800,"vertices":1285,"meshes":1,"materials":1,"textures":1,"animations":[],"boundingBox":{"min":[-1.000042765651394,0.000005493331924011358,-1.2000000476837158],"max":[1.000042765651394,1.0799945495834202,1.2000000476837158]},"sizeMeters":[2,1.08,2.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:08.259Z","updatedAt":"2026-09-08T02:57:08.454Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28278/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StairArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28278/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28278/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28278/v1/model.glb\" alt=\"Stair (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28278/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28278/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28279","slug":"arcane-academy-and-spell-trials-landing-5101d108","title":"Landing (Arcane Academy and Spell Trials)","summary":"Raised square stair landing with inset enamel cap.","description":"Raised square stair landing with inset enamel cap. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-landing-5101d108","cdnUrl":"https://cdn.3dassets.dev/assets/28279/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-landing-5101d108","thumbnailUrl":"https://cdn.3dassets.dev/assets/28279/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28279/v1/poster.webp","blurhash":"UGCZhZ-;MvRj4?Rk$~t700M{IVay~nt7IWRj","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":200416,"triangles":600,"vertices":426,"meshes":2,"materials":2,"textures":1,"animations":[],"boundingBox":{"min":[-1.0499999523162842,0.0000055147893778251245,-1.0499999523162842],"max":[1.0499999523162842,1.1599914577695838,1.0499999523162842]},"sizeMeters":[2.1,1.16,2.1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:08.266Z","updatedAt":"2026-09-08T02:57:08.465Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28279/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LandingArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28279/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28279/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28279/v1/model.glb\" alt=\"Landing (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28279/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28279/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28280","slug":"arcane-academy-and-spell-trials-arcade-straight-75da246a","title":"Arcade Straight (Arcane Academy and Spell Trials)","summary":"Three-metre open colonnade with circular tracery.","description":"Three-metre open colonnade with circular tracery. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-arcade-straight-75da246a","cdnUrl":"https://cdn.3dassets.dev/assets/28280/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-arcade-straight-75da246a","thumbnailUrl":"https://cdn.3dassets.dev/assets/28280/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28280/v1/poster.webp","blurhash":"UBCi]pt700of~p-;9F9GIUt6t7M|IV%f%MD%","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":251912,"triangles":3164,"vertices":2226,"meshes":1,"materials":1,"textures":1,"animations":[],"boundingBox":{"min":[-1.5,0,-0.19995727408673364],"max":[1.5,3,0.19995727408673364]},"sizeMeters":[3,3,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:08.479Z","updatedAt":"2026-09-08T02:57:08.636Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28280/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ArcadeStraightArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28280/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28280/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28280/v1/model.glb\" alt=\"Arcade Straight (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28280/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28280/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28281","slug":"arcane-academy-and-spell-trials-arcade-corner-555daf39","title":"Arcade Corner (Arcane Academy and Spell Trials)","summary":"Right-angle colonnade return with shared corner footprint.","description":"Right-angle colonnade return with shared corner footprint. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-arcade-corner-555daf39","cdnUrl":"https://cdn.3dassets.dev/assets/28281/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-arcade-corner-555daf39","thumbnailUrl":"https://cdn.3dassets.dev/assets/28281/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28281/v1/poster.webp","blurhash":"U4Dvck?vD*o4xbbF~p%200IUIVad00M_~qoe","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":315456,"triangles":6328,"vertices":4452,"meshes":1,"materials":1,"textures":1,"animations":[],"boundingBox":{"min":[-1.600000023841858,0.000003029499251239187,-1.600000023841858],"max":[1.600000023841858,2.9999969705007485,1.600000023841858]},"sizeMeters":[3.2,3,3.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:08.197Z","updatedAt":"2026-09-08T02:57:08.313Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28281/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ArcadeCornerArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28281/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28281/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28281/v1/model.glb\" alt=\"Arcade Corner (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28281/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28281/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28282","slug":"arcane-academy-and-spell-trials-arcade-end-ffc407ca","title":"Arcade End (Arcane Academy and Spell Trials)","summary":"Terminal arcade pier with crystal finial.","description":"Terminal arcade pier with crystal finial. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-arcade-end-ffc407ca","cdnUrl":"https://cdn.3dassets.dev/assets/28282/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-arcade-end-ffc407ca","thumbnailUrl":"https://cdn.3dassets.dev/assets/28282/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28282/v1/poster.webp","blurhash":"U38XUk-;0000GskB*|aL*JozL~R5F}WC#6s.","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":228420,"triangles":2068,"vertices":1422,"meshes":2,"materials":2,"textures":1,"animations":[],"boundingBox":{"min":[-0.27498885065751,0,-0.27498885065751],"max":[0.27498885065751,3.5000000596046448,0.27498885065751]},"sizeMeters":[0.55,3.5,0.55],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:08.224Z","updatedAt":"2026-09-08T02:57:08.331Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28282/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ArcadeEndArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28282/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28282/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28282/v1/model.glb\" alt=\"Arcade End (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28282/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28282/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28283","slug":"arcane-academy-and-spell-trials-balustrade-straight-19be2df7","title":"Balustrade Straight (Arcane Academy and Spell Trials)","summary":"Three-metre balustrade with nine turned spindles.","description":"Three-metre balustrade with nine turned spindles. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-balustrade-straight-19be2df7","cdnUrl":"https://cdn.3dassets.dev/assets/28283/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-balustrade-straight-19be2df7","thumbnailUrl":"https://cdn.3dassets.dev/assets/28283/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28283/v1/poster.webp","blurhash":"UBD]VV%LD*%2Z|~pt8M|00Mv-pW?yEITR4M|","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":289604,"triangles":4632,"vertices":3673,"meshes":2,"materials":2,"textures":1,"animations":[],"boundingBox":{"min":[-1.5,-0.00003586520909876212,-0.14996795556505021],"max":[1.5,1.049989288719361,0.14996795556505021]},"sizeMeters":[3,1.05,0.3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:08.536Z","updatedAt":"2026-09-08T02:57:09.196Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28283/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BalustradeStraightArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28283/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28283/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28283/v1/model.glb\" alt=\"Balustrade Straight (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28283/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28283/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28284","slug":"arcane-academy-and-spell-trials-balustrade-corner-d3db17c3","title":"Balustrade Corner (Arcane Academy and Spell Trials)","summary":"L-shaped returned balustrade.","description":"L-shaped returned balustrade. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-balustrade-corner-d3db17c3","cdnUrl":"https://cdn.3dassets.dev/assets/28284/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-balustrade-corner-d3db17c3","thumbnailUrl":"https://cdn.3dassets.dev/assets/28284/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28284/v1/poster.webp","blurhash":"UDBy{axtM|of9FWB-pof00RkRPRj_4s;D*WC","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":390136,"triangles":9264,"vertices":7346,"meshes":2,"materials":2,"textures":1,"animations":[],"boundingBox":{"min":[-1.5750000476837158,0.00005338705193230764,-1.5750000476837158],"max":[1.5750000476837158,1.0500539878831958,1.5750000476837158]},"sizeMeters":[3.15,1.05,3.15],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:09.567Z","updatedAt":"2026-09-08T02:57:09.691Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28284/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BalustradeCornerArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28284/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28284/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28284/v1/model.glb\" alt=\"Balustrade Corner (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28284/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28284/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28285","slug":"arcane-academy-and-spell-trials-balustrade-end-3cece7fa","title":"Balustrade End (Arcane Academy and Spell Trials)","summary":"Terminal guardrail post with brass finial.","description":"Terminal guardrail post with brass finial. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-balustrade-end-3cece7fa","cdnUrl":"https://cdn.3dassets.dev/assets/28285/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-balustrade-end-3cece7fa","thumbnailUrl":"https://cdn.3dassets.dev/assets/28285/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28285/v1/poster.webp","blurhash":"U6Ci?e~q0000DhM{yD%M00D%_M.8Rjoft7R%","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":206388,"triangles":1020,"vertices":635,"meshes":2,"materials":2,"textures":1,"animations":[],"boundingBox":{"min":[-0.20001770868348542,0,-0.20001770868348542],"max":[0.20001770868348542,1.4000000059604645,0.20001770868348542]},"sizeMeters":[0.4,1.4,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:10.062Z","updatedAt":"2026-09-08T02:57:10.163Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28285/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function BalustradeEndArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28285/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28285/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28285/v1/model.glb\" alt=\"Balustrade End (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28285/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28285/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28289","slug":"arcane-academy-and-spell-trials-observatory-dome-pavil-261e6f00","title":"Observatory Dome Pavilion (Arcane Academy and Spell Trials)","summary":"Complete enclosed circular observatory pavilion with solid domed roof and twelve pilasters; interior shell is not enterable.","description":"Complete enclosed circular observatory pavilion with solid domed roof and twelve pilasters; interior shell is not enterable. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-observatory-dome-pavil-261e6f00","cdnUrl":"https://cdn.3dassets.dev/assets/28289/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-observatory-dome-pavil-261e6f00","thumbnailUrl":"https://cdn.3dassets.dev/assets/28289/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28289/v1/poster.webp","blurhash":"U6AwC%-;00IU00M{~pxu4mRjt9kD~qt8IWRP","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":568392,"triangles":19168,"vertices":14029,"meshes":3,"materials":3,"textures":1,"animations":[],"boundingBox":{"min":[-2.299999952316284,0.0000386416764737163,-2.299999952316284],"max":[2.299999952316284,4.949999809265137,2.299999952316284]},"sizeMeters":[4.6,4.95,4.6],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:11.559Z","updatedAt":"2026-09-08T02:57:11.711Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28289/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ObservatoryDomePavilionArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28289/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28289/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28289/v1/model.glb\" alt=\"Observatory Dome Pavilion (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28289/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28289/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28288","slug":"arcane-academy-and-spell-trials-telescope-404f2cb1","title":"Telescope (Arcane Academy and Spell Trials)","summary":"Inclined brass-collared optical barrel on geared equatorial pedestal; aiming is static.","description":"Inclined brass-collared optical barrel on geared equatorial pedestal; aiming is static. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-telescope-404f2cb1","cdnUrl":"https://cdn.3dassets.dev/assets/28288/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-telescope-404f2cb1","thumbnailUrl":"https://cdn.3dassets.dev/assets/28288/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28288/v1/poster.webp","blurhash":"U47BDx%M00Dj02M_~n-=OEawxCkF-Mt6NNM}","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":240908,"triangles":2624,"vertices":1994,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.7696388782443634,0,-0.549974081120951],"max":[0.7696388782443634,2.6516612236589174,0.549974081120951]},"sizeMeters":[1.539,2.652,1.1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:10.493Z","updatedAt":"2026-09-08T02:57:10.702Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28288/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TelescopeArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28288/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28288/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28288/v1/model.glb\" alt=\"Telescope (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28288/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28288/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28290","slug":"arcane-academy-and-spell-trials-armillary-sphere-45e407a8","title":"Armillary Sphere (Arcane Academy and Spell Trials)","summary":"Three intersecting celestial meridian rings around turquoise globe.","description":"Three intersecting celestial meridian rings around turquoise globe. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-armillary-sphere-45e407a8","cdnUrl":"https://cdn.3dassets.dev/assets/28290/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-armillary-sphere-45e407a8","thumbnailUrl":"https://cdn.3dassets.dev/assets/28290/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28290/v1/poster.webp","blurhash":"U3A0zI?a000L00Rj.Axu4?ba.5WE03NH_Lxu","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":277116,"triangles":5264,"vertices":3281,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.6050108728911197,0.000009152843739201888,-0.6047874773874213],"max":[0.6050108728911197,2.005000114440918,0.6047874773874213]},"sizeMeters":[1.21,2.005,1.21],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:10.719Z","updatedAt":"2026-09-08T02:57:10.833Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28290/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ArmillarySphereArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28290/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28290/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28290/v1/model.glb\" alt=\"Armillary Sphere (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28290/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28290/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28286","slug":"arcane-academy-and-spell-trials-orrery-51f0187c","title":"Orrery (Arcane Academy and Spell Trials)","summary":"Three brass orbital tracks and planet beads with continuous spin clip.","description":"Three brass orbital tracks and planet beads with continuous spin clip. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-orrery-51f0187c","cdnUrl":"https://cdn.3dassets.dev/assets/28286/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-orrery-51f0187c","thumbnailUrl":"https://cdn.3dassets.dev/assets/28286/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28286/v1/poster.webp","blurhash":"U6C6oj-o00OFMHM_JFtR00Sh%MrqANkr~Sw[","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":301884,"triangles":6656,"vertices":4184,"meshes":6,"materials":4,"textures":1,"animations":["spin"],"boundingBox":{"min":[-0.8500000238418579,-0.00001832688389930004,-0.8500000238418579],"max":[0.8500000238418579,1.300023508283318,0.8500000238418579]},"sizeMeters":[1.7,1.3,1.7],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:10.252Z","updatedAt":"2026-09-08T02:57:10.410Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28286/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function OrreryArcaneAcademyAndSpellTrials(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/28286/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28286/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28286/v1/model.glb\" alt=\"Orrery (Arcane Academy and Spell Trials)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28286/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28286/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"28287","slug":"arcane-academy-and-spell-trials-rune-portal-frame-716491b5","title":"Rune Portal Frame (Arcane Academy and Spell Trials)","summary":"Walk-through circular portal frame with eight crystalline sockets; portal surface and teleport logic omitted.","description":"Walk-through circular portal frame with eight crystalline sockets; portal surface and teleport logic omitted. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-rune-portal-frame-716491b5","cdnUrl":"https://cdn.3dassets.dev/assets/28287/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-rune-portal-frame-716491b5","thumbnailUrl":"https://cdn.3dassets.dev/assets/28287/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28287/v1/poster.webp","blurhash":"U5Bz8]%g00k800%3~pD%xCM_IUbc?a~pt700","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":344732,"triangles":9692,"vertices":6050,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-1.4999451087552693,0,-0.49998170291842314],"max":[1.4999451087552693,3.4000000953674316,0.49998170291842314]},"sizeMeters":[3,3.4,1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:10.390Z","updatedAt":"2026-09-08T02:57:10.478Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28287/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RunePortalFrameArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28287/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28287/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28287/v1/model.glb\" alt=\"Rune Portal Frame (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28287/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28287/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28291","slug":"arcane-academy-and-spell-trials-portal-stabilizer-cd7a4f0d","title":"Portal Stabilizer (Arcane Academy and Spell Trials)","summary":"Resonant crystal held within brass containment hoop.","description":"Resonant crystal held within brass containment hoop. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-portal-stabilizer-cd7a4f0d","cdnUrl":"https://cdn.3dassets.dev/assets/28291/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-portal-stabilizer-cd7a4f0d","thumbnailUrl":"https://cdn.3dassets.dev/assets/28291/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28291/v1/poster.webp","blurhash":"U39ju@?H004U00NG?Jxu8}jF?to}8yRk?]xu","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":242276,"triangles":2960,"vertices":1967,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.4000106708816524,0,-0.4000106708816524],"max":[0.4000106708816524,1.5750000476837158,0.4000106708816524]},"sizeMeters":[0.8,1.575,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:10.849Z","updatedAt":"2026-09-08T02:57:10.985Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28291/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PortalStabilizerArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28291/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28291/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28291/v1/model.glb\" alt=\"Portal Stabilizer (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28291/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28291/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28292","slug":"arcane-academy-and-spell-trials-spell-focus-lectern-43e438ea","title":"Spell Focus Lectern (Arcane Academy and Spell Trials)","summary":"Rune focus plate on sculpted lectern pedestal.","description":"Rune focus plate on sculpted lectern pedestal. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-spell-focus-lectern-43e438ea","cdnUrl":"https://cdn.3dassets.dev/assets/28292/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-spell-focus-lectern-43e438ea","thumbnailUrl":"https://cdn.3dassets.dev/assets/28292/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28292/v1/poster.webp","blurhash":"U397nm-=004-00M{~BxtOpWA$kxv~Sn,I^ox","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":247480,"triangles":3260,"vertices":2182,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.4500106814783166,0,-0.4500106814783166],"max":[0.4500106814783166,1.270000010728836,0.4500106814783166]},"sizeMeters":[0.9,1.27,0.9],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:11.321Z","updatedAt":"2026-09-08T02:57:11.443Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28292/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SpellFocusLecternArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28292/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28292/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28292/v1/model.glb\" alt=\"Spell Focus Lectern (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28292/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28292/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28293","slug":"arcane-academy-and-spell-trials-grimoire-stand-81f79241","title":"Grimoire Stand (Arcane Academy and Spell Trials)","summary":"Bound grimoire held on dedicated stone reading stand; pages static.","description":"Bound grimoire held on dedicated stone reading stand; pages static. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-grimoire-stand-81f79241","cdnUrl":"https://cdn.3dassets.dev/assets/28293/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-grimoire-stand-81f79241","thumbnailUrl":"https://cdn.3dassets.dev/assets/28293/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28293/v1/poster.webp","blurhash":"U4AJ=+?H009F00Ri.7of9cfA-mjX%jWG-lt2","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":250744,"triangles":3272,"vertices":2383,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.44999998807907104,0,-0.44999998807907104],"max":[0.44999998807907104,1.138800024986267,0.44999998807907104]},"sizeMeters":[0.9,1.139,0.9],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:11.771Z","updatedAt":"2026-09-08T02:57:11.913Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28293/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrimoireStandArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28293/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28293/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28293/v1/model.glb\" alt=\"Grimoire Stand (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28293/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28293/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28294","slug":"arcane-academy-and-spell-trials-enchanted-bookcase-3bff09fa","title":"Enchanted Bookcase (Arcane Academy and Spell Trials)","summary":"Four stocked shelves of individually bound spell books with brass spine bands.","description":"Four stocked shelves of individually bound spell books with brass spine bands. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-enchanted-bookcase-3bff09fa","cdnUrl":"https://cdn.3dassets.dev/assets/28294/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-enchanted-bookcase-3bff09fa","thumbnailUrl":"https://cdn.3dassets.dev/assets/28294/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28294/v1/poster.webp","blurhash":"UCCi{x~p00E2^*-:NKD*01M{-nV[ogj]WARj","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":485572,"triangles":16800,"vertices":12009,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.7512131443335138,0,-0.2575029616542603],"max":[0.7512131443335138,2.1212000846862793,0.2575381521618639]},"sizeMeters":[1.502,2.121,0.515],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:12.153Z","updatedAt":"2026-09-08T02:57:12.276Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28294/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EnchantedBookcaseArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28294/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28294/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28294/v1/model.glb\" alt=\"Enchanted Bookcase (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28294/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28294/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28295","slug":"arcane-academy-and-spell-trials-scroll-pigeonholes-0f1b5522","title":"Scroll Pigeonholes (Arcane Academy and Spell Trials)","summary":"Divided archive rack with rolled parchment documents.","description":"Divided archive rack with rolled parchment documents. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-scroll-pigeonholes-0f1b5522","cdnUrl":"https://cdn.3dassets.dev/assets/28295/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-scroll-pigeonholes-0f1b5522","thumbnailUrl":"https://cdn.3dassets.dev/assets/28295/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28295/v1/poster.webp","blurhash":"U7B:vx_300IU~W?HIq9H00Ri%1NIx]t7M_M{","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":276280,"triangles":4452,"vertices":3558,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.7512131443335138,0,-0.33750295986612094],"max":[0.7512131443335138,2.1212000846862793,0.3374433979944814]},"sizeMeters":[1.502,2.121,0.675],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:12.323Z","updatedAt":"2026-09-08T02:57:12.429Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28295/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ScrollPigeonholesArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28295/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28295/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28295/v1/model.glb\" alt=\"Scroll Pigeonholes (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28295/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28295/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28296","slug":"arcane-academy-and-spell-trials-scribing-desk-a7fd8367","title":"Scribing Desk (Arcane Academy and Spell Trials)","summary":"Raised scribing surface with bound reference, parchment and brass ink vessel.","description":"Raised scribing surface with bound reference, parchment and brass ink vessel. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-scribing-desk-a7fd8367","cdnUrl":"https://cdn.3dassets.dev/assets/28296/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-scribing-desk-a7fd8367","thumbnailUrl":"https://cdn.3dassets.dev/assets/28296/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28296/v1/poster.webp","blurhash":"U59%@#s?9D~q4|_3Ri4o009a9HbDm~xu_3IU","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":297324,"triangles":5760,"vertices":4129,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.8500000238418579,0.00003118186240469445,-0.40003205565554645],"max":[0.8500000238418579,1.1699769201368402,0.40003205565554645]},"sizeMeters":[1.7,1.17,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:12.509Z","updatedAt":"2026-09-08T02:57:12.630Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28296/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ScribingDeskArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28296/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28296/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28296/v1/model.glb\" alt=\"Scribing Desk (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28296/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28296/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28297","slug":"arcane-academy-and-spell-trials-stool-6fc4e011","title":"Stool (Arcane Academy and Spell Trials)","summary":"Round padded study stool with turned limestone pedestal.","description":"Round padded study stool with turned limestone pedestal. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-stool-6fc4e011","cdnUrl":"https://cdn.3dassets.dev/assets/28297/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-stool-6fc4e011","thumbnailUrl":"https://cdn.3dassets.dev/assets/28297/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28297/v1/poster.webp","blurhash":"U69j+X%g00IA05M|~Tx]kVoLRPWB^}s,M}WX","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":222140,"triangles":1600,"vertices":1270,"meshes":3,"materials":3,"textures":1,"animations":[],"boundingBox":{"min":[-0.33000001311302185,-0.000010691412848484738,-0.33000001311302185],"max":[0.33000001311302185,0.6199951280154785,0.33000001311302185]},"sizeMeters":[0.66,0.62,0.66],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:12.556Z","updatedAt":"2026-09-08T02:57:12.677Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28297/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StoolArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28297/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28297/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28297/v1/model.glb\" alt=\"Stool (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28297/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28297/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28298","slug":"arcane-academy-and-spell-trials-scroll-press-eb3fa89e","title":"Scroll Press (Arcane Academy and Spell Trials)","summary":"Two-column manuscript flattening press with static threaded spindle and cross handle.","description":"Two-column manuscript flattening press with static threaded spindle and cross handle. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-scroll-press-eb3fa89e","cdnUrl":"https://cdn.3dassets.dev/assets/28298/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-scroll-press-eb3fa89e","thumbnailUrl":"https://cdn.3dassets.dev/assets/28298/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28298/v1/poster.webp","blurhash":"UA97R.s;00Ri}~xZ9jIqEKxZxHIq5aa}-jWB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":31520,"triangles":1584,"vertices":1250,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.44999998807907104,-0.000033254909203250804,-0.3250129617566239],"max":[0.44999998807907104,1.034999966621399,0.3250129617566239]},"sizeMeters":[0.9,1.035,0.65],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:12.638Z","updatedAt":"2026-09-08T02:57:12.810Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28298/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ScrollPressArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28298/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28298/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28298/v1/model.glb\" alt=\"Scroll Press (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28298/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28298/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28299","slug":"arcane-academy-and-spell-trials-crystal-resonator-586b5f62","title":"Crystal Resonator (Arcane Academy and Spell Trials)","summary":"Spherical resonance core on stepped stand with protective ring.","description":"Spherical resonance core on stepped stand with protective ring. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-crystal-resonator-586b5f62","cdnUrl":"https://cdn.3dassets.dev/assets/28299/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-crystal-resonator-586b5f62","thumbnailUrl":"https://cdn.3dassets.dev/assets/28299/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28299/v1/poster.webp","blurhash":"U5AAm#-;00Di00Rjx0oM4TjZ?^X9mTaK.lx]","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":243580,"triangles":2960,"vertices":2033,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.550000011920929,0.000005321774159849912,-0.550000011920929],"max":[0.550000011920929,1.4700000286102295,0.550000011920929]},"sizeMeters":[1.1,1.47,1.1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:14.284Z","updatedAt":"2026-09-08T02:57:14.394Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28299/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CrystalResonatorArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28299/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28299/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28299/v1/model.glb\" alt=\"Crystal Resonator (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28299/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28299/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28300","slug":"arcane-academy-and-spell-trials-prism-pedestal-5cc050a4","title":"Prism Pedestal (Arcane Academy and Spell Trials)","summary":"Hexagonal arcane prism seated on a turned research pedestal.","description":"Hexagonal arcane prism seated on a turned research pedestal. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-prism-pedestal-5cc050a4","cdnUrl":"https://cdn.3dassets.dev/assets/28300/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-prism-pedestal-5cc050a4","thumbnailUrl":"https://cdn.3dassets.dev/assets/28300/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28300/v1/poster.webp","blurhash":"U69@q+-:009F01NG^6xaDOWB%~xuu%f6uit7","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":219888,"triangles":1484,"vertices":1124,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.4000000059604645,0,-0.4000000059604645],"max":[0.4000000059604645,1.350000023841858,0.4000000059604645]},"sizeMeters":[0.8,1.35,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:13.276Z","updatedAt":"2026-09-08T02:57:13.394Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28300/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PrismPedestalArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28300/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28300/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28300/v1/model.glb\" alt=\"Prism Pedestal (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28300/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28300/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28301","slug":"arcane-academy-and-spell-trials-rotating-rune-puzzle-c07ecf69","title":"Rotating Rune Puzzle (Arcane Academy and Spell Trials)","summary":"Six-node rotating rune hoop with spin clip; game solution logic omitted.","description":"Six-node rotating rune hoop with spin clip; game solution logic omitted. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-rotating-rune-puzzle-c07ecf69","cdnUrl":"https://cdn.3dassets.dev/assets/28301/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-rotating-rune-puzzle-c07ecf69","thumbnailUrl":"https://cdn.3dassets.dev/assets/28301/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28301/v1/poster.webp","blurhash":"U47_H2%N00I900Rm~UoG,.ogTKac-6ocOrWC","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":294136,"triangles":6560,"vertices":4082,"meshes":5,"materials":4,"textures":1,"animations":["spin"],"boundingBox":{"min":[-0.6000000238418579,0.0000015060573195224691,-0.6000000238418579],"max":[0.6000000238418579,1.7100000500679016,0.6000000238418579]},"sizeMeters":[1.2,1.71,1.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:13.644Z","updatedAt":"2026-09-08T02:57:13.761Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28301/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function RotatingRunePuzzleArcaneAcademyAndSpellTrials(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/28301/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28301/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28301/v1/model.glb\" alt=\"Rotating Rune Puzzle (Arcane Academy and Spell Trials)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28301/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28301/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"28302","slug":"arcane-academy-and-spell-trials-ward-generator-489e1c07","title":"Ward Generator (Arcane Academy and Spell Trials)","summary":"Ring-shielded ward core; protective field is a gameplay integration point.","description":"Ring-shielded ward core; protective field is a gameplay integration point. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-ward-generator-489e1c07","cdnUrl":"https://cdn.3dassets.dev/assets/28302/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-ward-generator-489e1c07","thumbnailUrl":"https://cdn.3dassets.dev/assets/28302/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28302/v1/poster.webp","blurhash":"U7CP^d-;00IUIRM|IXs:4Uj[pIR+MnjZ?[x[","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":255228,"triangles":3728,"vertices":2474,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.6499999761581421,0.00004427476198043401,-0.6499999761581421],"max":[0.6499999761581421,1.1699999868869781,0.6499999761581421]},"sizeMeters":[1.3,1.17,1.3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:13.975Z","updatedAt":"2026-09-08T02:57:14.066Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28302/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WardGeneratorArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28302/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28302/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28302/v1/model.glb\" alt=\"Ward Generator (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28302/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28302/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28303","slug":"arcane-academy-and-spell-trials-target-construct-3e68a72c","title":"Target Construct (Arcane Academy and Spell Trials)","summary":"Humanoid training target with concentric chest marker and joint-like shoulders; static.","description":"Humanoid training target with concentric chest marker and joint-like shoulders; static. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-target-construct-3e68a72c","cdnUrl":"https://cdn.3dassets.dev/assets/28303/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-target-construct-3e68a72c","thumbnailUrl":"https://cdn.3dassets.dev/assets/28303/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28303/v1/poster.webp","blurhash":"U28|@c?b000001ait7M__1%L9H9G8^tP_3IW","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":259776,"triangles":3860,"vertices":2573,"meshes":3,"materials":3,"textures":1,"animations":[],"boundingBox":{"min":[-0.7000326924165852,0,-0.550002471031361],"max":[0.7000326924165852,2.130000114440918,0.550002471031361]},"sizeMeters":[1.4,2.13,1.1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:14.266Z","updatedAt":"2026-09-08T02:57:14.358Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28303/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TargetConstructArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28303/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28303/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28303/v1/model.glb\" alt=\"Target Construct (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28303/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28303/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28306","slug":"arcane-academy-and-spell-trials-levitation-demonstrati-a211257b","title":"Levitation Demonstration Stand (Arcane Academy and Spell Trials)","summary":"Suspended orb and containment ring above demonstration dais; suspension is static visual magic.","description":"Suspended orb and containment ring above demonstration dais; suspension is static visual magic. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-levitation-demonstrati-a211257b","cdnUrl":"https://cdn.3dassets.dev/assets/28306/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-levitation-demonstrati-a211257b","thumbnailUrl":"https://cdn.3dassets.dev/assets/28306/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28306/v1/poster.webp","blurhash":"U8AwSD%M00IB0KRjv%n+D+baxujFQ.ae?]tR","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":241428,"triangles":3280,"vertices":2014,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.6499999761581421,0.000012818633192142326,-0.6499999761581421],"max":[0.6499999761581421,1.350000023841858,0.6499999761581421]},"sizeMeters":[1.3,1.35,1.3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:14.738Z","updatedAt":"2026-09-08T02:57:14.923Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28306/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LevitationDemonstrationStandArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28306/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28306/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28306/v1/model.glb\" alt=\"Levitation Demonstration Stand (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28306/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28306/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28304","slug":"arcane-academy-and-spell-trials-mana-fountain-bf2bb7e7","title":"Mana Fountain (Arcane Academy and Spell Trials)","summary":"Shallow turquoise mana basin with central crystal spout; no flowing particles.","description":"Shallow turquoise mana basin with central crystal spout; no flowing particles. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-mana-fountain-bf2bb7e7","cdnUrl":"https://cdn.3dassets.dev/assets/28304/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-mana-fountain-bf2bb7e7","thumbnailUrl":"https://cdn.3dassets.dev/assets/28304/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28304/v1/poster.webp","blurhash":"UBAm|}x[00RP4nRjxuof00V@.lbb_Nt7V@ay","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":248584,"triangles":3216,"vertices":2235,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-1.149999976158142,0.00003051591733699288,-1.149999976158142],"max":[1.149999976158142,1.3000102673960252,1.149999976158142]},"sizeMeters":[2.3,1.3,2.3],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:14.375Z","updatedAt":"2026-09-08T02:57:14.558Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28304/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ManaFountainArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28304/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28304/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28304/v1/model.glb\" alt=\"Mana Fountain (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28304/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28304/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28305","slug":"arcane-academy-and-spell-trials-relic-cabinet-f7023a55","title":"Relic Cabinet (Arcane Academy and Spell Trials)","summary":"Glazed archive cabinet with orb relic and hinged brass-framed door; open and close clips.","description":"Glazed archive cabinet with orb relic and hinged brass-framed door; open and close clips. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-relic-cabinet-f7023a55","cdnUrl":"https://cdn.3dassets.dev/assets/28305/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-relic-cabinet-f7023a55","thumbnailUrl":"https://cdn.3dassets.dev/assets/28305/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28305/v1/poster.webp","blurhash":"U9BW;@tl00QT^*%MIV9G00xG?]FxxcxHR%NF","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":284796,"triangles":5340,"vertices":3619,"meshes":6,"materials":4,"textures":1,"animations":["open","close"],"boundingBox":{"min":[-0.7512131443335138,0,-0.3200029616542603],"max":[0.7512131443335138,2.1212000846862793,0.3200141169252712]},"sizeMeters":[1.502,2.121,0.64],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:14.566Z","updatedAt":"2026-09-08T02:57:14.868Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\nimport { AnimationMixer } from 'three'\n\nlet mixer\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28305/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n  mixer = new AnimationMixer(gltf.scene)\n  mixer.clipAction(gltf.animations[0]).play()\n})\n\n// Call from your render loop; deltaSeconds is time since the previous frame.\nfunction updateAssetAnimation(deltaSeconds) {\n  mixer?.update(deltaSeconds)\n}","r3f":"import { useGLTF, useAnimations } from '@react-three/drei'\nimport { useEffect } from 'react'\n\nexport function RelicCabinetArcaneAcademyAndSpellTrials(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/28305/v1/model.glb')\n  const { actions, names } = useAnimations(animations, scene)\n  useEffect(() => {\n    const action = actions[names[0]]\n    action?.reset().play()\n    return () => { action?.stop() }\n  }, [actions, names])\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28305/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28305/v1/model.glb\" alt=\"Relic Cabinet (Arcane Academy and Spell Trials)\" camera-controls auto-rotate autoplay></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28305/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.\n# Clips arrive as actions; play them from the Dope Sheet > Action Editor.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)\nvar player := model.find_child(\"AnimationPlayer\", true, false) as AnimationPlayer\nplayer.play(player.get_animation_list()[0])","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28305/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"28307","slug":"arcane-academy-and-spell-trials-wand-rack-0ce8922f","title":"Wand Rack (Arcane Academy and Spell Trials)","summary":"Five individual brass-tipped enamel training wands in a two-bar rack.","description":"Five individual brass-tipped enamel training wands in a two-bar rack. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-wand-rack-0ce8922f","cdnUrl":"https://cdn.3dassets.dev/assets/28307/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-wand-rack-0ce8922f","thumbnailUrl":"https://cdn.3dassets.dev/assets/28307/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28307/v1/poster.webp","blurhash":"U99agR%g00Ri?@%MMLIB0foy$yMxIES$tkZ~","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":296148,"triangles":6036,"vertices":4137,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.44999998807907104,-0.00001920281860262607,-0.25002898596049583],"max":[0.44999998807907104,0.8000012401118614,0.25002898596049583]},"sizeMeters":[0.9,0.8,0.5],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:15.048Z","updatedAt":"2026-09-08T02:57:15.148Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28307/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function WandRackArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28307/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28307/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28307/v1/model.glb\" alt=\"Wand Rack (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28307/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28307/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28308","slug":"arcane-academy-and-spell-trials-constellation-board-a33e88ca","title":"Constellation Board (Arcane Academy and Spell Trials)","summary":"Freestanding celestial plotting board with raised brass star markers.","description":"Freestanding celestial plotting board with raised brass star markers. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-constellation-board-a33e88ca","cdnUrl":"https://cdn.3dassets.dev/assets/28308/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-constellation-board-a33e88ca","thumbnailUrl":"https://cdn.3dassets.dev/assets/28308/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28308/v1/poster.webp","blurhash":"U27^}Z~T00OE9$~p^E00W%D%D=?a?Y-=SA0K","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":325352,"triangles":8276,"vertices":5169,"meshes":3,"materials":3,"textures":1,"animations":[],"boundingBox":{"min":[-0.875,-0.00003888600694867961,-0.0954600539270252],"max":[0.875,1.9800320396665783,0.09552456632724457]},"sizeMeters":[1.75,1.98,0.191],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:15.343Z","updatedAt":"2026-09-08T02:57:15.431Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28308/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ConstellationBoardArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28308/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28308/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28308/v1/model.glb\" alt=\"Constellation Board (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28308/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28308/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28309","slug":"arcane-academy-and-spell-trials-arcane-lantern-aee7e6ba","title":"Arcane Lantern (Arcane Academy and Spell Trials)","summary":"Crystal courtyard lamp suspended in a brass halo.","description":"Crystal courtyard lamp suspended in a brass halo. Original stylized ivory limestone, midnight enamel, brass and turquoise arcane glass. Metres, +Y up, +Z forward; ground origin on footprint. Static structural fittings; visual magic only, no gameplay, particles, collision or navigation.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-arcane-lantern-aee7e6ba","cdnUrl":"https://cdn.3dassets.dev/assets/28309/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-arcane-lantern-aee7e6ba","thumbnailUrl":"https://cdn.3dassets.dev/assets/28309/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28309/v1/poster.webp","blurhash":"U48XIG%M008_5DRk=rxa%jofMvWAn7jYb[kD","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":244484,"triangles":3088,"vertices":2068,"meshes":4,"materials":4,"textures":1,"animations":[],"boundingBox":{"min":[-0.2799600104837141,0,-0.2799600104837141],"max":[0.2799600104837141,1.850000023841858,0.2799600104837141]},"sizeMeters":[0.56,1.85,0.56],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":0,"publishedAt":"2026-09-08T02:57:15.735Z","updatedAt":"2026-09-08T02:57:15.824Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28309/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ArcaneLanternArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28309/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28309/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28309/v1/model.glb\" alt=\"Arcane Lantern (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28309/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28309/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"28311","slug":"arcane-academy-and-spell-trials-celestia-3db3a107-starter-scene","title":"Celestial Trials Courtyard (Arcane Academy and Spell Trials)","summary":"Enclosed roofed archive wings frame a furnished academy courtyard, portal training circle and complete domed observatory. Walking paths remain open between study and trial stations.","description":"Enclosed roofed archive wings frame a furnished academy courtyard, portal training circle and complete domed observatory. Walking paths remain open between study and trial stations.","status":"published","url":"https://3dassets.dev/assets/arcane-academy-and-spell-trials-celestia-3db3a107-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/28311/v1/model.glb","downloadUrl":"https://3dassets.dev/download/arcane-academy-and-spell-trials-celestia-3db3a107-starter-scene","thumbnailUrl":"https://cdn.3dassets.dev/assets/28311/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/28311/v1/poster.webp","blurhash":"UAB|Qnoc00Rj9Gt7xsRj00NGx]xa~pM{M|t7","category":{"slug":"environments","title":"Environments & Scenes"},"tags":[{"slug":"fantasy","title":"Fantasy"},{"slug":"stylized","title":"Stylized"},{"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":2811552,"triangles":168840,"vertices":115991,"meshes":113,"materials":5,"textures":1,"animations":[],"boundingBox":{"min":[-10.5,-0.00004219273342023766,-7.699957274086733],"max":[10.5,5.154999809265137,7.5]},"sizeMeters":[21,5.155,15.2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization","EXT_texture_webp"]},"aiGenerated":true,"aiModel":"Claude Fable 5.1","downloads":1,"publishedAt":"2026-09-08T02:57:17.370Z","updatedAt":"2026-09-08T04:08:16.278Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/28311/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function CelestialTrialsCourtyardArcaneAcademyAndSpellTrials(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/28311/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/28311/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/28311/v1/model.glb\" alt=\"Celestial Trials Courtyard (Arcane Academy and Spell Trials)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/28311/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/28311/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}}],"demo":null}}