
Tool to Trim Alpha edges from Images (Textures, Sprites), Generate / Optimize Sprite Sheets and Mix ChannelsImageProcessor is tested on macOS, the DLLs are both signed and notarised. Only signed for Windows, but the same code was built in GitHub Actions.Network might be required for the first run on Apple platforms.If image is empty, the software replaces it with an empty one of size 4x4.Readonly files will be skipped.The Software also creates log path that you can change in Settings.Use:Open the tool window by selecting it via Unity Tabs "Window/Ekzempliar/Image Processor Plugin".About:The tool allows you to crop images, focusing on removing the alpha (transparency) from the edges. This process assists in reducing system memory and VRAM usage, which can be essential if Sprite Atlas does not fit well with some of the memory problems you encounter.Image Cropping section includes:Per image: finds the optimal frame per image and swaps each with its cropped version.Per sequence: finds the optimal frame among all the images in a sequence and swaps them with their cropped version.Sprite Sheet section includes:Generator: creates a sprite sheet from folder that has images of the same dimensions.Extraction: slices sprite sheet and saves individual images in a folder.Reassemble: accepts an spritesheet, which it slices, trims alpha and then regenerates a new spritesheet, which is expected to reduce spritesheet size.Channel Mixer has one section only:Mixing Channels: attaching Source 1, Source 2 and Destination image will overwrite Destination with a new image combined from selected channels from Source 1 (Src1) and Source 2 (Src2).Current FunctionalityEffortless tool: Crop individual images or entire folders, recursive walk, of images as a batch under the /Assets/ directory with just a few clicks.Designed specifically for developers, it serves as an optimization tool when Sprite Atlas may not be the ideal solution. It allows you to fine-tune your image assets swiftly, without need for an artist to reexport sprites (textures).Image cropping works in parallel, allowing the tool to utilize multiple threads. Sprite generation, extraction and channel mixing work on one thread.Tested on Intel macOS, M-chip macOS, and Intel Windows with PNG image format.Choose between various cropping modes. Enable cropping relative to any corner, side or center for jitter-free animations with mirrored space on the X and/or Y axes. You can disable centering for the best trim, efficiently removing redundant alpha from images.You can generate Sprite Sheet from images that share the exact dimensions; there is an option available to crop all sprites to reduce the size of the Sprite Sheet. Additionally, the tool can extract images from Sprite Sheets and Optimize existing Sprite Sheets.The tool executes as a subprocess within the Unity Editor. It neither utilizes network connections nor deletes your image files. Empty images will be gracefully replaced with an empty image of size 4x4.There is an option to crop images accounting for division by 4 as Unity requires to apply Sprite image compression (refer to https://docs.unity3d.com/Manual/class-TextureImporterOverride.html). Note that this option applies only to images with even dimensions.Used Rust Libraries:[dependencies]ctor = "0.2.2"chrono = { version = "0.4", features = ["serde"] }image = "0.24.6"rayon = "1.5"num_cpus = "1.15.0"walkdir = "2.3"serde = { version = "1.0", features = ["derive"] }serde_json = "1.0"nameof = "1.2.2"//testing[dev-dependencies]rand = "0.8"Rewriting from cpp to rs for the ease of shipment.