Free windmill 3D models for three.js (GLB, CC BY)

24 free windmills for three.js from the 117 in the paprika3d asset library (CC BY), as meshopt GLB files: each with its author, license, credit line, triangles and file size, and the asset_search call that fetches it.

What the library holds

The paprika3d asset library holds 117 windmills among its 57,732 models. All of them are licensed CC BY 4.0, which asks you to credit the author wherever you use the model; each card below carries the credit line to paste.

114 of the 117 pass the library's quality checks: textured (or drawn in vertex colours, for a low-poly or voxel model), not flat, at most 15 MB, with a name, a description and a real-world height. Among those, the median model has 6,280 triangles, with the middle half between 2,080 and 20,600, and the median file is 0.18 MB, with nine in ten at most 0.8 MB. The median one stands 10 m tall at real size. None carries a texture over 1024 px. 16 are animated and 2 rigged. The most common styles are stylized (65), low-poly (33) and realistic (8).

Windmills in a three.js scene

The point of a windmill is its turning sails. In the 16 animated files the sails kept their own node and the clip turns them: play it with an AnimationMixer and set timeScale on the action to match your wind. In a static windmill the sails may have been merged into the tower where they shared its material; where they did not, they are a separate mesh you can turn, but its origin is probably not at the hub. Measure the hub with new THREE.Box3().setFromObject(sails).getCenter(new THREE.Vector3()), put an empty Object3D there, move the sails into it with attach() and spin that pivot.

For a field of windmills, give the towers one InstancedMesh and the sails another, with the sail geometry centred on its hub, and turn every sail in the vertex shader by time: a hundred windmills then cost two draw calls and no matrix updates per frame. A median height of 10 m suits a landscape view, where they read from afar.

Fetch one and load it

With the paprika3d plugin in Claude Code, or its MCP server in any other agent, the agent searches the library in words or picks a model by the id on its card. pick downloads the file into the project's assets/ folder (public/assets/ under vite), adds the credit line to assets/CREDITS.md and answers with the code that loads it at real size. Give cwd, the project folder, as with every paprika3d tool.

asset_search {"query": "windmill", "cwd": "."}
asset_search {"pick": "2c54d1c79d27428aaea4d0909cae0635", "cwd": "."}

Every file is a binary glTF (.glb) compressed with meshopt, so GLTFLoader needs the meshopt decoder that ships with three.js. The origin sits at the bottom centre of each model, so it stands on the floor where you place it:

import * as THREE from 'three';
import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js';
import { MeshoptDecoder } from 'three/addons/libs/meshopt_decoder.module.js';

const loader = new GLTFLoader().setMeshoptDecoder(MeshoptDecoder);
const gltf = await loader.loadAsync('assets/windmill-2c54d1.glb');
scene.add(gltf.scene);

24 windmills to start from

Chosen from the 114 that pass the checks: the ones agents picked most through asset_search first, then the ones whose name says what they are, then lighter files, with at most 2 per author. Each CC BY card ends with its credit line: paste it into your credits, as the license requires.

Windmill

Windmill by bobrik00
CC BY 4.0 · 1,966 triangles · 0.404 MB · low-poly · 10 m tall
asset_search {"pick": "2c54d1c79d27428aaea4d0909cae0635"}

Credit: "Windmill" by bobrik00 (https://sketchfab.com/3d-models/2c54d1c79d27428aaea4d0909cae0635) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Asset Windmill #MedievalFantasyAssets

Asset Windmill #MedievalFantasyAssets by Adrian
CC BY 4.0 · 679 triangles · 0.025 MB · stylized · 10 m tall
asset_search {"pick": "bee28faec6bb4611a6119ac21f599c8b"}

Credit: "Asset Windmill #MedievalFantasyAssets" by Adrian (https://sketchfab.com/3d-models/bee28faec6bb4611a6119ac21f599c8b) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Desert Nomad Windmill

Desert Nomad Windmill by BenVanhaelst
CC BY 4.0 · 10,176 triangles · 1.077 MB · stylized · 9 m tall · animated
asset_search {"pick": "1c4ca424eb394fa4bdcd81545f392aba"}

Credit: "Desert Nomad Windmill" by BenVanhaelst (https://sketchfab.com/3d-models/1c4ca424eb394fa4bdcd81545f392aba) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Voxel Training - Windmill

Voxel Training - Windmill by Drakeny
CC BY 4.0 · 7,112 triangles · 0.049 MB · voxel · 10 m tall
asset_search {"pick": "6f471032ebd14c778cc5c985030a2554"}

Credit: "Voxel Training - Windmill" by Drakeny (https://sketchfab.com/3d-models/6f471032ebd14c778cc5c985030a2554) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Windmill Stylized

Windmill Stylized by _Alexandr
CC BY 4.0 · 4,299 triangles · 0.277 MB · toon · 8 m tall · animated · rigged
asset_search {"pick": "a7780e3667954bbf97bb619cb8a3e272"}

Credit: "Windmill Stylized" by _Alexandr (https://sketchfab.com/3d-models/a7780e3667954bbf97bb619cb8a3e272) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

-Game ready- Stylized Fox Village Windmill

-Game ready- Stylized Fox Village Windmill by Misa
CC BY 4.0 · 3,247 triangles · 0.659 MB · stylized · 10 m tall
asset_search {"pick": "29d7de4a599047b9b9c85ae64153f916"}

Credit: "-Game ready- Stylized Fox Village Windmill" by Misa (https://sketchfab.com/3d-models/29d7de4a599047b9b9c85ae64153f916) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Ancient Windmill

Ancient Windmill by ThomasBoone
CC BY 4.0 · 8,332 triangles · 0.498 MB · stylized · 10 m tall
asset_search {"pick": "429be92f26d64734b562e42f440aa81f"}

Credit: "Ancient Windmill" by ThomasBoone (https://sketchfab.com/3d-models/429be92f26d64734b562e42f440aa81f) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Handpainted Windmill Tower

Handpainted Windmill Tower by Théo Lerbeil
CC BY 4.0 · 6,622 triangles · 0.21 MB · low-poly · 8 m tall
asset_search {"pick": "eae1631dbc4c4e8581de9ffb02cff1f2"}

Credit: "Handpainted Windmill Tower" by Théo Lerbeil (https://sketchfab.com/3d-models/eae1631dbc4c4e8581de9ffb02cff1f2) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Victorian windmill

Victorian windmill by Yubel
CC BY 4.0 · 70,557 triangles · 0.388 MB · low-poly · 0.15 m tall
asset_search {"pick": "50e73be64ec24464baf911c3b0e3abdd"}

Credit: "Victorian windmill" by Yubel (https://sketchfab.com/3d-models/50e73be64ec24464baf911c3b0e3abdd) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Windmill from Poly by Google

Windmill from Poly by Google by IronEqual
CC BY 4.0 · 525 triangles · 0.008 MB · low-poly · 10 m tall
asset_search {"pick": "96db2416305249569097ce5d8a1f8e1d"}

Credit: "Windmill from Poly by Google" by IronEqual (https://sketchfab.com/3d-models/96db2416305249569097ce5d8a1f8e1d) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Windmill ( Animated )

Windmill ( Animated ) by Adrian Hage
CC BY 4.0 · 844 triangles · 0.026 MB · low-poly · 20 m tall · animated
asset_search {"pick": "6ce5667e8d5c47068ea13196036efd52"}

Credit: "Windmill ( Animated )" by Adrian Hage (https://sketchfab.com/3d-models/6ce5667e8d5c47068ea13196036efd52) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Episode 65 - WindMill

Episode 65 - WindMill by dartuchiwa
CC BY 4.0 · 3,464 triangles · 0.054 MB · low-poly · 10 m tall · animated
asset_search {"pick": "19d436c8acea45cd914c035d2aff9b54"}

Credit: "Episode 65 - WindMill" by dartuchiwa (https://sketchfab.com/3d-models/19d436c8acea45cd914c035d2aff9b54) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Windmill 3D

Windmill 3D by ana_stakflett
CC BY 4.0 · 2,083 triangles · 0.04 MB · low-poly · 12 m tall · animated
asset_search {"pick": "33b2debd464f465b917736873680a050"}

Credit: "Windmill 3D" by ana_stakflett (https://sketchfab.com/3d-models/33b2debd464f465b917736873680a050) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

COC02 Windmill

COC02 Windmill by pymetime
CC BY 4.0 · 15,291 triangles · 0.217 MB · stylized · 8 m tall
asset_search {"pick": "dcbec8b00ad64e43a8894893809765d7"}

Credit: "COC02 Windmill" by pymetime (https://sketchfab.com/3d-models/dcbec8b00ad64e43a8894893809765d7) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Low Poly Stylised Windmill

Low Poly Stylised Windmill by Weronika 'Ronii' Nowicka
CC BY 4.0 · 373 triangles · 0.089 MB · stylized · 10 m tall
asset_search {"pick": "dd0d65a5c6f643a2af2e930c640d45f4"}

Credit: "Low Poly Stylised Windmill" by Weronika 'Ronii' Nowicka (https://sketchfab.com/3d-models/dd0d65a5c6f643a2af2e930c640d45f4) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Low Poly Portuguese Windmill

Low Poly Portuguese Windmill by lexferreira89
CC BY 4.0 · 1,684 triangles · 0.282 MB · low-poly · 10 m tall
asset_search {"pick": "1ef2cbaa569d45a098b5e337bdef4b00"}

Credit: "Low Poly Portuguese Windmill" by lexferreira89 (https://sketchfab.com/3d-models/1ef2cbaa569d45a098b5e337bdef4b00) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

WindMill_lp

WindMill_lp by Sacr11
CC BY 4.0 · 994 triangles · 0.018 MB · low-poly · 6 m tall
asset_search {"pick": "1f1d4131b7bb41f38e5b01f2d7bf635b"}

Credit: "WindMill_lp" by Sacr11 (https://sketchfab.com/3d-models/1f1d4131b7bb41f38e5b01f2d7bf635b) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Low Poly Island with Windmill

Low Poly Island with Windmill by Jayasurya Aasaithambi
CC BY 4.0 · 688 triangles · 0.014 MB · low-poly · 8 m tall
asset_search {"pick": "860935f99b5d49bc880c8b08a2f06a94"}

Credit: "Low Poly Island with Windmill" by Jayasurya Aasaithambi (https://sketchfab.com/3d-models/860935f99b5d49bc880c8b08a2f06a94) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Detailed Windmill

Detailed Windmill by ajmason3D
CC BY 4.0 · 32,896 triangles · 0.325 MB · stylized · 12 m tall
asset_search {"pick": "f455e63508424d03968b24da03891912"}

Credit: "Detailed Windmill" by ajmason3D (https://sketchfab.com/3d-models/f455e63508424d03968b24da03891912) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Windmill - Rise of Atlantis

Windmill - Rise of Atlantis by Kathrin&Christian
CC BY 4.0 · 211 triangles · 0.067 MB · stylized · 8 m tall
asset_search {"pick": "6e940b0232ed4c61bf4d560dd4c3e9d2"}

Credit: "Windmill - Rise of Atlantis" by Kathrin&Christian (https://sketchfab.com/3d-models/6e940b0232ed4c61bf4d560dd4c3e9d2) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

windmill_draft

windmill_draft by Erin_Nohai
CC BY 4.0 · 12,545 triangles · 0.115 MB · stylized · 10 m tall
asset_search {"pick": "d9a913f6827c4337a666af1256cf10c6"}

Credit: "windmill_draft" by Erin_Nohai (https://sketchfab.com/3d-models/d9a913f6827c4337a666af1256cf10c6) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Wind Mill

Wind Mill by Carlos.Maciel
CC BY 4.0 · 88,511 triangles · 1.394 MB · sci-fi · 1 m tall
asset_search {"pick": "48dbd301371f43b4943727e09bebc636"}

Credit: "Wind Mill" by Carlos.Maciel (https://sketchfab.com/3d-models/48dbd301371f43b4943727e09bebc636) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Junk Tower

Junk Tower by AbsoluteMadLadd
CC BY 4.0 · 31,822 triangles · 0.941 MB · stylized · 10 m tall
asset_search {"pick": "bc8fa17135b54d20928c4a12213329fa"}

Credit: "Junk Tower" by AbsoluteMadLadd (https://sketchfab.com/3d-models/bc8fa17135b54d20928c4a12213329fa) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

House

House by Gary
CC BY 4.0 · 2,526 triangles · 0.119 MB · stylized · 8 m tall
asset_search {"pick": "72b40b95e0574fab92efc350196ea2fc"}

Credit: "House" by Gary (https://sketchfab.com/3d-models/72b40b95e0574fab92efc350196ea2fc) is licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Optimized for the web by paprika3D.

Counts from the library's catalog on 2026-10-28. The models are their authors' work under the license on each card; paprika3d converted them for the web.