πCompress
Learn how to compress assets with a query.
βCompress a 3D asset
POST
https://api.echo3D.com/compress
This endpoint allows you to compress a 3D model.
Request Body
key*
string
Your API key.
hologramFileType*
string
A type of hologram. Only 2
form MODEL_HOLOGRAM
is supported.
ratio
number
A value between 0 to 1 that represents the compression ratio where 1 the original model and 0 is an empty model. For example, 0.3
. Default is 1
.
fileToCompress
string
The model file to compress. Supported formats include .obj, .fbx, .gltf, and .glb.
compressGlb
boolean
True if the output file should go through lossless compression which dramatically reduces file size but only supports a .glb output and selected 3D players. Default is false
.
gltfpack
boolean
True if the output should include an optimize version of the file using glftpack
. Default is false
.
tags
string
Command-line parameters for gltfpack
. Only cc
(produce compressed output) and tc
(compress textures) are supported. Use cc,tc
to include both.
modelName
string
The name to set for the output file.
modelId
string
The entry ID of the model file to compress.
resize
boolean
True if the output file should be resized. Default is false
.
ultimateCompress
boolean
True if the output should include an optimize version of the file using echo3D Ultimate Compression. Default is false
.
Action Descriptions and Priority
1. Resizing
If a Compress API call is sent with resize=true
,the model will be resized based on the ratio
value given.
2. Polygon Reduction
If a Compress API call is sent with no resize
parameter or with resize=false
, the model will be decimated (poly reduced) based on the ratio
value given.
3. echo3d Ultimate Compression
If a Compress API call is sent with no resize
parameter or with resize=false
and ultimateCompress=true
, the model will go through extensive compression which dramatically reduces file size. When compressing a file directly (not an entry), only .gltf and .glb files are supported. Only supports a .glb output and works with selected 3D players. Note that this compression may be lossy.
4. Draco Compression
If a Compress API call is sent with no resize
parameter or with resize=false
and compressGlb=true
, the model will go through lossless Draco compression which reduces file size. Only supports a .glb output and works with selected 3D players.
5. gltfpack
If a Compress API call is sent with no resize
parameter or with resize=false
, no compressGlb
parameter or compressGlb=false
, and gltfpack=true
, the model will be optimized using the glftpack
tool. You should send the file (in .gltf
or .glb
format) using the fileToCompress parameter, or the entry ID or the Poly model ID using the modelId
parameter. You can also add command-line parameters for gltfpack
:
cc
to produce a compressed output.tc
to compress textures.
6. gltf-transform
If a Compress API call is sent with no resize
parameter or with resize=false
, no compressGlb
parameter or compressGlb=false
, and gltfpack=false
, the model will be optimized using the gltf-transform
tool. You should set the gltf-transform parameter as the command to run with gltftransform=<COMMAND>
(list can be found here), and send the file (in .gltf
or .glb
format) using the fileToCompress parameter. You can also add command-line parameters for gltftransform
, for example:
gltftransform
set toresize
.width
set to256
.height
set to256
.
Last updated