You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
The fill tool has a Tolerance slider (0 to 255) that also takes near colors, and a Global fill option that recolors every matching pixel on the layer instead of one connected area. Both stay inside the selection, and each fill is one undo step.
Shade (D) turns the pencil into a shading brush. The left button steps each pixel to the next swatch in the palette and the right button to the one before. A pixel changes once per stroke, colors not in the palette are left alone, and a stroke is one undo step.
Spritesheet export can lay frames out in a grid (Columns), leave clear pixels between them (Padding), and write a .json beside the PNG with each frame's rectangle and duration, in the JSON array sheet layout game engines read. export-sheet takes --columns, --padding, --scale, and --json. A one-row sheet is unchanged.
Magic wand (W) selects the area the fill tool would reach, using the same Tolerance and Global fill settings. Selections can now be any shape: Shift adds a marquee or wand area to the selection and Alt cuts it out. Move, nudge, flip, rotate, copy, paste, clear, and drawing all keep to the selected pixels, the outline follows their edge, and undo restores the shape.
Fixed
Crash recovery keeps reference images. Their placement is saved with each recovery copy, and moving a reference alone now triggers autosave. Restoring brings them back where they were, and the next Save writes them beside the document.
A document opened by a relative path, such as oxypixel art.oxypix from a terminal, no longer loses its reference images after a Save As into another folder.
After undoing or redoing a swatch move or a ramp, the selected swatch and the ramp end stay on the color they marked instead of the slot.
Changed
The window draws with wgpu: Direct3D 12 on Windows, with the WARP software renderer when there is no GPU, and Vulkan on Linux. If wgpu cannot start, OxyPixel falls back to OpenGL as before. This fixes "egui_glow requires opengl 2.0+" on Windows virtual machines, Remote Desktop sessions, and machines without an OpenGL 2 driver. The .deb recommends libvulkan1 and mesa-vulkan-drivers.
The Windows CI job starts the release build, waits for its window, and closes it, so a build that cannot open its window fails the pull request. OXYPIXEL_NO_DIALOG=1 keeps a startup error on stderr instead of in a message box.