{"data":{"id":"164","slug":"vertical-farm-and-hydroponics-tower","title":"Vertical Farm and Hydroponics Tower","summary":"Walk a working indoor farm: in through the airlock and gowning suite, down aisles of planted three tier racks past the rack shuttle, on to the harvest line, wash and pack, and the plant room behind it.","url":"https://3dassets.dev/demos/vertical-farm-and-hydroponics-tower","coverUrl":"https://cdn.3dassets.dev/media/vertical-farm-and-hydroponics-tower-demo-2.png","featured":true,"pack":{"slug":"vertical-farm-and-hydroponics-tower","title":"Vertical Farm and Hydroponics Tower","url":"https://3dassets.dev/packs/vertical-farm-and-hydroponics-tower","summary":"A near future vertical farm: ported three tier grow racks under LED bars, nutrient film, deep water and aeroponic systems, crops at three stages, harvest, wash and packing benches, the nutrient and air plant, a rack shuttle, and the hygienic room to put it in.","assetCount":64,"totalBytes":8932064,"starterScene":{"slug":"vertical-farm-and-hydroponics-tower-vert-765944bf-starter-scene","cdnUrl":"https://cdn.3dassets.dev/assets/38401/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vert-765944bf-starter-scene","fileSize":3678920}},"placementCount":769,"assetCount":60,"spawn":{"position":[0,0,11],"yaw":180},"publishedAt":"2026-09-12T14:55:47.782Z","updatedAt":"2026-09-12T14:55:47.783Z","description":"## What is placed\n\nA forty by thirty two metre grow room laid end to end: in through the outer and inner airlock doors, past boot wash hygiene stations, gowning benches and locker runs, then straight down the main aisle of the grow hall.\n\nSix blocks of growing run north to south either side of five walking aisles. The two blocks flanking the main aisle are three tier racks, every tier planted, cycling through lettuce, pak choi and propagation plugs, capped at both ends by rack end frames and lit by suspended LED bars down each aisle. Nutrient film channel runs fill the west blocks, deep water culture trays the east, with the aeroponic mist chamber at the far east corner and strawberry towers at the west end. The rack shuttle sits on its floor rail down the east aisle; the scissor lift stands raised beside a rack two aisles west.\n\nEast of the entrance is goods in and propagation: germination chambers, transplanting benches carrying rockwool plug trays, propagation trays under their domes, herb trays and grow trays, with crate stacks, tote stacks and trolleys behind.\n\nNorth of the hall, a harvest line of conveyor stub benches and transplanting benches with grow trays at all three crop stages, then the wash and spin station, packing benches, the pallet and stretch wrapper, crate and tote stacks, a pallet truck and the cold store door in the north wall. The plant room fills the north west corner: dosing skid, reservoir, pumps and filters, UV steriliser, reverse osmosis rack, dehumidifiers, air handling unit and carbon dioxide rack. A control corner holds the cabinets, a tablet stand and sensor poles. Service pipework follows the west and north walls and supply duct runs overhead between the bays, so the whole room reads as one installation. A mezzanine walkway and its stair run along the east wall as scenery: the visitor stays at floor level throughout.\n\nThe racks stop at three tiers on purpose. A fourth would sit above walking eye height and never be seen. The hall is open topped for the same reason: a visitor walks at floor level and a roof over it would only be a lid nobody sees.\n\n## What moves\n\nTwenty seven of the placed models carry clips, and each plays as you walk up to it. The rack shuttle traverses its rail and opens its lid. The scissor lift raises. Both airlock door pairs and the cold store door swing. Control cabinet doors, locker doors, the germination chamber, the aeroponic mist chamber, the reservoir hatch, the dehumidifier and the air handling unit open, and rack bays slide their trays out. Pallet truck, trolley and scissor lift wheels roll, the pallet truck tilts, pump, dosing and reverse osmosis rotors spin, fan blades spin, valve handwheels turn, the harvest bench roller bed spins and the wash and spin station spins its basket.\n\n## What does not move, and why\n\nWater, nutrient solution and aeroponic mist are static geometry, as are hoses, flexible pipework and cabling: a fluid or a flexible run needs a shader or a joint per element, and none of that is reachable with one rigid node transform. Screens and displays are static for the same reason, and every screen, fascia, crate stencil and tote in the pack is blank. The LED bars are emissive looking geometry, not lights: the pack embeds no lights. The plants are static geometry too, so there is no growth animation and no skinning anywhere. There are no people in the scene.\n\n## Size\n\n769 placements of 60 distinct models, about 3.8 MB of GLB across 60 files, fetched once each and cloned.\n","scene":{"version":1,"spawn":{"position":[0,0,11],"yaw":180},"ground":{"style":"none"},"environment":{"preset":"room","wallHeight":4.2,"lampHeight":4,"shadows":true},"placements":[{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-19,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-19,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-19,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-17,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-17,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-17,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-15,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-15,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-15,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-13,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-13,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-13,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-11,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-11,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-11,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-9,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-9,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-9,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-7,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-5,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-3,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-3,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[-3,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[-1,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[1,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[3,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[3,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[3,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[5,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[7,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[9,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[9,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[9,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[11,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[11,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[11,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[13,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[13,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[13,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[15,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[15,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[15,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[17,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[17,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[17,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,-15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,-13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[19,-0.12,-5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,-3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","position":[19,-0.12,13],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","position":[19,-0.12,15],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-19,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-19,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-19,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-17,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-17,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-17,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-15,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-15,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-15,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-13,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-13,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-13,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-11,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-11,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-11,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-9,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-9,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-9,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-7,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-7,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-7,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-5,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-5,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-5,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-3,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-3,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-3,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9391bf91","position":[-1,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-1,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9391bf91","position":[-1,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9391bf91","position":[1,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[1,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9391bf91","position":[1,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[3,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[3,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[3,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[5,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[5,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[5,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[7,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[7,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[7,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[9,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[9,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[9,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[11,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[11,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[11,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[13,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--60b2f3c8","position":[13,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[13,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[15,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[15,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[15,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[17,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[17,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[17,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[19,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[19,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[19,0,12.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,-15],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,-15],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,-13],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,-13],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,-11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,-11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,-9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,-9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,-7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,-7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,-5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,-5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,-3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,-3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,-1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,-1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,13],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,13],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[-20,0,15],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","position":[20,0,15],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8f001502","position":[-20,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8f001502","position":[-20,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8f001502","position":[20,0,-16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8f001502","position":[20,0,16],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-17.55,0,-4.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-17.55,0,-2.45],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-17.55,0,-0.4],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-17.55,0,1.65],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-17.55,0,3.7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-17.55,0,5.75],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c81fef7","position":[-17.55,0,7.8],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c81fef7","position":[-17.55,0,9.85],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-17.55,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-17.55,0,10.88],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-16.45,0,-4.5],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-16.45,0,-2.45],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-16.45,0,-0.4],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-16.45,0,1.65],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-16.45,0,3.7],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-16.45,0,5.75],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c81fef7","position":[-16.45,0,7.8],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c81fef7","position":[-16.45,0,9.85],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-16.45,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-16.45,0,10.88],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[-10.55,0,-4.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[-10.55,0,-2.45],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[-10.55,0,-0.4],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[-10.55,0,1.65],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[-10.55,0,3.7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-10.55,0,5.75],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-10.55,0,7.8],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-10.55,0,9.85],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-10.55,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-10.55,0,10.88],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[-9.45,0,-4.5],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[-9.45,0,-2.45],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[-9.45,0,-0.4],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[-9.45,0,1.65],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[-9.45,0,3.7],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-9.45,0,5.75],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-9.45,0,7.8],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","position":[-9.45,0,9.85],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-9.45,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-9.45,0,10.88],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[-3.55,0,-4.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[-3.55,0,-2.45],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[-3.55,0,-0.4],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[-3.55,0,1.65],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[-3.55,0,3.7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[-3.55,0,5.75],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[-3.55,0,7.8],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[-3.55,0,9.85],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-3.55,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-3.55,0,10.88],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[-2.45,0,-4.5],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[-2.45,0,-2.45],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[-2.45,0,-0.4],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[-2.45,0,1.65],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[-2.45,0,3.7],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[-2.45,0,5.75],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[-2.45,0,7.8],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[-2.45,0,9.85],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-2.45,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[-2.45,0,10.88],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[2.45,0,-4.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[2.45,0,-2.45],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[2.45,0,-0.4],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[2.45,0,1.65],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[2.45,0,3.7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[2.45,0,5.75],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[2.45,0,7.8],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[2.45,0,9.85],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[2.45,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[2.45,0,10.88],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[3.55,0,-4.5],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[3.55,0,-2.45],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[3.55,0,-0.4],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[3.55,0,1.65],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[3.55,0,3.7],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[3.55,0,5.75],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[3.55,0,7.8],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[3.55,0,9.85],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[3.55,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[3.55,0,10.88],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[9.45,0,-4.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[9.45,0,-2.45],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[9.45,0,-0.4],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[9.45,0,1.65],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[9.45,0,3.7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[9.45,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[9.45,0,4.73],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","position":[10.55,0,-4.5],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","position":[10.55,0,-2.45],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","position":[10.55,0,-0.4],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[10.55,0,1.65],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[10.55,0,3.7],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[10.55,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[10.55,0,4.73],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[16.45,0,-4.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[16.45,0,-2.45],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[16.45,0,-0.4],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--79540e5d","position":[16.45,0,1.65],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--79540e5d","position":[16.45,0,3.7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[16.45,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[16.45,0,4.73],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[17.55,0,-4.5],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[17.55,0,-2.45],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","position":[17.55,0,-0.4],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--79540e5d","position":[17.55,0,1.65],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--79540e5d","position":[17.55,0,3.7],"rotation":270},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[17.55,0,-5.53],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","position":[17.55,0,4.73],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[0,2.9,-5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[0,2.9,-3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[0,2.9,-1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[0,2.9,1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[0,2.9,3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[0,2.9,5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[0,2.9,7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[0,2.9,9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[0,2.9,11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[-6.5,2.9,-5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[-6.5,2.9,-3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[-6.5,2.9,-1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[-6.5,2.9,1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[-6.5,2.9,3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[-6.5,2.9,9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[-6.5,2.9,11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[6.5,2.9,-5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[6.5,2.9,-3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[6.5,2.9,-1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[6.5,2.9,1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[6.5,2.9,3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[6.5,2.9,5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[6.5,2.9,7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[6.5,2.9,9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","position":[6.5,2.9,11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","position":[6.5,0,-4.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","position":[6.5,0,-2.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","position":[6.5,0,-0.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","position":[6.5,0,1.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","position":[6.5,0,3.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","position":[6.5,0,5.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","position":[6.5,0,7.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fbf0240c","position":[6.5,0,3.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0f0612fa","position":[-6.5,0,6],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--e512664b","position":[-7.5,0,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0fda2c26","position":[-6.5,0,1.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0fda2c26","position":[12.5,0,2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9791e4bc","position":[-8.6,0,-11.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","position":[1.4,0,-1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","position":[-1.4,0,4.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[-1.5,0,-3.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","position":[1.5,0,6.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--4ee6be5e","position":[1.5,0,7.1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b4b33315","position":[1.5,0.29,6.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[0,0,-4],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[0,0,-2],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[0,0,0],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[0,0,2],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[0,0,4],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[0,0,6],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[0,0,8],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[0,0,10],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,-15],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,-13],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,-13],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,-11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,-11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,-9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,-9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,-7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,-7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,-5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,-5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,-3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,-3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,-1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,-1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-13.5,2.85,11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[13.5,2.85,11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-11,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-9,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-7,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-5,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-3,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[-1,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[1,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[3,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[5,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[7,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[9,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","position":[11,2.85,-6.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,-15],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,-13],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,-11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,-9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,-7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,-5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,-3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,-1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,1],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-19.5,0,11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-17,0,-15.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-15,0,-15.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-13,0,-15.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-11,0,-15.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-9,0,-15.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-7,0,-15.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-5,0,-15.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-2.5,0,-15],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-2.5,0,-13],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-2.5,0,-11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","position":[-2.5,0,-9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--403ef38f","position":[-3.2,0,14.7],"rotation":180},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--403ef38f","position":[3.2,0,14.7],"rotation":180},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ce183864","position":[-6.5,0,14.4],"rotation":180},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ce183864","position":[6.5,0,14.4],"rotation":180},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[-9,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[-11,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[-13,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[-15,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[-17,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[9,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[11,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[13,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[15,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","position":[17,0,15.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ce183864","position":[-6.5,0,13.1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ce183864","position":[6.5,0,13.1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--10af5e96","position":[8.8,1.5,12.72],"rotation":180},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--10af5e96","position":[-8.8,1.5,12.72],"rotation":180},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0fda2c26","position":[-18.5,0,14.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0fda2c26","position":[18.5,0,14.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9791e4bc","position":[-3.2,0,13.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9791e4bc","position":[3.2,0,13.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","position":[-10.5,0,13.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","position":[10.5,0,13.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[13.5,0,13.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[-13.5,0,13.3],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","position":[16.5,0,13.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","position":[-16.5,0,13.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bad08317","position":[8,0,11.3],"rotation":180},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bad08317","position":[10,0,11.3],"rotation":180},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bad08317","position":[12,0,11.3],"rotation":180},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c6f8f68b","position":[7.5,0,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c6f8f68b","position":[10,0,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c6f8f68b","position":[12.5,0,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c6f8f68b","position":[15,0,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c743416","position":[7,0.94,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9a67b0fb","position":[8,0.94,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2c8cbdc0","position":[9.4,0.94,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2c8cbdc0","position":[10.2,0.94,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9a67b0fb","position":[11,0.94,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--e7d192a7","position":[12.4,0.94,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--d9e8899e","position":[15,0.94,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--89a178a3","position":[14,0.94,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9a67b0fb","position":[14,0,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9a67b0fb","position":[14.7,0,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9a67b0fb","position":[14,0,11.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9a67b0fb","position":[14.7,0,11.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2c8cbdc0","position":[15.6,0,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2c8cbdc0","position":[15.6,0,11.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","position":[8.2,0,6.8],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","position":[9.5,0,6.8],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","position":[17.5,0,7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","position":[17.5,0,9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[17.2,0,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[18.6,0,11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c81fef7","position":[18.6,0,8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c81fef7","position":[18.6,0,5.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c743416","position":[12.4,0,6.8],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c743416","position":[13.5,0,6.8],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0a1e5cff","position":[-8,0,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c6f8f68b","position":[-4,0,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c6f8f68b","position":[4,0,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0a1e5cff","position":[7,0,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a05abe0f","position":[-4,0.94,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--d9e8899e","position":[4,0.94,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b4b33315","position":[-7.4,0.94,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9431d595","position":[-6.8,0.94,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--89a178a3","position":[7.6,0.94,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","position":[-8.4,0.94,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--4ee6be5e","position":[6.4,0.94,-8.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","position":[-1.4,0,-9.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","position":[1.4,0,-9.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","position":[-5.6,0,-9.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--4ee6be5e","position":[-4.8,0,-9.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","position":[5.2,0,-9.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b4b33315","position":[-5.6,0.29,-9.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a05abe0f","position":[-2.6,0,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--e7d192a7","position":[-1.2,0,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--d9e8899e","position":[0.2,0,-7],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[9.6,0,-8.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7d9fa93d","position":[10.6,0,-9.5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--eb5ec603","position":[4,0,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--cb54725f","position":[8,0,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--cb54725f","position":[11.2,0,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--4b86ee51","position":[15,0,-11.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b4b33315","position":[3.4,0.94,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9431d595","position":[4.4,0.94,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","position":[7.6,0.94,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--4ee6be5e","position":[11.6,0.94,-11],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[4,0,-13.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[5.6,0,-13.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[7.2,0,-13.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","position":[8.8,0,-13.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","position":[11,0,-13.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","position":[11.8,0,-13.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--4ee6be5e","position":[11.4,0,-14.1],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","position":[17.5,0,-14],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","position":[17.5,0,-12],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7d9fa93d","position":[13.6,0,-13.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","position":[2.6,0,-13.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[3,0,-12.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[5,0,-12.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[7,0,-12.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[9,0,-12.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","position":[11,0,-12.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0fda2c26","position":[13,0,-10.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9d9c89f3","position":[-17,0,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--570998b9","position":[-13,0,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--1b234730","position":[-17,0,-11.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--1b234730","position":[-14.5,0,-11.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--778d2988","position":[-12.3,0,-11.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--51e4d868","position":[-17,0,-13.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--42076014","position":[-14.6,0,-13.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--42076014","position":[-10.6,0,-13.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--e56c2636","position":[-12.5,0,-14.4],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c375a975","position":[-10.8,0,-11.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--10af5e96","position":[-6,1.5,-15.8],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","position":[-10.6,0,-9],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a615f086","position":[-4,0,-14.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a615f086","position":[-5.6,0,-14.5],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9791e4bc","position":[-2,0,-13.6],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0fda2c26","position":[-7.2,0,-13.2],"rotation":0},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fa0d5a7a","position":[19.2,0,-13],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fa0d5a7a","position":[19.2,0,-11],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fa0d5a7a","position":[19.2,0,-9],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fa0d5a7a","position":[19.2,0,-7],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fa0d5a7a","position":[19.2,0,-5],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fa0d5a7a","position":[19.2,0,-3],"rotation":90},{"asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ec5f6452","position":[19.2,0,0],"rotation":0}],"points":[{"position":[0,0,13.6],"title":"Airlock and gowning","text":"The way in: an outer and an inner airlock door pair, boot wash hygiene stations, gowning benches and locker runs. Both door pairs swing open as you reach them.","asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9391bf91"},{"position":[0,0,6],"title":"The growing aisles","text":"Three tier racks, every tier planted with lettuce, pak choi or propagation plugs under their LED bars. Three tiers is deliberate: a fourth would sit above head height and never be seen. Each bay slides its trays out.","asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62"},{"position":[6.5,0,2.5],"title":"The rack shuttle","text":"A robot shuttle traverses its floor rail between the rack rows, carrying trays to and from the bays, and opens its lid at the end of the run. The scissor lift stands a couple of aisles west, raised to the top tier.","asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fbf0240c"},{"position":[-13.5,0,2],"title":"Water culture","text":"Nutrient film channel runs down the west blocks and deep water culture trays down the east, with the aeroponic mist chamber at the far corner. The solution and the mist are static geometry.","asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9"},{"position":[11,0,9.5],"title":"Propagation","text":"Goods in and the seedling end: germination chambers, rockwool plug trays, propagation trays under their domes, herb trays and transplanting benches, with crate and tote stacks behind.","asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bad08317"},{"position":[0.5,0,-8.8],"title":"Harvest line","text":"Benches with roller conveyor stubs, transplanting benches and trolleys, with grow trays at all three crop stages and cut crop in the harvest crates.","asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0a1e5cff"},{"position":[7.5,0,-12],"title":"Wash and pack","text":"The wash and spin station, packing benches, the pallet and stretch wrapper, crate and tote stacks, the pallet truck and the cold store door in the north wall.","asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--eb5ec603"},{"position":[-13.5,0,-11.5],"title":"Plant room","text":"The dosing skid, reservoir, pumps and filters, UV steriliser, reverse osmosis rack, dehumidifiers, air handling unit and carbon dioxide rack, with pipework and duct running back to the bays.","asset":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9d9c89f3"}],"poster":{"position":[0,1.7,2.5],"lookAt":[0,0.75,-6]}},"bounds":{"min":[-22.140043338370266,-0.11996679282185323,-18.140043338370266],"max":[22.140043338370266,5.773022890090942,18.180003055278146]},"assets":[{"id":"38392","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","title":"Grow room floor tile, 2 m (Vertical Farm and Hydroponics Tower)","summary":"A 2 m resin floor tile for a controlled environment room: a 120 mm slab section with a coved edge detail and a lightly dished surface, ported on all four edges so a floor of any size tiles from it.","description":"A 2 m resin floor tile for a controlled environment room: a 120 mm slab section with a coved edge detail and a lightly dished surface, ported on all four edges so a floor of any size tiles from it. Overall 2.00 by 0.13 by 2.00 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the tile with its top face at 0.12 m, so a slab is laid by placing tiles at 2 m centres and dropping the whole floor by its own thickness. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","cdnUrl":"https://cdn.3dassets.dev/assets/38392/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--ff738c69","thumbnailUrl":"https://cdn.3dassets.dev/assets/38392/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38392/v1/poster.webp","blurhash":"U9EMLD-;00WB-;j[M{of00IU~qRj9FfPt7Rj","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":2304,"triangles":24,"vertices":56,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-1,0.000033207178146768546,-1],"max":[1,0.127966798901527,1]},"sizeMeters":[2,0.128,2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:27.327Z","updatedAt":"2026-09-12T14:36:27.471Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38392/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrowRoomFloorTile2MVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38392/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38392/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38392/v1/model.glb\" alt=\"Grow room floor tile, 2 m (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38392/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38392/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38393","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","title":"Grow room floor tile, walkway marked (Vertical Farm and Hydroponics Tower)","summary":"The same 2 m floor tile with a yellow walkway edge painted down one side, which is how the safe route past the rack aisles and the rail is set out.","description":"The same 2 m floor tile with a yellow walkway edge painted down one side, which is how the safe route past the rack aisles and the rail is set out. Overall 2.00 by 0.13 by 2.00 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the tile with its top face at 0.12 m, so a slab is laid by placing tiles at 2 m centres and dropping the whole floor by its own thickness. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","cdnUrl":"https://cdn.3dassets.dev/assets/38393/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--5df713c9","thumbnailUrl":"https://cdn.3dassets.dev/assets/38393/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38393/v1/poster.webp","blurhash":"U8EfTe?Z00ax-;ayM{oe00D+~qM|4noft8Rn","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":3428,"triangles":48,"vertices":112,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1,0.000033207178146768546,-1],"max":[1,0.13195318728867284,1]},"sizeMeters":[2,0.132,2],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:27.815Z","updatedAt":"2026-09-12T14:36:27.926Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38393/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrowRoomFloorTileWalkwayMarkedVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38393/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38393/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38393/v1/model.glb\" alt=\"Grow room floor tile, walkway marked (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38393/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38393/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38394","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","title":"Grow room wall panel, 2 m (Vertical Farm and Hydroponics Tower)","summary":"A 2 m hygienic wall panel 3.2 m tall: an insulated white cassette with its jointing trim, a coved skirting at the foot and a capping rail at the head, ported at both ends so a wall run repeats.","description":"A 2 m hygienic wall panel 3.2 m tall: an insulated white cassette with its jointing trim, a coved skirting at the foot and a capping rail at the head, ported at both ends so a wall run repeats. Overall 2.00 by 3.20 by 0.17 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the panel on the floor, on the wall centre line, so panels lay out at 2 m centres. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","cdnUrl":"https://cdn.3dassets.dev/assets/38394/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--8c9e3e7d","thumbnailUrl":"https://cdn.3dassets.dev/assets/38394/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38394/v1/poster.webp","blurhash":"U8EfWr?b0000Rlxut6D%00Rj~qxut7xuj=IU","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":4820,"triangles":60,"vertices":140,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1.0012388950168938,0,-0.08496353164723144],"max":[1.0012388950168938,3.201200008392334,0.08496353164723144]},"sizeMeters":[2.002,3.201,0.17],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:28.684Z","updatedAt":"2026-09-12T14:36:28.789Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38394/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrowRoomWallPanel2MVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38394/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38394/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38394/v1/model.glb\" alt=\"Grow room wall panel, 2 m (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38394/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38394/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38389","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9391bf91","title":"Airlock door pair (Vertical Farm and Hydroponics Tower)","summary":"A 2 m wall module holding the airlock: twin swing leaves in a stainless frame with round vision panels, kick plates, a blank interlock box beside them and a warning lamp over the head. Both leaves swing.","description":"A 2 m wall module holding the airlock: twin swing leaves in a stainless frame with round vision panels, kick plates, a blank interlock box beside them and a warning lamp over the head. Both leaves swing. Overall 2.00 by 3.20 by 0.26 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the module on the floor, on the wall centre line, so it drops straight into a 2 m wall run. The interlock box and the lamp lens are solid and blank; the two leaves swing. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--9391bf91","cdnUrl":"https://cdn.3dassets.dev/assets/38389/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--9391bf91","thumbnailUrl":"https://cdn.3dassets.dev/assets/38389/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38389/v1/poster.webp","blurhash":"U7FY+Aj[00WC~q?b9F0000t7?bM{tR%MV@D%","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":14980,"triangles":216,"vertices":474,"meshes":11,"materials":5,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.9999328741793135,0,-0.08000732214009099],"max":[0.9999328741793135,3.200000047683716,0.18000305527814647]},"sizeMeters":[2,3.2,0.26],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:25.020Z","updatedAt":"2026-09-12T14:36:25.133Z","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/38389/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 AirlockDoorPairVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38389/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/38389/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38389/v1/model.glb\" alt=\"Airlock door pair (Vertical Farm and Hydroponics Tower)\" 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/38389/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/38389/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38390","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--60b2f3c8","title":"Cold store door (Vertical Farm and Hydroponics Tower)","summary":"A 2 m wall module with the cold store door in it: a thick insulated leaf on strap hinges with a safety release handle, a blank temperature display over the head, a strip curtain header and a kick plate.","description":"A 2 m wall module with the cold store door in it: a thick insulated leaf on strap hinges with a safety release handle, a blank temperature display over the head, a strip curtain header and a kick plate. Overall 2.00 by 3.20 by 0.36 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the module on the floor, on the wall centre line. The strip curtain behind the opening is modelled solid: hanging strips are flexible, which no rigid node transform reaches. The display is blank. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--60b2f3c8","cdnUrl":"https://cdn.3dassets.dev/assets/38390/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--60b2f3c8","thumbnailUrl":"https://cdn.3dassets.dev/assets/38390/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38390/v1/poster.webp","blurhash":"U8E:0o9F00?b~qxu4nD%00xu_3M{-;t7IUM{","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":17228,"triangles":276,"vertices":629,"meshes":7,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.9999328741793135,0,-0.09995422016353003],"max":[0.9999328741793135,3.200000047683716,0.2650038069158417]},"sizeMeters":[2,3.2,0.365],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:26.760Z","updatedAt":"2026-09-12T14:36:26.859Z","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/38390/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 ColdStoreDoorVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38390/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/38390/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38390/v1/model.glb\" alt=\"Cold store door (Vertical Farm and Hydroponics Tower)\" 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/38390/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/38390/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38395","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--8f001502","title":"Grow room corner post (Vertical Farm and Hydroponics Tower)","summary":"The corner post that closes two wall runs at a right angle: a 3.2 m column the depth of the panel system with coved returns both ways and a capping cap, ported on the two faces a panel meets.","description":"The corner post that closes two wall runs at a right angle: a 3.2 m column the depth of the panel system with coved returns both ways and a capping cap, ported on the two faces a panel meets. Overall 0.28 by 3.20 by 0.28 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the post's footprint and all four ports sit on it, one facing each way, so the post takes a wall run from any two sides and the runs land on its centre line. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--8f001502","cdnUrl":"https://cdn.3dassets.dev/assets/38395/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--8f001502","thumbnailUrl":"https://cdn.3dassets.dev/assets/38395/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38395/v1/poster.webp","blurhash":"U29@S5?v0000xvfQM{j@00j[~qayxufQRij[","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":3784,"triangles":36,"vertices":84,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.14004333837026423,0,-0.14004333837026423],"max":[0.14004333837026423,3.201191093835293,0.14004333837026423]},"sizeMeters":[0.28,3.201,0.28],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:29.761Z","updatedAt":"2026-09-12T14:36:33.275Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38395/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrowRoomCornerPostVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38395/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38395/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38395/v1/model.glb\" alt=\"Grow room corner post (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38395/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38395/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38343","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","title":"Nutrient film channel run, 2 m (Vertical Farm and Hydroponics Tower)","summary":"A 2 m nutrient film bench: four white NFT channels falling gently to a return manifold on a stainless stand at 0.85 m, planted with lettuce on a 250 mm pitch, with the feed pipe and drain elbow modelled at both ends.","description":"A 2 m nutrient film bench: four white NFT channels falling gently to a return manifold on a stainless stand at 0.85 m, planted with lettuce on a 250 mm pitch, with the feed pipe and drain elbow modelled at both ends. Overall 2.06 by 1.04 by 0.95 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the stand's footprint; the channel tops sit at 0.9 m, which is the working height the benches in this pack share. The solution in the channel, the feed pipe and the drain elbow are modelled solid: flowing water needs a shader, not a node transform. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","cdnUrl":"https://cdn.3dassets.dev/assets/38343/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--b26a52d9","thumbnailUrl":"https://cdn.3dassets.dev/assets/38343/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38343/v1/poster.webp","blurhash":"UNCGugbHDkt7_LxuIVRj4nxuoyMy4Uawx@WC","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":135076,"triangles":3336,"vertices":6902,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-1.034999966621399,-0.00003262944743487317,-0.4632443419952986],"max":[1.0299999713897705,1.043935349857483,0.48324566402631974]},"sizeMeters":[2.065,1.044,0.946],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:53.565Z","updatedAt":"2026-09-12T14:35:53.690Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38343/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function NutrientFilmChannelRun2MVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38343/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38343/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38343/v1/model.glb\" alt=\"Nutrient film channel run, 2 m (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38343/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38343/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38355","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c81fef7","title":"Strawberry growing tower (Vertical Farm and Hydroponics Tower)","summary":"A 2 m vertical strawberry tower: stacked white planting pots on a central column with the plants set out round each stage, fruit hanging over the pot lips, a drip line down the column and a catch tray at the foot.","description":"A 2 m vertical strawberry tower: stacked white planting pots on a central column with the plants set out round each stage, fruit hanging over the pot lips, a drip line down the column and a catch tray at the foot. Overall 0.68 by 2.04 by 0.68 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the catch tray; the tower stands free and needs no fixing. The drip line, the solution in the catch tray and the fruit are solid geometry and do not move. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--6c81fef7","cdnUrl":"https://cdn.3dassets.dev/assets/38355/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--6c81fef7","thumbnailUrl":"https://cdn.3dassets.dev/assets/38355/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38355/v1/poster.webp","blurhash":"U5ATo_%M008{_2ah9Goe00Rj~q%La$f#awj1","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":95992,"triangles":2232,"vertices":4769,"meshes":8,"materials":8,"textures":0,"animations":[],"boundingBox":{"min":[-0.3400000035762787,0.000008393905002512803,-0.3400000035762787],"max":[0.3400000035762787,2.0399999618530273,0.3400000035762787]},"sizeMeters":[0.68,2.04,0.68],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:02.169Z","updatedAt":"2026-09-12T14:36:02.290Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38355/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function StrawberryGrowingTowerVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38355/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38355/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38355/v1/model.glb\" alt=\"Strawberry growing tower (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38355/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38355/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38342","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","title":"Grow rack end frame (Vertical Farm and Hydroponics Tower)","summary":"The closing end frame for a rack row: two uprights, three tier rails, a diagonal brace and a blank row plate, 1 m deep and 2.55 m tall, ported on one face so it caps a run of bays.","description":"The closing end frame for a rack row: two uprights, three tier rails, a diagonal brace and a blank row plate, 1 m deep and 2.55 m tall, ported on one face so it caps a run of bays. Overall 0.10 by 2.55 by 1.02 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin sits on the frame's own centre line and its port is on that line, so it stands exactly on the last bay's end port, 1 m from that bay's centre. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","cdnUrl":"https://cdn.3dassets.dev/assets/38342/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--a4d07f6a","thumbnailUrl":"https://cdn.3dassets.dev/assets/38342/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38342/v1/poster.webp","blurhash":"U16[5Q-p004.yCM{Dj.800V@~qx]IUIU%M_3","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":6020,"triangles":108,"vertices":252,"meshes":1,"materials":1,"textures":0,"animations":[],"boundingBox":{"min":[-0.04996185092889354,0,-0.5099299504853192],"max":[0.04996185092889354,2.549999952316284,0.5099299504853192]},"sizeMeters":[0.1,2.55,1.02],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:53.574Z","updatedAt":"2026-09-12T14:35:53.712Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38342/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrowRackEndFrameVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38342/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38342/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38342/v1/model.glb\" alt=\"Grow rack end frame (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38342/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38342/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38339","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","title":"Three tier grow rack bay, planted with lettuce (Vertical Farm and Hydroponics Tower)","summary":"The same 2 m growing bay with all three tiers planted: twelve heads of loose leaf lettuce a tier, spaced on the real 300 mm pitch so the tray reads as separate plants from above. The middle tray still pulls out with its crop.","description":"The same 2 m growing bay with all three tiers planted: twelve heads of loose leaf lettuce a tier, spaced on the real 300 mm pitch so the tray reads as separate plants from above. The middle tray still pulls out with its crop. Overall 2.02 by 2.55 by 1.02 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The rack frame, the decks and the fixed tier trays are solid, the LED bars are emissive looking geometry with no light source in the file, and the crop is static: there is no growth animation and no skinning anywhere in this pack. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","cdnUrl":"https://cdn.3dassets.dev/assets/38339/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--2feb4f62","thumbnailUrl":"https://cdn.3dassets.dev/assets/38339/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38339/v1/poster.webp","blurhash":"UDCsv?xu00n,~qxu9FM{DQjux[WAt7t7WANF","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":160712,"triangles":3996,"vertices":8273,"meshes":6,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-1.0100932151582145,0,-0.5099299504853192],"max":[1.0100932151582145,2.549999952316284,0.5099299504853192]},"sizeMeters":[2.02,2.55,1.02],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:50.576Z","updatedAt":"2026-09-12T14:35:50.705Z","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/38339/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 ThreeTierGrowRackBayPlantedWithLettuceVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38339/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/38339/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38339/v1/model.glb\" alt=\"Three tier grow rack bay, planted with lettuce (Vertical Farm and Hydroponics Tower)\" 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/38339/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/38339/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38338","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","title":"Three tier grow rack bay, planted with pak choi (Vertical Farm and Hydroponics Tower)","summary":"The 2 m growing bay planted with upright pak choi, whose pale stems and steep leaves give a row of racks a second crop shape without a second model family. Three planted tiers, middle tray on runners.","description":"The 2 m growing bay planted with upright pak choi, whose pale stems and steep leaves give a row of racks a second crop shape without a second model family. Three planted tiers, middle tray on runners. Overall 2.02 by 2.55 by 1.02 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The rack frame, the decks and the fixed tier trays are solid, the LED bars are emissive looking geometry with no light source in the file, and the crop is static: there is no growth animation and no skinning anywhere in this pack. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","cdnUrl":"https://cdn.3dassets.dev/assets/38338/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--c15e6373","thumbnailUrl":"https://cdn.3dassets.dev/assets/38338/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38338/v1/poster.webp","blurhash":"UDCspztR00oM~qxu9FM{Dij[x[WBt7t7RjNF","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":146944,"triangles":3564,"vertices":7409,"meshes":7,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-1.0100932151582145,0,-0.5099299504853192],"max":[1.0100932151582145,2.549999952316284,0.5099299504853192]},"sizeMeters":[2.02,2.55,1.02],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:50.579Z","updatedAt":"2026-09-12T14:35:50.711Z","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/38338/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 ThreeTierGrowRackBayPlantedWithPakChoiVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38338/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/38338/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38338/v1/model.glb\" alt=\"Three tier grow rack bay, planted with pak choi (Vertical Farm and Hydroponics Tower)\" 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/38338/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/38338/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38341","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","title":"Three tier grow rack bay, propagation plugs (Vertical Farm and Hydroponics Tower)","summary":"The 2 m growing bay set up for propagation: twenty four rockwool plugs a tier under the LED bars, each with a seedling just through, which is what the first week of a crop cycle looks like.","description":"The 2 m growing bay set up for propagation: twenty four rockwool plugs a tier under the LED bars, each with a seedling just through, which is what the first week of a crop cycle looks like. Overall 2.02 by 2.55 by 1.02 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The rack frame, the decks and the fixed tier trays are solid, the LED bars are emissive looking geometry with no light source in the file, and the crop is static: there is no growth animation and no skinning anywhere in this pack. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","cdnUrl":"https://cdn.3dassets.dev/assets/38341/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--82348d72","thumbnailUrl":"https://cdn.3dassets.dev/assets/38341/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38341/v1/poster.webp","blurhash":"UDC%Eaxu00oL~qxu9FM{9Fj[%MWBt7t7RjNF","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":334460,"triangles":8316,"vertices":17345,"meshes":7,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-1.0100932151582145,0,-0.5099299504853192],"max":[1.0100932151582145,2.549999952316284,0.5099299504853192]},"sizeMeters":[2.02,2.55,1.02],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:50.662Z","updatedAt":"2026-09-12T14:35:50.771Z","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/38341/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 ThreeTierGrowRackBayPropagationPlugsVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38341/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/38341/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38341/v1/model.glb\" alt=\"Three tier grow rack bay, propagation plugs (Vertical Farm and Hydroponics Tower)\" 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/38341/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/38341/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38345","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","title":"Deep water culture tray (Vertical Farm and Hydroponics Tower)","summary":"A deep water culture tank on a stainless stand: a 1.8 m by 0.9 m pond 300 mm deep with the solution surface modelled, a white floating raft drilled on a 300 mm grid, twelve heads of lettuce in it and an air line down one side.","description":"A deep water culture tank on a stainless stand: a 1.8 m by 0.9 m pond 300 mm deep with the solution surface modelled, a white floating raft drilled on a 300 mm grid, twelve heads of lettuce in it and an air line down one side. Overall 1.84 by 0.93 by 0.99 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the stand's footprint and the raft sits at 0.78 m, level with the channel benches. The solution, the raft and the air line are solid geometry; nothing about a body of still water is reachable with a rigid node transform. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","cdnUrl":"https://cdn.3dassets.dev/assets/38345/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--190f4dd3","thumbnailUrl":"https://cdn.3dassets.dev/assets/38345/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38345/v1/poster.webp","blurhash":"UB9aW^%LDjV__M%fMyRQ00tQxtM|4UM{%eWA","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":62652,"triangles":1452,"vertices":3030,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-0.9200000166893005,-1.5816959358927463e-7,-0.5200262315787092],"max":[0.9200000166893005,0.9314285516211369,0.4700656233226194]},"sizeMeters":[1.84,0.931,0.99],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:53.581Z","updatedAt":"2026-09-12T14:35:53.704Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38345/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function DeepWaterCultureTrayVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38345/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38345/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38345/v1/model.glb\" alt=\"Deep water culture tray (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38345/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38345/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38344","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--79540e5d","title":"Aeroponic mist chamber (Vertical Farm and Hydroponics Tower)","summary":"A sealed aeroponic root chamber 1.6 m by 1 m on a stand, with a hinged access door, two misting lines on their manifold inside, a bare root curtain hanging from the lid grid and a collection sump with a return fitting.","description":"A sealed aeroponic root chamber 1.6 m by 1 m on a stand, with a hinged access door, two misting lines on their manifold inside, a bare root curtain hanging from the lid grid and a collection sump with a return fitting. Overall 1.60 by 1.35 by 1.06 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The mist, the solution in the sump, the nozzles and the root curtain are modelled solid: an atomised spray is a particle effect, not geometry a node transform can drive. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--79540e5d","cdnUrl":"https://cdn.3dassets.dev/assets/38344/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--79540e5d","thumbnailUrl":"https://cdn.3dassets.dev/assets/38344/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38344/v1/poster.webp","blurhash":"UbFiV]IU9Eof~qWBIUWBITxuWVWBIUt7Rjay","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":49952,"triangles":1016,"vertices":2325,"meshes":8,"materials":6,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.800000011920929,-0.000034942212974897746,-0.49996643708965677],"max":[0.800000011920929,1.3500610608617194,0.5650028670691271]},"sizeMeters":[1.6,1.35,1.065],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:53.619Z","updatedAt":"2026-09-12T14:35:53.728Z","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/38344/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 AeroponicMistChamberVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38344/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/38344/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38344/v1/model.glb\" alt=\"Aeroponic mist chamber (Vertical Farm and Hydroponics Tower)\" 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/38344/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/38344/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38397","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","title":"LED grow bar fixture (Vertical Farm and Hydroponics Tower)","summary":"A single 1.8 m LED grow bar: an extruded aluminium body with end caps, a magenta emitting face, the driver box on top and two hanger eyes. Emissive looking geometry only, with no light source in the file.","description":"A single 1.8 m LED grow bar: an extruded aluminium body with end caps, a magenta emitting face, the driver box on top and two hanger eyes. Emissive looking geometry only, with no light source in the file. Overall 1.83 by 0.14 by 0.10 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, with a free origin as described below. The origin is at the centre of the fixture's mounting face on top, because a grow bar is hung rather than stood: place it at the height it hangs at. The bar carries no moving part, and the pack embeds no lights: the magenta face is emissive material. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","cdnUrl":"https://cdn.3dassets.dev/assets/38397/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--5e10b0ad","thumbnailUrl":"https://cdn.3dassets.dev/assets/38397/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38397/v1/poster.webp","blurhash":"U8Bf@R%24nxutQ~Xt7IU00NG~qRjMy00Io_3","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":6716,"triangles":84,"vertices":196,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.9150000214576721,-0.07195736440569667,-0.05004059079110533],"max":[0.9150000214576721,0.06998718041338503,0.05004059079110533]},"sizeMeters":[1.83,0.142,0.1],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:32.761Z","updatedAt":"2026-09-12T14:36:33.515Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38397/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LEDGrowBarFixtureVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38397/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38397/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38397/v1/model.glb\" alt=\"LED grow bar fixture (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38397/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38397/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38379","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","title":"Shuttle rail run, 2 m (Vertical Farm and Hydroponics Tower)","summary":"A 2 m section of the aisle rail the rack shuttle runs on: two capped rails on sleepers set in the slab, a yellow keep clear stripe either side and a ported end so the run repeats down an aisle.","description":"A 2 m section of the aisle rail the rack shuttle runs on: two capped rails on sleepers set in the slab, a yellow keep clear stripe either side and a ported end so the run repeats down an aisle. Overall 2.00 by 0.11 by 1.18 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the section on the slab; the rail heads stand 110 mm proud. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","cdnUrl":"https://cdn.3dassets.dev/assets/38379/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--7085c4a9","thumbnailUrl":"https://cdn.3dassets.dev/assets/38379/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38379/v1/poster.webp","blurhash":"U4AJ}|-;00WH?I%3axW900IV_MRi0JISIpIc","category":{"slug":"roads-infrastructure","title":"Roads & Infrastructure"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":6844,"triangles":108,"vertices":252,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1,-0.000025177397788667816,-0.5900662308497145],"max":[1,0.11003021339888705,0.5900662308497145]},"sizeMeters":[2,0.11,1.18],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:18.734Z","updatedAt":"2026-09-12T14:36:18.838Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38379/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function ShuttleRailRun2MVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38379/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38379/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38379/v1/model.glb\" alt=\"Shuttle rail run, 2 m (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38379/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38379/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38380","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fbf0240c","title":"Rack shuttle robot on rail (Vertical Farm and Hydroponics Tower)","summary":"An automated tray shuttle on its own 2 m rail section: a low carriage with guide rollers, a telescopic transfer deck carrying a grow tray and a blank status panel. The carriage runs the rail and the transfer flap at the rail end lifts.","description":"An automated tray shuttle on its own 2 m rail section: a low carriage with guide rollers, a telescopic transfer deck carrying a grow tray and a blank status panel. The carriage runs the rail and the transfer flap at the rail end lifts. Overall 2.00 by 0.52 by 1.18 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the rail section, so the shuttle laces straight into a rail run. The carriage rests at the left hand end of its travel. The guide rollers, the drive belt and the status panel are modelled solid and the panel is blank. The carriage and its tray are one node: it runs the rail, and its wheels do not turn separately. Rigid node-transform clips: traverse-open, traverse-close, lid-open and lid-close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--fbf0240c","cdnUrl":"https://cdn.3dassets.dev/assets/38380/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--fbf0240c","thumbnailUrl":"https://cdn.3dassets.dev/assets/38380/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38380/v1/poster.webp","blurhash":"U5B3=^-:00aQ9d%gs*IA00D*?wbu^cDhtS%h","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":38576,"triangles":764,"vertices":1627,"meshes":11,"materials":7,"textures":0,"animations":["traverse-open","traverse-close","lid-open","lid-close"],"boundingBox":{"min":[-1,-0.000025177397788667816,-0.5900662308497145],"max":[1.0000033752899649,0.5185278332348938,0.5900662308497145]},"sizeMeters":[2,0.519,1.18],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:19.289Z","updatedAt":"2026-09-12T14:36:19.397Z","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/38380/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 RackShuttleRobotOnRailVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38380/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/38380/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38380/v1/model.glb\" alt=\"Rack shuttle robot on rail (Vertical Farm and Hydroponics Tower)\" 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/38380/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/38380/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38382","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0f0612fa","title":"Scissor lift work platform, raised (Vertical Farm and Hydroponics Tower)","summary":"The same scissor lift at full height with the stack extended and the deck at 2.6 m, for servicing the top tier of a rack or the duct run. Wheels turn and the deck gate swings; the linkage is baked in the raised pose.","description":"The same scissor lift at full height with the stack extended and the deck at 2.6 m, for servicing the top tier of a rack or the duct run. Wheels turn and the deck gate swings; the linkage is baked in the raised pose. Overall 1.54 by 3.77 by 0.96 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The scissor linkage is solid in its raised pose for the reason the stowed model gives. Rigid node-transform clips: open, close and wheel-roll. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--0f0612fa","cdnUrl":"https://cdn.3dassets.dev/assets/38382/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--0f0612fa","thumbnailUrl":"https://cdn.3dassets.dev/assets/38382/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38382/v1/poster.webp","blurhash":"U39QjS%f008{N$tR$^Mxx_ofMwRk07s;~QIo","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":28548,"triangles":680,"vertices":1454,"meshes":14,"materials":4,"textures":0,"animations":["open","close","wheel-roll"],"boundingBox":{"min":[-0.7699306483533154,0,-0.4799999952316284],"max":[0.7699306483533154,3.7730228900909424,0.4799999952316284]},"sizeMeters":[1.54,3.773,0.96],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:21.012Z","updatedAt":"2026-09-12T14:36:21.121Z","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/38382/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 ScissorLiftWorkPlatformRaisedVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38382/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/38382/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38382/v1/model.glb\" alt=\"Scissor lift work platform, raised (Vertical Farm and Hydroponics Tower)\" 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/38382/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/38382/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38381","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--e512664b","title":"Scissor lift work platform, stowed (Vertical Farm and Hydroponics Tower)","summary":"A compact electric scissor lift stowed: a yellow chassis on four solid tyres, a two stage scissor stack, a guarded work deck with a swinging entry gate and a blank control box on the rail.","description":"A compact electric scissor lift stowed: a yellow chassis on four solid tyres, a two stage scissor stack, a guarded work deck with a swinging entry gate and a blank control box on the rail. Overall 1.54 by 1.97 by 0.96 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The scissor linkage is modelled solid and does not extend: a crossed linkage needs a joint per arm, and this library animates rigid node transforms only. The raised variant of this model is the extended state; the wheels turn and the deck gate swings. Rigid node-transform clips: open, close and wheel-roll. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--e512664b","cdnUrl":"https://cdn.3dassets.dev/assets/38381/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--e512664b","thumbnailUrl":"https://cdn.3dassets.dev/assets/38381/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38381/v1/poster.webp","blurhash":"U9Bz2it800WT4_t6-lM|03Rk?Yf9~St7D+RQ","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":28448,"triangles":680,"vertices":1454,"meshes":14,"materials":4,"textures":0,"animations":["open","close","wheel-roll"],"boundingBox":{"min":[-0.7699773139915341,0,-0.4799999952316284],"max":[0.7699773139915341,1.9726999998092651,0.4799999952316284]},"sizeMeters":[1.54,1.973,0.96],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:18.454Z","updatedAt":"2026-09-12T14:36:18.570Z","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/38381/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 ScissorLiftWorkPlatformStowedVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38381/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/38381/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38381/v1/model.glb\" alt=\"Scissor lift work platform, stowed (Vertical Farm and Hydroponics Tower)\" 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/38381/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/38381/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38377","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0fda2c26","title":"Environment sensor pole (Vertical Farm and Hydroponics Tower)","summary":"A 2.4 m sensor pole on a weighted foot: a radiation shielded temperature and humidity head, a carbon dioxide head, a light sensor on its arm and a junction box with the cable entries, all blank.","description":"A 2.4 m sensor pole on a weighted foot: a radiation shielded temperature and humidity head, a carbon dioxide head, a light sensor on its arm and a junction box with the cable entries, all blank. Overall 0.48 by 2.40 by 0.44 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The cabling is modelled solid and the pole carries no moving part. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--0fda2c26","cdnUrl":"https://cdn.3dassets.dev/assets/38377/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--0fda2c26","thumbnailUrl":"https://cdn.3dassets.dev/assets/38377/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38377/v1/poster.webp","blurhash":"U26t]:%M004ns-xuR+9Z0Ka}_3n%aKIUg3_3","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":20788,"triangles":400,"vertices":901,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.21998580212551894,0,-0.21998580212551894],"max":[0.26499998569488525,2.4000000953674316,0.21998580212551894]},"sizeMeters":[0.485,2.4,0.44],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:16.682Z","updatedAt":"2026-09-12T14:36:16.799Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38377/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function EnvironmentSensorPoleVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38377/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38377/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38377/v1/model.glb\" alt=\"Environment sensor pole (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38377/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38377/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38378","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9791e4bc","title":"Monitoring tablet on a stand (Vertical Farm and Hydroponics Tower)","summary":"A floor stand with a tablet at chest height on a tilting bracket, its screen blank and dark, a cable clip down the column and a weighted disc foot, as a grower keeps beside the packing line.","description":"A floor stand with a tablet at chest height on a tilting bracket, its screen blank and dark, a cable clip down the column and a weighted disc foot, as a grower keeps beside the packing line. Overall 0.52 by 1.35 by 0.51 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The tablet is fixed in its bracket and the screen carries no content of any kind. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--9791e4bc","cdnUrl":"https://cdn.3dassets.dev/assets/38378/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--9791e4bc","thumbnailUrl":"https://cdn.3dassets.dev/assets/38378/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38378/v1/poster.webp","blurhash":"U15X[Y%N009D00av~qak%Ot8n#RNIUob%2Ro","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":9372,"triangles":148,"vertices":333,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.2600287505584026,0,-0.25344626498141587],"max":[0.2600287505584026,1.350204726833174,0.25344626498141587]},"sizeMeters":[0.52,1.35,0.507],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:18.254Z","updatedAt":"2026-09-12T14:36:18.353Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38378/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MonitoringTabletOnAStandVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38378/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38378/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38378/v1/model.glb\" alt=\"Monitoring tablet on a stand (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38378/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38378/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38384","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","title":"Tray trolley (Vertical Farm and Hydroponics Tower)","summary":"A six shelf tray trolley on braked castors: grow trays at half and full crop on the shelves, a push handle at each end and a bumper rail round the base. Every shelf tray runs out on its channels.","description":"A six shelf tray trolley on braked castors: grow trays at half and full crop on the shelves, a push handle at each end and a bumper rail round the base. Every shelf tray runs out on its channels. Overall 0.94 by 1.69 by 0.70 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The frame, the handles and the castor brakes are solid; the six trays slide out and the castors turn. Rigid node-transform clips: open, close and wheel-roll. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","cdnUrl":"https://cdn.3dassets.dev/assets/38384/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--6e684ade","thumbnailUrl":"https://cdn.3dassets.dev/assets/38384/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38384/v1/poster.webp","blurhash":"U8AwM6%f00IU~qt79FWB00M{.7xuxuj[M{a_","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":88476,"triangles":2536,"vertices":5298,"meshes":19,"materials":3,"textures":0,"animations":["open","close","wheel-roll"],"boundingBox":{"min":[-0.4699999988079071,-7.450580569168253e-10,-0.3475524274244821],"max":[0.4699999988079071,1.690000057220459,0.3475524274244821]},"sizeMeters":[0.94,1.69,0.695],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:21.546Z","updatedAt":"2026-09-12T14:36:21.654Z","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/38384/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 TrayTrolleyVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38384/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/38384/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38384/v1/model.glb\" alt=\"Tray trolley (Vertical Farm and Hydroponics Tower)\" 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/38384/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/38384/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38359","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","title":"Harvest crate stack (Vertical Farm and Hydroponics Tower)","summary":"Seven harvest crates staged between cuts: five on a low dolly, cropped at the bottom and empty above, with a pair more stood on the floor alongside.","description":"Seven harvest crates staged between cuts: five on a low dolly, cropped at the bottom and empty above, with a pair more stood on the floor alongside. Overall 1.26 by 1.53 by 0.50 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the dolly's footprint. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","cdnUrl":"https://cdn.3dassets.dev/assets/38359/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--85dadfbd","thumbnailUrl":"https://cdn.3dassets.dev/assets/38359/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38359/v1/poster.webp","blurhash":"UEGSDh~q0000WA_3t7004nD%xu%M?bNGIUof","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":77308,"triangles":1808,"vertices":3900,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.3399929683432099,0,-0.23998725477033173],"max":[0.920004032822143,1.534999966621399,0.26381368747769296]},"sizeMeters":[1.26,1.535,0.504],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:05.109Z","updatedAt":"2026-09-12T14:36:05.237Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38359/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HarvestCrateStackVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38359/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38359/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38359/v1/model.glb\" alt=\"Harvest crate stack (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38359/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38359/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38357","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","title":"Harvest crate (Vertical Farm and Hydroponics Tower)","summary":"A single vented harvest crate 600 by 400 by 290 mm with moulded hand holds and a stacking rim, filled with cut lettuce. The crate face is blank: no grower, packer or retailer mark anywhere.","description":"A single vented harvest crate 600 by 400 by 290 mm with moulded hand holds and a stacking rim, filled with cut lettuce. The crate face is blank: no grower, packer or retailer mark anywhere. Overall 0.60 by 0.28 by 0.42 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the crate's footprint; crates stack on 290 mm centres. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","cdnUrl":"https://cdn.3dassets.dev/assets/38357/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--9742a251","thumbnailUrl":"https://cdn.3dassets.dev/assets/38357/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38357/v1/poster.webp","blurhash":"U8IOkN~q00xv?b?bogM{00D%NEIUMya#In9E","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":29036,"triangles":660,"vertices":1372,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.30000001192092896,0.000011060476597768432,-0.21498398105438662],"max":[0.30000001192092896,0.2749889454838667,0.2049248438206515]},"sizeMeters":[0.6,0.275,0.42],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:02.526Z","updatedAt":"2026-09-12T14:36:02.629Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38357/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HarvestCrateVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38357/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38357/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38357/v1/model.glb\" alt=\"Harvest crate (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38357/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38357/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38358","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--4ee6be5e","title":"Harvest crate, empty (Vertical Farm and Hydroponics Tower)","summary":"The same vented harvest crate washed and empty, ready to go back to the line. Blank faces, stacking rim, moulded hand holds.","description":"The same vented harvest crate washed and empty, ready to go back to the line. Blank faces, stacking rim, moulded hand holds. Overall 0.60 by 0.28 by 0.41 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--4ee6be5e","cdnUrl":"https://cdn.3dassets.dev/assets/38358/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--4ee6be5e","thumbnailUrl":"https://cdn.3dassets.dev/assets/38358/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38358/v1/poster.webp","blurhash":"U9Ihpl~q00tR?b-;ofM{00D%bHIUIojtM{9F","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":5888,"triangles":84,"vertices":196,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.30000001192092896,0.000011060476597768432,-0.21498398105438662],"max":[0.30000001192092896,0.2749889454838667,0.20001221535156147]},"sizeMeters":[0.6,0.275,0.415],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:04.834Z","updatedAt":"2026-09-12T14:36:04.942Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38358/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HarvestCrateEmptyVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38358/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38358/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38358/v1/model.glb\" alt=\"Harvest crate, empty (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38358/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38358/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38352","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b4b33315","title":"Leafy crop cluster, loose leaf lettuce (Vertical Farm and Hydroponics Tower)","summary":"Four heads of loose leaf lettuce in a 440 mm carry tray, cut and ready: broad shallow rosettes on a wide spread, the commonest shape in a leafy greens farm.","description":"Four heads of loose leaf lettuce in a 440 mm carry tray, cut and ready: broad shallow rosettes on a wide spread, the commonest shape in a leafy greens farm. Overall 0.46 by 0.21 by 0.47 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the carry tray's footprint. Use it to dress a bench, a crate or a packing line. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--b4b33315","cdnUrl":"https://cdn.3dassets.dev/assets/38352/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--b4b33315","thumbnailUrl":"https://cdn.3dassets.dev/assets/38352/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38352/v1/poster.webp","blurhash":"UADADBt700jH??W.MgsC00WB_LWB8*s:kjR*","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":18620,"triangles":408,"vertices":840,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.23307779188136774,-0.000003203935483486048,-0.2199999988079071],"max":[0.22646808381061273,0.21193651155330392,0.25461244583129883]},"sizeMeters":[0.46,0.212,0.475],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:59.370Z","updatedAt":"2026-09-12T14:35:59.496Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38352/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LeafyCropClusterLooseLeafLettuceVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38352/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38352/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38352/v1/model.glb\" alt=\"Leafy crop cluster, loose leaf lettuce (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38352/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38352/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38391","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","title":"Floor drain run, 2 m (Vertical Farm and Hydroponics Tower)","summary":"A 2 m stainless channel drain for the wash area: a slot channel in a shallow surround with a lift out slotted grating, an end sump with its basket and a ported end so the run repeats.","description":"A 2 m stainless channel drain for the wash area: a slot channel in a shallow surround with a lift out slotted grating, an end sump with its basket and a ported end so the run repeats. Overall 2.00 by 0.07 by 0.42 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the run on the slab; the grating sits 60 mm proud, as a surface mounted channel does in a wash room. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","cdnUrl":"https://cdn.3dassets.dev/assets/38391/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--50f93394","thumbnailUrl":"https://cdn.3dassets.dev/assets/38391/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38391/v1/poster.webp","blurhash":"U59tM:xs00o#?b_4WBD%00xv~qM{0J00xv_3","category":{"slug":"roads-infrastructure","title":"Roads & Infrastructure"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":18396,"triangles":376,"vertices":875,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-1,-0.00003524872943316826,-0.20996734519486068],"max":[1,0.07003524902745639,0.20996734519486068]},"sizeMeters":[2,0.07,0.42],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:25.762Z","updatedAt":"2026-09-12T14:36:25.871Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38391/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function FloorDrainRun2MVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38391/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38391/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38391/v1/model.glb\" alt=\"Floor drain run, 2 m (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38391/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38391/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38374","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","title":"Supply duct run, 2 m (Vertical Farm and Hydroponics Tower)","summary":"A 2 m ported supply duct on wall brackets at 2.6 m: a rectangular galvanised section with its flanged joints, a takeoff spigot and a four way diffuser hanging under it.","description":"A 2 m ported supply duct on wall brackets at 2.6 m: a rectangular galvanised section with its flanged joints, a takeoff spigot and a four way diffuser hanging under it. Overall 2.00 by 0.75 by 0.50 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, with a free origin as described below. A duct is hung, so the origin is the centre of the section on its own axis, against the wall face its brackets fix to; place a run at the height it flies at, 2.6 m in the starter scene. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","cdnUrl":"https://cdn.3dassets.dev/assets/38374/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--5c7e6ef8","thumbnailUrl":"https://cdn.3dassets.dev/assets/38374/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38374/v1/poster.webp","blurhash":"U7A,%u-;00D%-=?b%2oe00%N~qoKM_IARkIU","category":{"slug":"roads-infrastructure","title":"Roads & Infrastructure"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":8376,"triangles":156,"vertices":364,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1,-0.4000040398417283,-0.22999466084816758],"max":[1,0.3499786368414812,0.2699946674046785]},"sizeMeters":[2,0.75,0.5],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:15.336Z","updatedAt":"2026-09-12T14:36:15.632Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38374/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function SupplyDuctRun2MVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38374/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38374/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38374/v1/model.glb\" alt=\"Supply duct run, 2 m (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38374/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38374/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38371","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","title":"Service pipework run, 2 m (Vertical Farm and Hydroponics Tower)","summary":"A 2 m ported service run: flow and return nutrient mains on wall brackets at 2.2 m, two drop legs to floor plates with a handwheel valve on each and a blank labelled band at every pipe end. The handwheels turn.","description":"A 2 m ported service run: flow and return nutrient mains on wall brackets at 2.2 m, two drop legs to floor plates with a handwheel valve on each and a blank labelled band at every pipe end. The handwheels turn. Overall 2.00 by 2.36 by 0.40 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is on the floor under the centre of the run, against the wall face it brackets to, so a run lays out on the 2 m wall module. The pipe, the brackets, the labels and the flanges are solid; only the two handwheels turn. Rigid node-transform clips: valve-spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","cdnUrl":"https://cdn.3dassets.dev/assets/38371/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--bf7e583a","thumbnailUrl":"https://cdn.3dassets.dev/assets/38371/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38371/v1/poster.webp","blurhash":"U86uL?W900x_?^tSMcMw%LxvRRI9RRxut6IU","category":{"slug":"roads-infrastructure","title":"Roads & Infrastructure"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":19504,"triangles":416,"vertices":932,"meshes":6,"materials":5,"textures":0,"animations":["valve-spin"],"boundingBox":{"min":[-0.9999505352504806,0,-0.18993773543941467],"max":[0.9999505352504806,2.359999895095825,0.20993773126708953]},"sizeMeters":[2,2.36,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:12.434Z","updatedAt":"2026-09-12T14:36:12.538Z","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/38371/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 ServicePipeworkRun2MVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38371/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/38371/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38371/v1/model.glb\" alt=\"Service pipework run, 2 m (Vertical Farm and Hydroponics Tower)\" 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/38371/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/38371/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38386","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--403ef38f","title":"Hygiene station with boot wash (Vertical Farm and Hydroponics Tower)","summary":"The entry hygiene station: a stainless hand wash trough with sensor taps and two blank dispensers, a grab rail, and a boot wash pit alongside with two upright brushes that turn and a drained grating.","description":"The entry hygiene station: a stainless hand wash trough with sensor taps and two blank dispensers, a grab rail, and a boot wash pit alongside with two upright brushes that turn and a drained grating. Overall 2.12 by 1.53 by 0.90 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The water, the soap and sanitiser in the dispensers and the drain plumbing are modelled solid; the two boot brushes turn. Rigid node-transform clips: brush-spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--403ef38f","cdnUrl":"https://cdn.3dassets.dev/assets/38386/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--403ef38f","thumbnailUrl":"https://cdn.3dassets.dev/assets/38386/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38386/v1/poster.webp","blurhash":"UACsmt%L00IU_3~q9F00IURjM{IUD%IUxufi","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":31200,"triangles":680,"vertices":1550,"meshes":8,"materials":4,"textures":0,"animations":["brush-spin"],"boundingBox":{"min":[-1.0499999523162842,-0.000048015118518374145,-0.4499508662117875],"max":[1.0700000524520874,1.5300128000528352,0.4499508662117875]},"sizeMeters":[2.12,1.53,0.9],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:23.816Z","updatedAt":"2026-09-12T14:36:24.026Z","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/38386/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 HygieneStationWithBootWashVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38386/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/38386/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38386/v1/model.glb\" alt=\"Hygiene station with boot wash (Vertical Farm and Hydroponics Tower)\" 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/38386/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/38386/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38387","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ce183864","title":"Gowning bench (Vertical Farm and Hydroponics Tower)","summary":"A 1.6 m gowning bench for the changing lobby: a slatted seat with a shoe rack under it, a coat rail of clean coveralls behind, a hairnet and glove dispenser pair and a waste bin at the end.","description":"A 1.6 m gowning bench for the changing lobby: a slatted seat with a shoe rack under it, a coat rail of clean coveralls behind, a hairnet and glove dispenser pair and a waste bin at the end. Overall 1.89 by 1.95 by 0.71 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The coveralls hanging on the rail are modelled solid: cloth needs a simulation, not a node transform. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--ce183864","cdnUrl":"https://cdn.3dassets.dev/assets/38387/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--ce183864","thumbnailUrl":"https://cdn.3dassets.dev/assets/38387/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38387/v1/poster.webp","blurhash":"UEFiV^RP00kX~pxv4.I900xa^+NGxttRWCRP","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":25408,"triangles":500,"vertices":1150,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-0.8000336092415196,0,-0.44496460131621896],"max":[1.0900165031131406,1.9500000476837158,0.269989161350127]},"sizeMeters":[1.89,1.95,0.715],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:24.015Z","updatedAt":"2026-09-12T14:36:24.153Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38387/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GowningBenchVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38387/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38387/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38387/v1/model.glb\" alt=\"Gowning bench (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38387/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38387/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38388","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","title":"Locker run (Vertical Farm and Hydroponics Tower)","summary":"A four door staff locker run 1.6 m wide on a plinth: perforated vent panels, a sloped top so nothing is stored on it, blank card readers and four doors that open on their own hinges.","description":"A four door staff locker run 1.6 m wide on a plinth: perforated vent panels, a sloped top so nothing is stored on it, blank card readers and four doors that open on their own hinges. Overall 1.64 by 2.02 by 0.54 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The card readers and number plates are blank; the four doors open. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","cdnUrl":"https://cdn.3dassets.dev/assets/38388/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--2d6a6c68","thumbnailUrl":"https://cdn.3dassets.dev/assets/38388/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38388/v1/poster.webp","blurhash":"UGGb#Pj]00t6~q%M9FIU00of-;Rj-:ofIURQ","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":16952,"triangles":420,"vertices":980,"meshes":16,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.8199999928474426,0.00002960386254088898,-0.2694702755036682],"max":[0.8199999928474426,2.0189547538757324,0.27500320811343115]},"sizeMeters":[1.64,2.019,0.544],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:24.571Z","updatedAt":"2026-09-12T14:36:24.752Z","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/38388/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 LockerRunVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38388/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/38388/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38388/v1/model.glb\" alt=\"Locker run (Vertical Farm and Hydroponics Tower)\" 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/38388/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/38388/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38385","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--10af5e96","title":"Hand tool rack (Vertical Farm and Hydroponics Tower)","summary":"A wall mounted stainless tool rack: harvest knives in their sheaths, two pairs of snips, a scrub brush, a spacing dibber board and a shadow board behind, with a sanitising dip pot on the shelf.","description":"A wall mounted stainless tool rack: harvest knives in their sheaths, two pairs of snips, a scrub brush, a spacing dibber board and a shadow board behind, with a sanitising dip pot on the shelf. Overall 1.10 by 0.96 by 0.26 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, with a free origin as described below. The rack is screwed to a wall, so the origin is the centre of the shadow board on the wall face; place it at the height the shelf should sit, 1.5 m in the starter scene. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--10af5e96","cdnUrl":"https://cdn.3dassets.dev/assets/38385/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--10af5e96","thumbnailUrl":"https://cdn.3dassets.dev/assets/38385/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38385/v1/poster.webp","blurhash":"UEFY$3E100%2~q%M9F9F00%M-pIVxvt7RjRj","category":{"slug":"weapons-tools","title":"Weapons & Tools"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":21992,"triangles":392,"vertices":910,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.5511999726295471,-0.4599789337761238,-0.08998138288871442],"max":[0.550000011920929,0.4999908471562608,0.16997649769372944]},"sizeMeters":[1.101,0.96,0.26],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:22.052Z","updatedAt":"2026-09-12T14:36:22.158Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38385/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HandToolRackVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38385/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38385/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38385/v1/model.glb\" alt=\"Hand tool rack (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38385/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38385/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38360","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","title":"Nutrient tote stack (Vertical Farm and Hydroponics Tower)","summary":"Two blue 1,000 litre intermediate bulk containers in their galvanised cages on pallets, stacked one on the other, with the outlet valve and a blank label panel on the near face.","description":"Two blue 1,000 litre intermediate bulk containers in their galvanised cages on pallets, stacked one on the other, with the outlet valve and a blank label panel on the near face. Overall 1.20 by 2.28 by 0.92 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the lower pallet's footprint. The solution inside, the outlet valve and the cage strapping are solid and do not move. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","cdnUrl":"https://cdn.3dassets.dev/assets/38360/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--b817fa44","thumbnailUrl":"https://cdn.3dassets.dev/assets/38360/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38360/v1/poster.webp","blurhash":"U8A1S6,E005Q~qfl4nV?mjNbOu%1-;kDITV?","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":31792,"triangles":648,"vertices":1492,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-0.5999987658486031,0,-0.3999731347715647],"max":[0.5999987658486031,2.2799999713897705,0.5149763432829716]},"sizeMeters":[1.2,2.28,0.915],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:05.188Z","updatedAt":"2026-09-12T14:36:05.289Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38360/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function NutrientToteStackVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38360/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38360/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38360/v1/model.glb\" alt=\"Nutrient tote stack (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38360/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38360/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38349","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--bad08317","title":"Germination chamber (Vertical Farm and Hydroponics Tower)","summary":"A 1.2 m insulated germination cabinet on castors: twin doors with gasket seals, five shelf levels of sown plug trays inside, a blank set point display on the fascia and the refrigeration cowl on top.","description":"A 1.2 m insulated germination cabinet on castors: twin doors with gasket seals, five shelf levels of sown plug trays inside, a blank set point display on the fascia and the refrigeration cowl on top. Overall 1.20 by 2.30 by 0.92 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The gaskets, the cabling and the display content are solid and blank; only the two doors move. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--bad08317","cdnUrl":"https://cdn.3dassets.dev/assets/38349/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--bad08317","thumbnailUrl":"https://cdn.3dassets.dev/assets/38349/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38349/v1/poster.webp","blurhash":"U9FPKaRj00WBxut7axIU00j[~qt7xbofRjM{","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":1038320,"triangles":26292,"vertices":54628,"meshes":11,"materials":5,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.6000549109632686,0,-0.42497022862188566],"max":[0.6000549109632686,2.299999952316284,0.49499465820513056]},"sizeMeters":[1.2,2.3,0.92],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:56.458Z","updatedAt":"2026-09-12T14:35:56.587Z","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/38349/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 GerminationChamberVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38349/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/38349/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38349/v1/model.glb\" alt=\"Germination chamber (Vertical Farm and Hydroponics Tower)\" 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/38349/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/38349/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38361","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c6f8f68b","title":"Transplanting bench (Vertical Farm and Hydroponics Tower)","summary":"A 2 m stainless transplanting bench: a plug tray and a part planted grow tray on the top, a rack of spare trays under it, a waste chute at one end and a set of dibbers and a spacing board on the upstand.","description":"A 2 m stainless transplanting bench: a plug tray and a part planted grow tray on the top, a rack of spare trays under it, a waste chute at one end and a set of dibbers and a spacing board on the upstand. Overall 2.00 by 1.17 by 0.86 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the bench footprint and the worktop is at 0.9 m. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--c6f8f68b","cdnUrl":"https://cdn.3dassets.dev/assets/38361/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--c6f8f68b","thumbnailUrl":"https://cdn.3dassets.dev/assets/38361/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38361/v1/poster.webp","blurhash":"UBCjFQWl4nxu_M?aM_M{00%Mx]My9GMyt6M|","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":233304,"triangles":5836,"vertices":12141,"meshes":4,"materials":4,"textures":0,"animations":[],"boundingBox":{"min":[-1,-0.00005629520542571598,-0.45001403866668577],"max":[1,1.1649876827977854,0.40995009746863514]},"sizeMeters":[2,1.165,0.86],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:05.353Z","updatedAt":"2026-09-12T14:36:05.456Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38361/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function TransplantingBenchVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38361/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38361/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38361/v1/model.glb\" alt=\"Transplanting bench (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38361/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38361/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38356","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--6c743416","title":"Herb tray (Vertical Farm and Hydroponics Tower)","summary":"A 900 mm by 500 mm herb tray of twenty four potted herbs on their pitch, each a tight deep green plant in its own pot, as a farm grows the high value line beside the leaf crop.","description":"A 900 mm by 500 mm herb tray of twenty four potted herbs on their pitch, each a tight deep green plant in its own pot, as a farm grows the high value line beside the leaf crop. Overall 0.90 by 0.26 by 0.50 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the tray's footprint. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--6c743416","cdnUrl":"https://cdn.3dassets.dev/assets/38356/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--6c743416","thumbnailUrl":"https://cdn.3dassets.dev/assets/38356/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38356/v1/poster.webp","blurhash":"U6AUEO%f00NFck.7rxD%00Nr?[a3zO8{Jz%M","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":102756,"triangles":2532,"vertices":5279,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.44999998807907104,0.000009616310462506883,-0.25002898596049583],"max":[0.44999998807907104,0.26207294387042945,0.25002898596049583]},"sizeMeters":[0.9,0.262,0.5],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:02.152Z","updatedAt":"2026-09-12T14:36:02.280Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38356/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function HerbTrayVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38356/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38356/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38356/v1/model.glb\" alt=\"Herb tray (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38356/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38356/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38347","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9a67b0fb","title":"Rockwool plug tray (Vertical Farm and Hydroponics Tower)","summary":"A 600 mm by 400 mm propagation tray of forty rockwool plugs, freshly sown: the plugs sit proud of a black carry tray with its stacking rim, and nothing is up yet.","description":"A 600 mm by 400 mm propagation tray of forty rockwool plugs, freshly sown: the plugs sit proud of a black carry tray with its stacking rim, and nothing is up yet. Overall 0.60 by 0.10 by 0.40 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the tray's footprint; it stacks on its own rim at 60 mm centres. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--9a67b0fb","cdnUrl":"https://cdn.3dassets.dev/assets/38347/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--9a67b0fb","thumbnailUrl":"https://cdn.3dassets.dev/assets/38347/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38347/v1/poster.webp","blurhash":"UDDS?%-;00WB~q%MIUM{00Rj_3M{00D%%Mf6","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":24608,"triangles":516,"vertices":1204,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.3005000054836273,-0.0004902795672651408,-0.20001541549723537],"max":[0.3005000054836273,0.09999409495554536,0.20001541549723537]},"sizeMeters":[0.601,0.1,0.4],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:56.389Z","updatedAt":"2026-09-12T14:35:56.514Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38347/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function RockwoolPlugTrayVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38347/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38347/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38347/v1/model.glb\" alt=\"Rockwool plug tray (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38347/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38347/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38348","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--2c8cbdc0","title":"Seedling propagation tray with dome (Vertical Farm and Hydroponics Tower)","summary":"The same 600 mm plug tray a week on, with seedlings through the rockwool and a clear vented propagation dome over them. The dome lifts off on its back edge.","description":"The same 600 mm plug tray a week on, with seedlings through the rockwool and a clear vented propagation dome over them. The dome lifts off on its back edge. Overall 0.62 by 0.31 by 0.42 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The vent sliders in the dome are modelled closed and do not move. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--2c8cbdc0","cdnUrl":"https://cdn.3dassets.dev/assets/38348/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--2c8cbdc0","thumbnailUrl":"https://cdn.3dassets.dev/assets/38348/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38348/v1/poster.webp","blurhash":"U9DTkc~p00Rj*0%gxYWB00E2knRiD4MxIXM{","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":179676,"triangles":4428,"vertices":9212,"meshes":5,"materials":4,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.3222685158252716,-0.0004902795672651408,-0.21103044639722937],"max":[0.3005000054836273,0.30999786672713453,0.21055270026819342]},"sizeMeters":[0.623,0.31,0.422],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:56.446Z","updatedAt":"2026-09-12T14:35:56.564Z","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/38348/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 SeedlingPropagationTrayWithDomeVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38348/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/38348/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38348/v1/model.glb\" alt=\"Seedling propagation tray with dome (Vertical Farm and Hydroponics Tower)\" 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/38348/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/38348/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38346","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--e7d192a7","title":"Grow tray, freshly sown (Vertical Farm and Hydroponics Tower)","summary":"A 1.2 m by 0.8 m stainless growing tray at the start of a cycle: forty rockwool plugs sown out on their grid and nothing above the surface yet. The first of three crop states of the same tray.","description":"A 1.2 m by 0.8 m stainless growing tray at the start of a cycle: forty rockwool plugs sown out on their grid and nothing above the surface yet. The first of three crop states of the same tray. Overall 1.20 by 0.07 by 0.80 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the tray's footprint; it is sized to sit on a rack tier deck or a bench. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--e7d192a7","cdnUrl":"https://cdn.3dassets.dev/assets/38346/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--e7d192a7","thumbnailUrl":"https://cdn.3dassets.dev/assets/38346/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38346/v1/poster.webp","blurhash":"U9BM}Zxu00Rj-;xvRiM{00ay~qRj9ED%t7xu","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":25412,"triangles":540,"vertices":1247,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6000000238418579,-0.0000011444441508287606,-0.40002443070312294],"max":[0.6000000238418579,0.07500114742438307,0.40002443070312294]},"sizeMeters":[1.2,0.075,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:56.371Z","updatedAt":"2026-09-12T14:35:56.490Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38346/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrowTrayFreshlySownVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38346/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38346/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38346/v1/model.glb\" alt=\"Grow tray, freshly sown (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38346/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38346/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38350","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--d9e8899e","title":"Grow tray, half grown (Vertical Farm and Hydroponics Tower)","summary":"The same growing tray a fortnight in: twelve lettuce at about half size, the leaves still clear of each other so the grid of plants is readable. The second of three crop states.","description":"The same growing tray a fortnight in: twelve lettuce at about half size, the leaves still clear of each other so the grid of plants is readable. The second of three crop states. Overall 1.20 by 0.09 by 0.80 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the tray's footprint; it is sized to sit on a rack tier deck or a bench. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--d9e8899e","cdnUrl":"https://cdn.3dassets.dev/assets/38350/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--d9e8899e","thumbnailUrl":"https://cdn.3dassets.dev/assets/38350/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38350/v1/poster.webp","blurhash":"U8A,?]xu00Rj%fx]RjM{00WB_Mae9FD%of%M","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":49216,"triangles":1212,"vertices":2479,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6000000238418579,-0.0000011444441508287606,-0.40002443070312294],"max":[0.6000000238418579,0.0924453454500691,0.40002443070312294]},"sizeMeters":[1.2,0.092,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:59.169Z","updatedAt":"2026-09-12T14:35:59.364Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38350/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrowTrayHalfGrownVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38350/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38350/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38350/v1/model.glb\" alt=\"Grow tray, half grown (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38350/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38350/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38354","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--89a178a3","title":"Leafy crop cluster, kale (Vertical Farm and Hydroponics Tower)","summary":"Four heads of kale in the same carry tray: long narrow deep green blades on a tall open plant, the darkest of the three crop shapes in the pack.","description":"Four heads of kale in the same carry tray: long narrow deep green blades on a tall open plant, the darkest of the three crop shapes in the pack. Overall 0.46 by 0.29 by 0.48 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--89a178a3","cdnUrl":"https://cdn.3dassets.dev/assets/38354/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--89a178a3","thumbnailUrl":"https://cdn.3dassets.dev/assets/38354/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38354/v1/poster.webp","blurhash":"UBBzwU%g00ofFoR%rxtR00My%yRj}xs;J4Rj","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":16772,"triangles":360,"vertices":744,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.2199999988079071,-0.000003203935483486048,-0.24516351521015167],"max":[0.23939172448134782,0.2860634892477016,0.23204074800014496]},"sizeMeters":[0.459,0.286,0.477],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:01.999Z","updatedAt":"2026-09-12T14:36:02.126Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38354/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LeafyCropClusterKaleVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38354/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38354/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38354/v1/model.glb\" alt=\"Leafy crop cluster, kale (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38354/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38354/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38362","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--0a1e5cff","title":"Harvest bench with conveyor stub (Vertical Farm and Hydroponics Tower)","summary":"A 2 m harvest bench with a short gravity roller stub running off one end at deck height: a cut tray on the top, a crate catching under the rollers, and the rollers themselves turn.","description":"A 2 m harvest bench with a short gravity roller stub running off one end at deck height: a cut tray on the top, a crate catching under the rollers, and the rollers themselves turn. Overall 2.69 by 1.08 by 0.80 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The bench, the crate and the cut crop are solid; only the four conveyor rollers turn. Rigid node-transform clips: roller-spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--0a1e5cff","cdnUrl":"https://cdn.3dassets.dev/assets/38362/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--0a1e5cff","thumbnailUrl":"https://cdn.3dassets.dev/assets/38362/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38362/v1/poster.webp","blurhash":"UBC%KnNX00xc%f~pM|8{00t7%gWCDi9Fx[x[","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":88688,"triangles":2212,"vertices":4603,"meshes":8,"materials":4,"textures":0,"animations":["roller-spin"],"boundingBox":{"min":[-1,-0.00003075479795350278,-0.40000687517339656],"max":[1.690000057220459,1.0776061186068189,0.40000687517339656]},"sizeMeters":[2.69,1.078,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:07.735Z","updatedAt":"2026-09-12T14:36:07.841Z","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/38362/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 HarvestBenchWithConveyorStubVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38362/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/38362/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38362/v1/model.glb\" alt=\"Harvest bench with conveyor stub (Vertical Farm and Hydroponics Tower)\" 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/38362/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/38362/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38351","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a05abe0f","title":"Grow tray, ready to harvest (Vertical Farm and Hydroponics Tower)","summary":"The growing tray at harvest: twelve full heads of loose leaf lettuce closed into a canopy that fills the tray. The third of three crop states, and the one a harvest bench is dressed with.","description":"The growing tray at harvest: twelve full heads of loose leaf lettuce closed into a canopy that fills the tray. The third of three crop states, and the one a harvest bench is dressed with. Overall 1.20 by 0.15 by 0.80 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the tray's footprint; it is sized to sit on a rack tier deck or a bench. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--a05abe0f","cdnUrl":"https://cdn.3dassets.dev/assets/38351/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--a05abe0f","thumbnailUrl":"https://cdn.3dassets.dev/assets/38351/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38351/v1/poster.webp","blurhash":"UABNQ7xu00%2y9xuaPRQ00Rj?@M{DTIBo[tQ","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":49192,"triangles":1212,"vertices":2479,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.6000000238418579,-0.0000011444441508287606,-0.40002443070312294],"max":[0.6000000238418579,0.1545803401485951,0.40002443070312294]},"sizeMeters":[1.2,0.155,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:59.352Z","updatedAt":"2026-09-12T14:35:59.484Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38351/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function GrowTrayReadyToHarvestVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38351/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38351/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38351/v1/model.glb\" alt=\"Grow tray, ready to harvest (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38351/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38351/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38353","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9431d595","title":"Leafy crop cluster, pak choi (Vertical Farm and Hydroponics Tower)","summary":"Four heads of pak choi in the same carry tray: steep pale stems with the leaf held high and tight, which reads as a different crop beside the lettuce without a second material.","description":"Four heads of pak choi in the same carry tray: steep pale stems with the leaf held high and tight, which reads as a different crop beside the lettuce without a second material. Overall 0.44 by 0.27 by 0.44 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--9431d595","cdnUrl":"https://cdn.3dassets.dev/assets/38353/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--9431d595","thumbnailUrl":"https://cdn.3dassets.dev/assets/38353/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38353/v1/poster.webp","blurhash":"UCDv$M%L00RRJMWAaQah00RQ.7WA?1s=Suk9","category":{"slug":"nature","title":"Nature & Landscape"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":17276,"triangles":360,"vertices":744,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-0.2199999988079071,-0.000003203935483486048,-0.2199999988079071],"max":[0.2199999988079071,0.2714290439557983,0.2199999988079071]},"sizeMeters":[0.44,0.271,0.44],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:35:59.516Z","updatedAt":"2026-09-12T14:35:59.643Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38353/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function LeafyCropClusterPakChoiVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38353/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38353/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38353/v1/model.glb\" alt=\"Leafy crop cluster, pak choi (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38353/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38353/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38383","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--7d9fa93d","title":"Hand pallet truck (Vertical Farm and Hydroponics Tower)","summary":"A hand pallet truck: steel forks that rise on the pump, a tiller arm that rocks back with its grip and trigger, steer wheels at the head and tandem load rollers at the fork tips.","description":"A hand pallet truck: steel forks that rise on the pump, a tiller arm that rocks back with its grip and trigger, steer wheels at the head and tandem load rollers at the fork tips. Overall 0.54 by 1.34 by 1.85 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The pump linkage and the hydraulic ram are modelled solid; the forks rise, the tiller rocks and the wheels turn. Rigid node-transform clips: open, close, wheel-roll and tilt. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--7d9fa93d","cdnUrl":"https://cdn.3dassets.dev/assets/38383/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--7d9fa93d","thumbnailUrl":"https://cdn.3dassets.dev/assets/38383/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38383/v1/poster.webp","blurhash":"U99aETN49E%LMu01%L?b%ER;%foH~pR:IAjE","category":{"slug":"vehicles","title":"Vehicles"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":17992,"triangles":252,"vertices":555,"meshes":7,"materials":3,"textures":0,"animations":["open","close","wheel-roll","tilt"],"boundingBox":{"min":[-0.26998450484344066,-3.5762786898541066e-9,-1.0250443966844482],"max":[0.26998450484344066,1.3350443978765412,0.8249999761581421]},"sizeMeters":[0.54,1.335,1.85],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:21.351Z","updatedAt":"2026-09-12T14:36:21.451Z","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/38383/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 HandPalletTruckVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38383/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/38383/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38383/v1/model.glb\" alt=\"Hand pallet truck (Vertical Farm and Hydroponics Tower)\" 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/38383/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/38383/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38365","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--eb5ec603","title":"Wash and spin station (Vertical Farm and Hydroponics Tower)","summary":"A 2 m wash line: a deep stainless wash sink with the water modelled, a swan neck tap, and a spin dryer alongside whose lid lifts and whose perforated basket spins, with a drained crate on the drainer.","description":"A 2 m wash line: a deep stainless wash sink with the water modelled, a swan neck tap, and a spin dryer alongside whose lid lifts and whose perforated basket spins, with a drained crate on the drainer. Overall 2.00 by 1.52 by 0.80 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The water in the sink, the tap and the drain plumbing are modelled solid; only the spinner lid and its basket move. Rigid node-transform clips: open, close and spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--eb5ec603","cdnUrl":"https://cdn.3dassets.dev/assets/38365/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--eb5ec603","thumbnailUrl":"https://cdn.3dassets.dev/assets/38365/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38365/v1/poster.webp","blurhash":"UBCP|xM{00?b%Mt7M{Rj00of~qM{9ZaxxuWX","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":28020,"triangles":528,"vertices":1206,"meshes":9,"materials":5,"textures":0,"animations":["open","close","spin"],"boundingBox":{"min":[-1,-0.000037896024495776004,-0.3999450666829432],"max":[1,1.51999786054338,0.3999450666829432]},"sizeMeters":[2,1.52,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:08.255Z","updatedAt":"2026-09-12T14:36:08.376Z","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/38365/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 WashAndSpinStationVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38365/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/38365/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38365/v1/model.glb\" alt=\"Wash and spin station (Vertical Farm and Hydroponics Tower)\" 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/38365/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/38365/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38363","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--cb54725f","title":"Packing bench (Vertical Farm and Hydroponics Tower)","summary":"A 2 m packing bench: a checkweigher with a blank readout, a bagging chute, a roll of film on its spindle, two crates of cut leaf below and a stack of flat packed boxes at the end.","description":"A 2 m packing bench: a checkweigher with a blank readout, a bagging chute, a roll of film on its spindle, two crates of cut leaf below and a stack of flat packed boxes at the end. Overall 2.09 by 1.59 by 0.80 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The film roll, the bag chute and the readout are solid and the readout is blank. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--cb54725f","cdnUrl":"https://cdn.3dassets.dev/assets/38363/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--cb54725f","thumbnailUrl":"https://cdn.3dassets.dev/assets/38363/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38363/v1/poster.webp","blurhash":"U8D,AqbI00?bM{a~xut600V@~qM|In%2oe9G","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":45236,"triangles":992,"vertices":2152,"meshes":5,"materials":5,"textures":0,"animations":[],"boundingBox":{"min":[-1,-0.00005629520542571598,-0.3999450666829432],"max":[1.090000033378601,1.5900320801795824,0.3999450666829432]},"sizeMeters":[2.09,1.59,0.8],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:08.004Z","updatedAt":"2026-09-12T14:36:08.108Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38363/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function PackingBenchVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38363/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38363/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38363/v1/model.glb\" alt=\"Packing bench (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38363/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38363/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38364","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--4b86ee51","title":"Pallet and stretch wrapper (Vertical Farm and Hydroponics Tower)","summary":"A stretch wrapping station: a plastic pallet of crates standing on a turntable that spins, with the film carriage on its mast alongside and a part wrapped film skirt round the bottom courses.","description":"A stretch wrapping station: a plastic pallet of crates standing on a turntable that spins, with the film carriage on its mast alongside and a part wrapped film skirt round the bottom courses. Overall 2.45 by 2.22 by 1.70 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The film on the load and on the carriage is modelled solid, and the carriage does not rise: stretch film is a sheet, which needs a cloth simulation rather than a node transform. Rigid node-transform clips: spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--4b86ee51","cdnUrl":"https://cdn.3dassets.dev/assets/38364/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--4b86ee51","thumbnailUrl":"https://cdn.3dassets.dev/assets/38364/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38364/v1/poster.webp","blurhash":"UEBNA+IU00-pD$aexvkD00xa_NM{%hozRORP","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":82044,"triangles":1820,"vertices":3913,"meshes":11,"materials":7,"textures":0,"animations":["spin"],"boundingBox":{"min":[-0.8500000238418579,0.00003417822240938534,-0.850064105414477],"max":[1.600000023841858,2.2200000286102295,0.850064105414477]},"sizeMeters":[2.45,2.22,1.7],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:08.245Z","updatedAt":"2026-09-12T14:36:08.369Z","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/38364/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 PalletAndStretchWrapperVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38364/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/38364/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38364/v1/model.glb\" alt=\"Pallet and stretch wrapper (Vertical Farm and Hydroponics Tower)\" 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/38364/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/38364/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38366","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--9d9c89f3","title":"Nutrient dosing skid (Vertical Farm and Hydroponics Tower)","summary":"A skid mounted dosing set: three stock tanks of concentrate and acid on a bunded base frame, four peristaltic dosing pumps whose rotors turn, a mixing manifold with a handwheel valve and a blank control fascia.","description":"A skid mounted dosing set: three stock tanks of concentrate and acid on a bunded base frame, four peristaltic dosing pumps whose rotors turn, a mixing manifold with a handwheel valve and a blank control fascia. Overall 2.00 by 1.18 by 1.09 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The concentrate in the tanks, the suction lines, the injection tubing and the fascia display are modelled solid and blank; the pump rotors and the manifold handwheel turn. Rigid node-transform clips: rotor-spin and valve-spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--9d9c89f3","cdnUrl":"https://cdn.3dassets.dev/assets/38366/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--9d9c89f3","thumbnailUrl":"https://cdn.3dassets.dev/assets/38366/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38366/v1/poster.webp","blurhash":"UAG91=?c00$|0t_2e+9G009IXrM_rlV=~oNM","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":42204,"triangles":900,"vertices":2005,"meshes":15,"materials":8,"textures":0,"animations":["rotor-spin","valve-spin"],"boundingBox":{"min":[-1,-0.00003906726840796626,-0.50007629627369],"max":[1,1.1750255346788905,0.5900022772840224]},"sizeMeters":[2,1.175,1.09],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:10.545Z","updatedAt":"2026-09-12T14:36:10.652Z","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/38366/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 NutrientDosingSkidVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38366/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/38366/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38366/v1/model.glb\" alt=\"Nutrient dosing skid (Vertical Farm and Hydroponics Tower)\" 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/38366/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/38366/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38367","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--570998b9","title":"Nutrient reservoir tank (Vertical Farm and Hydroponics Tower)","summary":"A 2 m by 1.4 m nutrient reservoir: a white tank 1.2 m deep on a bunded plinth with the solution level modelled, an inspection lid that lifts, a sight glass up one end and the suction and return flanges on the near face.","description":"A 2 m by 1.4 m nutrient reservoir: a white tank 1.2 m deep on a bunded plinth with the solution level modelled, an inspection lid that lifts, a sight glass up one end and the suction and return flanges on the near face. Overall 2.20 by 1.89 by 1.61 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The solution, the sight glass and the pipe flanges are solid; only the inspection lid lifts. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--570998b9","cdnUrl":"https://cdn.3dassets.dev/assets/38367/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--570998b9","thumbnailUrl":"https://cdn.3dassets.dev/assets/38367/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38367/v1/poster.webp","blurhash":"U8G[~F_300IA00kC-nRP00E1%Lxa~p%M-;Rj","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":16244,"triangles":252,"vertices":553,"meshes":7,"materials":6,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-1.100000023841858,-0.000023807079476710624,-0.7999817062334506],"max":[1.100000023841858,1.8900138805573619,0.8099610614830092]},"sizeMeters":[2.2,1.89,1.61],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_materials_transmission","KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:10.864Z","updatedAt":"2026-09-12T14:36:10.970Z","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/38367/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 NutrientReservoirTankVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38367/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/38367/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38367/v1/model.glb\" alt=\"Nutrient reservoir tank (Vertical Farm and Hydroponics Tower)\" 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/38367/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/38367/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38368","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--1b234730","title":"Pump and filter set (Vertical Farm and Hydroponics Tower)","summary":"A skid of two centrifugal circulation pumps on their plinth with a duty and standby arrangement, two sand filters on legs beside them, isolation handwheels either side and a pressure gauge board. The pump rotors and the handwheels turn.","description":"A skid of two centrifugal circulation pumps on their plinth with a duty and standby arrangement, two sand filters on legs beside them, isolation handwheels either side and a pressure gauge board. The pump rotors and the handwheels turn. Overall 1.60 by 1.35 by 0.93 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The pipework, the gauges and the cable gland boxes are solid; the two rotors and the two handwheels turn. Rigid node-transform clips: rotor-spin and valve-spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--1b234730","cdnUrl":"https://cdn.3dassets.dev/assets/38368/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--1b234730","thumbnailUrl":"https://cdn.3dassets.dev/assets/38368/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38368/v1/poster.webp","blurhash":"UDFiS.~W00E200%M-;NF0001-=-pbwax-:Rk","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":38864,"triangles":864,"vertices":1878,"meshes":11,"materials":7,"textures":0,"animations":["rotor-spin","valve-spin"],"boundingBox":{"min":[-0.800000011920929,0.00003723034694134292,-0.4499649104191022],"max":[0.800000011920929,1.349989934415662,0.4800404291219695]},"sizeMeters":[1.6,1.35,0.93],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:11.047Z","updatedAt":"2026-09-12T14:36:11.145Z","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/38368/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 PumpAndFilterSetVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38368/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/38368/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38368/v1/model.glb\" alt=\"Pump and filter set (Vertical Farm and Hydroponics Tower)\" 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/38368/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/38368/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38369","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--778d2988","title":"UV steriliser (Vertical Farm and Hydroponics Tower)","summary":"An inline ultraviolet steriliser: a stainless chamber on a wall frame with the lamp end caps, the flow in and out flanges, a blank hour counter box and the ballast enclosure under it.","description":"An inline ultraviolet steriliser: a stainless chamber on a wall frame with the lamp end caps, the flow in and out flanges, a blank hour counter box and the ballast enclosure under it. Overall 0.34 by 1.50 by 0.71 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The lamp, the quartz sleeve and the counter display are solid and the display is blank. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--778d2988","cdnUrl":"https://cdn.3dassets.dev/assets/38369/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--778d2988","thumbnailUrl":"https://cdn.3dassets.dev/assets/38369/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38369/v1/poster.webp","blurhash":"U784xoE100~V?bRPIA%M4mxa-=EL9Fxv%MD%","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":17048,"triangles":296,"vertices":655,"meshes":6,"materials":6,"textures":0,"animations":[],"boundingBox":{"min":[-0.169972834502839,0,-0.359997887028267],"max":[0.169972834502839,1.5,0.35000078097217974]},"sizeMeters":[0.34,1.5,0.71],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:10.088Z","updatedAt":"2026-09-12T14:36:10.187Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38369/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function UVSteriliserVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38369/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38369/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38369/v1/model.glb\" alt=\"UV steriliser (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38369/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38369/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38370","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--51e4d868","title":"Reverse osmosis rack (Vertical Farm and Hydroponics Tower)","summary":"A framed reverse osmosis set: six membrane vessels in two banks on a galvanised frame, the high pressure pump at the foot with a turning rotor, a pre filter pair, a handwheel on the concentrate line and a blank instrument panel.","description":"A framed reverse osmosis set: six membrane vessels in two banks on a galvanised frame, the high pressure pump at the foot with a turning rotor, a pre filter pair, a handwheel on the concentrate line and a blank instrument panel. Overall 1.74 by 2.00 by 0.71 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The membranes, the hoses, the gauges and the instrument panel are solid and blank; the pump rotor and the concentrate handwheel turn. Rigid node-transform clips: rotor-spin and valve-spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--51e4d868","cdnUrl":"https://cdn.3dassets.dev/assets/38370/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--51e4d868","thumbnailUrl":"https://cdn.3dassets.dev/assets/38370/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38370/v1/poster.webp","blurhash":"UFCj9F?b00V@~qxu9GIU9EM{o#RkD%R+%2t6","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":72184,"triangles":1608,"vertices":3437,"meshes":8,"materials":6,"textures":0,"animations":["rotor-spin","valve-spin"],"boundingBox":{"min":[-0.8700000047683716,0,-0.37399485589227005],"max":[0.8700000047683716,2,0.3350016785180212]},"sizeMeters":[1.74,2,0.709],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:12.978Z","updatedAt":"2026-09-12T14:36:13.083Z","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/38370/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 ReverseOsmosisRackVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38370/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/38370/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38370/v1/model.glb\" alt=\"Reverse osmosis rack (Vertical Farm and Hydroponics Tower)\" 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/38370/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/38370/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38372","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--42076014","title":"Grow room dehumidifier (Vertical Farm and Hydroponics Tower)","summary":"A floor standing grow room dehumidifier on castors: a louvred discharge with a fan behind it that spins, a condensate drawer that pulls out at the foot, a blank humidity readout and the drain hose spigot at the back.","description":"A floor standing grow room dehumidifier on castors: a louvred discharge with a fan behind it that spins, a condensate drawer that pulls out at the foot, a blank humidity readout and the drain hose spigot at the back. Overall 0.72 by 1.52 by 0.69 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The drain hose, the coil block and the readout are solid and blank; the fan spins and the condensate drawer pulls out. Rigid node-transform clips: open, close and fan-spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--42076014","cdnUrl":"https://cdn.3dassets.dev/assets/38372/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--42076014","thumbnailUrl":"https://cdn.3dassets.dev/assets/38372/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38372/v1/poster.webp","blurhash":"UDEV+;t700oe~qof9FWB00fk-;Rj-;t7D%IU","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":24188,"triangles":416,"vertices":934,"meshes":8,"materials":5,"textures":0,"animations":["open","close","fan-spin"],"boundingBox":{"min":[-0.3600054181836859,0,-0.38999998569488525],"max":[0.3600054181836859,1.524999976158142,0.30250767526897043]},"sizeMeters":[0.72,1.525,0.693],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:13.670Z","updatedAt":"2026-09-12T14:36:13.767Z","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/38372/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 GrowRoomDehumidifierVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38372/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/38372/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38372/v1/model.glb\" alt=\"Grow room dehumidifier (Vertical Farm and Hydroponics Tower)\" 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/38372/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/38372/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38373","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--e56c2636","title":"Air handling unit (Vertical Farm and Hydroponics Tower)","summary":"A 2.4 m packaged air handling unit on a plinth: filter, coil and fan sections, a hinged access door with a sight port, the supply fan behind the guard turning, and spigots on both ends for the duct run.","description":"A 2.4 m packaged air handling unit on a plinth: filter, coil and fan sections, a hinged access door with a sight port, the supply fan behind the guard turning, and spigots on both ends for the duct run. Overall 2.69 by 2.01 by 1.34 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The coils, the filters behind the door, the cabling and the flexible connections are modelled solid; the fan spins and the access door opens. Rigid node-transform clips: open, close and fan-spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--e56c2636","cdnUrl":"https://cdn.3dassets.dev/assets/38373/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--e56c2636","thumbnailUrl":"https://cdn.3dassets.dev/assets/38373/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38373/v1/poster.webp","blurhash":"U9G[{60000V[be-;M_Dj00?bxt%M~ptRIUIU","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":22472,"triangles":364,"vertices":810,"meshes":10,"materials":5,"textures":0,"animations":["open","close","fan-spin"],"boundingBox":{"min":[-1.399999976158142,0.00007706221665912394,-0.6499679555650502],"max":[1.2899999618530273,2.0099715884975815,0.6949964769297767]},"sizeMeters":[2.69,2.01,1.345],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:13.786Z","updatedAt":"2026-09-12T14:36:13.996Z","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/38373/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 AirHandlingUnitVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38373/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/38373/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38373/v1/model.glb\" alt=\"Air handling unit (Vertical Farm and Hydroponics Tower)\" 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/38373/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/38373/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38375","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--c375a975","title":"Carbon dioxide cylinder rack (Vertical Farm and Hydroponics Tower)","summary":"A six cylinder carbon dioxide rack against the wall: cylinders in two rows behind a restraint bar, a two stage regulator manifold with its blank gauges, a handwheel isolation valve and a warning plate left blank.","description":"A six cylinder carbon dioxide rack against the wall: cylinders in two rows behind a restraint bar, a two stage regulator manifold with its blank gauges, a handwheel isolation valve and a warning plate left blank. Overall 2.00 by 1.98 by 0.60 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The cylinders, the pigtail hoses, the gauges and the plate are solid and blank; only the isolation handwheel turns. Rigid node-transform clips: valve-spin. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--c375a975","cdnUrl":"https://cdn.3dassets.dev/assets/38375/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--c375a975","thumbnailUrl":"https://cdn.3dassets.dev/assets/38375/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38375/v1/poster.webp","blurhash":"U39j+SXn00v#Xo.8nh8w00?v~q4TNHxv-=D$","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":51856,"triangles":1072,"vertices":2418,"meshes":7,"materials":7,"textures":0,"animations":["valve-spin"],"boundingBox":{"min":[-0.8500000238418579,0.000013722811182725891,-0.3000045861913232],"max":[1.149999976158142,1.9800147047469814,0.3000045861913232]},"sizeMeters":[2,1.98,0.6],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:15.773Z","updatedAt":"2026-09-12T14:36:15.881Z","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/38375/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 CarbonDioxideCylinderRackVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38375/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/38375/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38375/v1/model.glb\" alt=\"Carbon dioxide cylinder rack (Vertical Farm and Hydroponics Tower)\" 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/38375/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/38375/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38376","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--a615f086","title":"Control cabinet (Vertical Farm and Hydroponics Tower)","summary":"A 1.2 m plant control cabinet on a plinth: two hinged doors, a blank touch screen and a row of unlabelled indicator lamps on the right door, gland plate at the foot and a beacon on top. The doors open on their hinges.","description":"A 1.2 m plant control cabinet on a plinth: two hinged doors, a blank touch screen and a row of unlabelled indicator lamps on the right door, gland plate at the foot and a beacon on top. The doors open on their hinges. Overall 1.24 by 2.19 by 0.51 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The cabling, the gland plate and the beacon are solid and every screen face is blank; the two doors open. Rigid node-transform clips: open and close. No skinning. No collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--a615f086","cdnUrl":"https://cdn.3dassets.dev/assets/38376/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--a615f086","thumbnailUrl":"https://cdn.3dassets.dev/assets/38376/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38376/v1/poster.webp","blurhash":"U9EMOLW;00RP%NxuInIA00of~qV@-;j[D%WB","category":{"slug":"props","title":"Props & Furniture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"animated","title":"Animated"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":19016,"triangles":284,"vertices":658,"meshes":12,"materials":6,"textures":0,"animations":["open","close"],"boundingBox":{"min":[-0.6200411745243652,0,-0.24996215993205445],"max":[0.6200411745243652,2.1849999874830246,0.26000458228534146]},"sizeMeters":[1.24,2.185,0.51],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:16.406Z","updatedAt":"2026-09-12T14:36:16.518Z","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/38376/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 ControlCabinetVerticalFarmAndHydroponicsTower(props) {\n  const { scene, animations } = useGLTF('https://cdn.3dassets.dev/assets/38376/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/38376/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38376/v1/model.glb\" alt=\"Control cabinet (Vertical Farm and Hydroponics Tower)\" 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/38376/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/38376/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);\n// Clips import as legacy AnimationClips on the root; GetComponent<Animation>().Play() starts the first."}},{"id":"38398","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--fa0d5a7a","title":"Mezzanine walkway, 2 m (Vertical Farm and Hydroponics Tower)","summary":"A 2 m section of service walkway at 2.4 m: an open mesh deck on a steel frame with legs to the floor, a toe board and a handrail both sides, ported at both ends so a run crosses the room.","description":"A 2 m section of service walkway at 2.4 m: an open mesh deck on a steel frame with legs to the floor, a toe board and a handrail both sides, ported at both ends so a run crosses the room. Overall 2.00 by 3.54 by 1.16 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the section on the floor and the deck top is at 2.4 m. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--fa0d5a7a","cdnUrl":"https://cdn.3dassets.dev/assets/38398/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--fa0d5a7a","thumbnailUrl":"https://cdn.3dassets.dev/assets/38398/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38398/v1/poster.webp","blurhash":"U48XLMt800t1~pkD8{f30Lax-nog0Noc?YRn","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"modular","title":"Modular"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":20712,"triangles":408,"vertices":952,"meshes":3,"materials":3,"textures":0,"animations":[],"boundingBox":{"min":[-1.0012676219506234,0,-0.5800080997999832],"max":[1.0012676219506234,3.538800001144409,0.5800080997999832]},"sizeMeters":[2.003,3.539,1.16],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:32.740Z","updatedAt":"2026-09-12T14:36:33.465Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38398/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MezzanineWalkway2MVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38398/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38398/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38398/v1/model.glb\" alt=\"Mezzanine walkway, 2 m (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38398/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38398/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}},{"id":"38399","slug":"vertical-farm-and-hydroponics-tower-vertical-farm-and--ec5f6452","title":"Mezzanine stair flight (Vertical Farm and Hydroponics Tower)","summary":"A straight stair flight up to the 2.4 m walkway: twelve open mesh treads on steel stringers, a handrail both sides and a bolted foot plate, with a half landing plate at the head.","description":"A straight stair flight up to the 2.4 m walkway: twelve open mesh treads on steel stringers, a handrail both sides and a bolted foot plate, with a half landing plate at the head. Overall 1.14 by 3.40 by 3.37 m (X by Y by Z). Metre units, +Y up, the working face toward +Z, resting on y=0. The origin is the centre of the flight's footprint on the floor; it climbs toward -Z and lands at 2.4 m. Static geometry; no rig, collision or navigation data. Original CC0 geometry: no grower, seed house, equipment maker, lighting brand or retailer is named or depicted anywhere, and every screen, fascia, crate and label face is blank.","status":"published","url":"https://3dassets.dev/assets/vertical-farm-and-hydroponics-tower-vertical-farm-and--ec5f6452","cdnUrl":"https://cdn.3dassets.dev/assets/38399/v1/model.glb","downloadUrl":"https://3dassets.dev/download/vertical-farm-and-hydroponics-tower-vertical-farm-and--ec5f6452","thumbnailUrl":"https://cdn.3dassets.dev/assets/38399/v1/thumb.webp","posterUrl":"https://cdn.3dassets.dev/assets/38399/v1/poster.webp","blurhash":"U47BG+%g00D%of9EM{_400Ri_3t7M{.8xu9E","category":{"slug":"buildings","title":"Buildings & Architecture"},"tags":[{"slug":"modern","title":"Modern"},{"slug":"realistic","title":"Realistic"},{"slug":"kit","title":"Kit / Set"},{"slug":"interior","title":"Interior"}],"license":{"slug":"cc0-1.0","name":"CC0 1.0 Universal","url":"https://creativecommons.org/publicdomain/zero/1.0/","attributionRequired":false},"contributor":{"username":"3dassets","name":"3D Assets","url":"https://3dassets.dev/u/3dassets"},"stats":{"fileSize":42208,"triangles":924,"vertices":2148,"meshes":2,"materials":2,"textures":0,"animations":[],"boundingBox":{"min":[-0.5699179211952763,0,-1.8250684681314027],"max":[0.5699179211952763,3.4000000953674316,1.5430943965911865]},"sizeMeters":[1.14,3.4,3.368],"hasDraco":false,"hasMeshopt":false,"hasKTX2":false,"extensionsUsed":["KHR_mesh_quantization"]},"aiGenerated":true,"aiModel":"Claude Opus 5","downloads":0,"publishedAt":"2026-09-12T14:36:39.876Z","updatedAt":"2026-09-12T14:36:39.999Z","usage":{"threejs":"import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'\n\nconst loader = new GLTFLoader()\nloader.load('https://cdn.3dassets.dev/assets/38399/v1/model.glb', (gltf) => {\n  scene.add(gltf.scene)\n})","r3f":"import { useGLTF } from '@react-three/drei'\n\nexport function MezzanineStairFlightVerticalFarmAndHydroponicsTower(props) {\n  const { scene } = useGLTF('https://cdn.3dassets.dev/assets/38399/v1/model.glb')\n  return <primitive object={scene} {...props} />\n}\nuseGLTF.preload('https://cdn.3dassets.dev/assets/38399/v1/model.glb')","modelViewer":"<model-viewer src=\"https://cdn.3dassets.dev/assets/38399/v1/model.glb\" alt=\"Mezzanine stair flight (Vertical Farm and Hydroponics Tower)\" camera-controls auto-rotate></model-viewer>","blender":"# Blender 4.x: File > Import > glTF 2.0, or from the Python console after downloading the file.\nimport bpy\nbpy.ops.import_scene.gltf(filepath='model.glb')  # from https://cdn.3dassets.dev/assets/38399/v1/model.glb\n# Metres and +Y up are converted to Blender's Z-up scene automatically.","godot":"# Godot 4: copy model.glb into res://models/ and the editor imports it as a scene.\nvar packed := load(\"res://models/model.glb\") as PackedScene\nvar model := packed.instantiate()\nadd_child(model)","unity":"// Unity: import model.glb with glTFast (Package Manager: com.unity.cloud.gltfast) and drag the prefab in,\n// or load it at runtime straight from the CDN:\nusing GLTFast;\nvar gltf = new GltfImport();\nif (await gltf.Load(\"https://cdn.3dassets.dev/assets/38399/v1/model.glb\")) await gltf.InstantiateMainSceneAsync(transform);"}}]}}