Create a new --warmup argument to specify the number of warmup loops for physics before export. This allows users to control how many times the animation is pre-processed to stabilize physics.
This commit addresses two critical bugs in the single-frame export functionality of the CLI tool.
1. **Corrects Export Mode Detection for Ambiguous Formats (.webp):**
- Previously, any output format also supported by the video exporter (like `.webp`) would incorrectly trigger video export mode, ignoring the `--time` argument intended for single-frame captures.
- The logic is now updated to prioritize the presence of the `--time` argument. If this argument is provided, the tool is forced into single-frame export mode, correctly handling formats like static `.webp`.
- This was implemented by changing the `time` variable to a nullable float (`float?`) to reliably detect if the argument was passed.
2. **Fixes "Slot Not Found" Error for `--hide-slot`:**
- The operation to hide slots was being performed *before* the animation was applied to the skeleton. This caused failures when trying to hide slots that are only activated or have attachments during a specific animation.
- The slot visibility logic has been moved to execute *after* the animation state is set and the skeleton is updated to the target frame. This ensures that the skeleton is in its final pose, making all relevant slots available for modification.
Extends the CLI to support exporting single frames as images (.png, .jpg, etc.) in addition to video.
The export logic now determines the output type based on the file extension of the `--output` path.
- Adds new arguments: `--time` to specify the frame and `--quality` for image compression.
- Uses `FrameExporter` for recognized image formats.
- Updates the help message with the new options.