.TH GLTFPACK 1 .SH NAME gltfpack \- optimize glTF files to improve loading and rendering speed .SH SYNOPSIS .SY gltfpack .RI [ options ] .BR \-i " " \fIinput\fR .BR \-o " " \fIoutput\fR .YS .SH DESCRIPTION .B gltfpack substantially changes the glTF data by optimizing the meshes for vertex fetch and transform cache, quantizing the geometry to reduce the memory consumption and size, merging meshes to reduce the draw call count, quantizing and resampling animations to reduce animation size and simplify playback, and pruning the node tree by removing or collapsing redundant nodes. It will also simplify the meshes when requested to do so. .SS Basic Options .TP .BR \-i " " \fIinput\fR input file to process. Acceptable input formats are .BR .obj , .BR .gltf , and .B .glb files. .TP .BR \-o " " \fIoutput\fR output file. Supported output formats are .B .gltf and .BR .glf . .TP .BR \-c ", " \-cc produce compressed output. .B \-cc uses better compression. .SS Texture Options .TP .B \-tc convert all textures to KTX2 with BasisU supercompression .TP .B \-tu use UASTC when encoding textures (much higher quality and much larger size) .TP .BR \-tq " " \fIN\fR set texture encoding quality between 1 and 10 (default: 8) .TP .BR \-ts " " \fIR\fR scale texture dimensions by the ratio \fIR\fR (default: 1, should be between 0 and 1) .TP .B \-tp resize textures to the nearest power of 2 to conform to WebGL 1 restrictions .SS Simplification Options .TP .BR \-si " " \fIR\fR try to simplify meshes to the target size \fIR\fR as fraction of the original size (default: 1, should be between 0 and 1) .TP .B \-sa simplify aggressively, disregarding quality .SS Vertex Options .TP .BR \-vp " " \fIN\fR use \fIN\fR-bit quantization for vertex positions (default: 14, should be between 1 and 16) .TP .BR \-vt " " \fIN\fR use \fIN\fR-bit quantization for texture coordinates (default: 12, should be between 1 and 16) .TP .BR \-vn " " \fIN\fR use \fIN\fR-bit quantization for normals and tangents (default: 8, should be between 1 and 16) .TP .BR \-vc " " \fIN\fR use \fIN\fR-bit quantization for colors (default: 8, should be between 1 and 16) .SS Animation Options .TP .BR \-at " " \fIN\fR use \fIN\fR-bit quantization for translations (default: 16, should be between 1 and 24) .TP .BR \-ar " " \fIN\fR use \fIN\fR-bit quantization for rotations (default: 12, should be between 4 and 16) .TP .BR \-as " " \fIN\fR use \fIN\fR-bit quantization for scale (default: 16, should be between 1 and 24) .TP .BR \-af " " \fIN\fR resample animations at \fIN\fR Hz (default: 30) .TP .B \-ac keep constant animation tracks even if they do not modify the node transform .SS Scene Options .TP .B \-kn keep named nodes and meshes attached to named nodes so that they can be transformed externally .TP .B \-km keep named materials and disable named material merging .TP .B \-ke keep extra data .TP .B \-mm merge instances of the same mesh together when possible .TP .B \-mi use \fBEXT_mesh_gpu_instancing\fR when serializing multiple mesh instances .SS Miscellaneous Options .TP .B \-cf produce compressed files with fallback for loaders which do not support compression .TP .B \-noq disable quantization. This produces much larger glTF files with no extensions .TP .B -v verbose output (prints version when used without other options) .TP .BR \-r " " \fIfile\fR write a JSON report to \fIfile\fR .SH AUTHOR .B gltfpack is shipped with the .B meshoptimizer library written by .MT arseny.kapoulkine@gmail.com Arseny Kapoulkine .ME . This manual page was written for Debian by .MT timo@gaussglocke.de Timo R\[u00F6]hling .ME and may be used without restriction.