v4.0.0#

✨ Added#

  • GlbEncoder: new encoder to .glb.

  • McsaDecoder, GlbEncoder: skeleton support (--skeleton flag).

  • McsaDecoder, GlbEncoder: built-in skeleton animation support (--animation flag).

  • OlCubemapDecoder: new decoder for cubemap textures.

  • OlDecoder: RGBA32F (DX10) format support.

  • CLI: --parent flag.

📝 Changed#

CLI#

  • Exception handling: unexpected errors no longer interrupt batch processing.

  • Cubemap textures: fallback from standard to cubemap on decode failure.

  • --model-formats renamed to --mdlformat.

  • --hdri renamed to --cubemap.

  • --no-overwrite renamed to --unique.

  • Default model format changed to .obj.

  • Default model format with --skeleton changed to .glb.

Core#

  • FileDecoder.validate() renamed to validate_signature().

  • FileDecoder.convert_to() and convert() now accept options: UserOptions parameter.

  • FileDecoder, FileEncoder: removed content reset on close().

  • FileContent: new property type: FileType.

  • FileFormat: new property suffix: str.

⚡ Optimized#

  • McsaDecoder: StructIO read array optimization (parsing ~12x faster).

  • CLI: files_map replaced with iterator (eliminated startup delay on large folders).