Current collected state Current
Observed since 20 Oct, 19:37 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
3d-tiles-optimize
Optimize 3d-tiles by 3d-tiles-tools with glTF-Transform
The 3D Tiles Optimize are a tool for optimizing 3D Tiles data, replace optimizeGlb contentStage lib
from gltf-pipeline
to glTF-Transform.
Install Node.js if you don't already have it, and then:
npm install -g 3d-tiles-optimize
Using 3d-tiles-optimize as a command-line tool:
3d-tiles-optimize optimize ./input ./output
@see glTF-Transform Configuration
| Option | Description | Types | Default |
|---|---|---|---|
| 🐦 COMMON | |||
--logLevel | The log level. | trace / debug / info / warn / error / fatal / silent | warn |
| 🌓 PIPELINE | |||
--combine | Combines all external tilesets into a single tileset. | boolean | false |
| 📦 PACKAGE | |||
--dedup | Deduplicate accessors and textures. | boolean | true |
--prune | Removes properties from the file if they are not referenced by a Scene. | boolean | true |
--prune.attributes | Whether to prune unused vertex attributes. | boolean | true |
--prune.solidTextures | Whether to prune solid (single-color) textures, converting them to material factors. | boolean | true |
| 🌍 SCENE | |||
--instance | Create GPU instances from shared mesh references. | boolean | true |
--instance.min | Number of instances required for instancing. | number | 5 |
--flatten | Flatten scene graph. | number | true |
| 🫖 GEOMETRY | |||
--draco | Compress geometry with Draco. | boolean | false |
--meshopt | Compress geometry and animation with Meshopt. | boolean | true |
--meshopt.level | Meshopt compress level. | medium / high | high |
--quantize | Quantize geometry, reducing precision and memory. | boolean | false |
--weld | Merge equivalent vertices. Required when simplifying geometry. | boolean | true |
--simplify | Simplify mesh geometry with meshoptimizer. | boolean | true |
--simplify.error | Simplification error tolerance, as a fraction of mesh extent. | number | 0.0001 |
--simplify.ratio | Target ratio (0–1) of vertices to keep. | number | 0.0 |
--simplify.lockBorder | Whether to lock topological borders of the mesh. | boolean | false |
| 🎨 MATERIAL | |||
--palette | Creates palette textures and merges materials. | boolean | true |
--palette.min | Minimum number of blocks in the palette texture. If fewer unique material values are found, no palettes will be generated. | number | 5 |
--join | Join meshes and reduce draw calls. Requires --flatten. | boolean | true |
--join.meshes | Join distinct meshes and nodes. Requires --join. | boolean | true |
--join.named | Join named meshes and nodes. Requires --join. | boolean | true |
| 🖼 TEXTURE | |||
--textureCompress | Texture compression format. KTX2 optimizes VRAM usage and performance; AVIF and WebP optimize transmission size. Auto recompresses in original format. | ktx2 / webp / avif / auto / false | webp |
--textureCompress.resize | Resizes textures to given maximum [width,height] | false, preserving aspect ratio. Presets "nearest-pot", "ceil-pot", and "floor-pot" resize textures to power-of-two dimensions. | [number,number] / nearest-pot / ceil-pot / floor-pot / false | false |
| ⏯️ ANIMATION | |||
--resample | Resample animations, losslessly deduplicating keyframes | boolean | true |
--sparse | Reduces storage for zero-filled arrays. If disabled, existing accessors (sparse or not) are left unchanged. | boolean | true |
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
tmpEnvironment{
"local_name": "tmp",
"alias": false,
"peer_metadata": null
} | ^0.2.5 | runtime |
sharpEnvironment{
"local_name": "sharp",
"alias": false,
"peer_metadata": null
} | ^0.34.5 | runtime |
p-limitEnvironment{
"local_name": "p-limit",
"alias": false,
"peer_metadata": null
} | ^7.3.0 | runtime |
promptsEnvironment{
"local_name": "prompts",
"alias": false,
"peer_metadata": null
} | ^2.4.2 | runtime |
fs-extraEnvironment{
"local_name": "fs-extra",
"alias": false,
"peer_metadata": null
} | ^11.3.3 | runtime |
cli-table3Environment{
"local_name": "cli-table3",
"alias": false,
"peer_metadata": null
} | ^0.6.5 | runtime |
micromatchEnvironment{
"local_name": "micromatch",
"alias": false,
"peer_metadata": null
} | ^4.0.8 | runtime |
draco3dgltfEnvironment{
"local_name": "draco3dgltf",
"alias": false,
"peer_metadata": null
} | ^1.5.7 | runtime |
csv-stringifyEnvironment{
"local_name": "csv-stringify",
"alias": false,
"peer_metadata": null
} | ^6.6.0 | runtime |
language-tagsEnvironment{
"local_name": "language-tags",
"alias": false,
"peer_metadata": null
} | ^2.1.0 | runtime |
meshoptimizerEnvironment{
"local_name": "meshoptimizer",
"alias": false,
"peer_metadata": null
} | ^1.0.1 | runtime |
3d-tiles-toolsEnvironment{
"local_name": "3d-tiles-tools",
"alias": false,
"peer_metadata": null
} | ^0.5.1 | runtime |
keyframe-resampleEnvironment{
"local_name": "keyframe-resample",
"alias": false,
"peer_metadata": null
} | ^0.1.0 | runtime |
@donmccurdy/caporalEnvironment{
"local_name": "@donmccurdy/caporal",
"alias": false,
"peer_metadata": null
} | ^0.0.10 | runtime |
@gltf-transform/coreEnvironment{
"local_name": "@gltf-transform/core",
"alias": false,
"peer_metadata": null
} | ^4.3.0 | runtime |
@gltf-transform/functionsEnvironment{
"local_name": "@gltf-transform/functions",
"alias": false,
"peer_metadata": null
} | ^4.3.0 | runtime |
@gltf-transform/extensionsEnvironment{
"local_name": "@gltf-transform/extensions",
"alias": false,
"peer_metadata": null
} | ^4.3.0 | runtime |
tsdownEnvironment{
"local_name": "tsdown",
"alias": false,
"peer_metadata": null
} | ^0.20.3 | development |
@types/tmpEnvironment{
"local_name": "@types/tmp",
"alias": false,
"peer_metadata": null
} | ^0.2.6 | development |
typescriptEnvironment{
"local_name": "typescript",
"alias": false,
"peer_metadata": null
} | ^5.9.3 | development |
@types/nodeEnvironment{
"local_name": "@types/node",
"alias": false,
"peer_metadata": null
} | ^25.2.1 | development |
@types/promptsEnvironment{
"local_name": "@types/prompts",
"alias": false,
"peer_metadata": null
} | ^2.4.9 | development |
@types/fs-extraEnvironment{
"local_name": "@types/fs-extra",
"alias": false,
"peer_metadata": null
} | ^11.0.4 | development |
@types/micromatchEnvironment{
"local_name": "@types/micromatch",
"alias": false,
"peer_metadata": null
} | ^4.0.10 | development |
@types/draco3dgltfEnvironment{
"local_name": "@types/draco3dgltf",
"alias": false,
"peer_metadata": null
} | ^1.4.3 | development |
@types/language-tagsEnvironment{
"local_name": "@types/language-tags",
"alias": false,
"peer_metadata": null
} | ^1.0.4 | development |
Source distribution
{
"shasum": "9fb5e2c179bfed95a5f6e6475d141d73c803c45b",
"tarball": "https://registry.npmjs.org/3d-tiles-optimize/-/3d-tiles-optimize-0.0.7.tgz",
"fileCount": 6,
"integrity": "sha512-z/8JR8eLdBklXGmP55f354tU9UHTznW+l/8BMbylv9LVJeb8o2xuKTWotJiMy4p44nvecG95lHTe191PfTfbQw==",
"signatures": [
{
"sig": "MEYCIQD4igrqqXwwSKnvCBV5Gn9C7vnXBOrKF++5BC+XPwbkkAIhAMzfwLZhJ8TcJ+ONdlHj1jswoXAxyMkFCHwLn+3xyzER",
"keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
}
],
"unpackedSize": 59392
}Shared repository data · GitHub
Public sponsor counts have not been collected. These signals belong to the repository owner.
github · 1 observations shown. Missing days are unknown.
| Date / source period | Value | Observed at |
|---|---|---|
| 2026-10-22 | 0 | 2026-10-22T14:25:46.3331372Z |
Observed since 20 Oct, 19:37 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:0bfa81ce02fa2e9665d7663e71091f03cd36afcc9ab4f1ccce2f4b48ef06e077