About this project
qsketch is a professional-grade desktop application for sketching and raster painting, designed to offer a workflow familiar to users of Photoshop and Aseprite. Built from scratch in Rust using the `egui` immediate mode GUI and `wgpu` GPU renderer, it prioritizes speed and responsiveness, ensuring that strokes remain fluid even on large canvases.
The core of the application is a tiled, copy-on-write raster engine. Layers are stored as 64x64 tiles behind Arcs, making undo snapshots cheap and memory-efficient by only duplicating tiles touched by a stroke. The brush engine supports separate flow and opacity controls, pressure-to-size and pressure-to-opacity curves, and thirteen built-in presets. Users can import brush tips from PNGs, GIMP (.gbr, .gih), and Photoshop (.abr) files, or add custom textures.
Key features include:
- **Photoshop Compatibility**: Full support for opening and saving `.psd` files (8/16-bit RGB or grayscale), preserving layer names, visibility, opacity, blend modes, and clipping.
- **Advanced Editing**: 20 blend modes, per-layer opacity, clipping masks, alpha lock, nested layer groups, and merge operations.
- **Selection Tools**: Rectangle, ellipse, lasso, and magic-wand selections with add/subtract/intersect modifiers and anti-aliased edges.
- **Filter Suite**: 43 filters across standard Photoshop groups plus experimental effects like Glitch and Chromatic Aberration, all with live preview and selection awareness.
- **Symmetry & Stabilizers**: Mirror painting (horizontal, vertical, radial) and stroke stabilizers (lazy brush, moving average) to aid precision.
- **Stylus Support**: Native pressure support via Windows Ink or the optional `octotablet` backend for tilt and eraser detection.
- **Customizable UI**: Dockable panels for Tools, Layers, History, Color, and more, with a fully remappable keyboard shortcut system.
The application uses a native `.qsk` file format, which is a plain ZIP archive containing PNGs and a JSON manifest, ensuring data recoverability. It supports autosave for crash recovery and can be installed via platform-specific packages for Windows and Linux.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.