Hrrrrmm. Status.
Mar. 26th, 2005 08:56 amPaint program, as yet unnamed:
* Source compiled: 5425 lines.
* It loads and saves files now! Just JPEG, but adding new formats will be trivial.
* Accepts dropped files, too—format detected by content, not the file extension.
* The image view can be panned, rotated and zoomed; painting works just the same!
* Fuzzy/solid brush with variable settings (ala OpenCanvas watercolor).
* Dirty rectangle system, so even full-screen painting is fast.
* The underlying infrastructure is slowly becoming nontrivial (and useful).
Things supported by code but not quite implemented, or with no GUI:
* Antialiased lines, filled rectangles and complex filled polygons (polys still jaggy, ideas pending).
* Image cropping and resizing (just needs a dialog).
* Alpha-blending (for layers; but the brush also uses it).
* DirectX (faster but not integrated atm - low priority because it makes debugging horrendous)
Yet to do:
* Rewrite affine transformation - add blending, interpolation and supersampling. It'll be great for the image view, and later it could support a particle-based brush engine. (Also needed for small brush sizes.)
* GUI "sprite" layers - for selection overlays or other visual feedback
* Image layers
* Alternate blending modes, for the brush and for layers
* Tool system
* Pen/pencil tool (basically a sharper non-blending brush)
* Stroke smoothing (interpolate fast pen movement/rough mouse input)
* Image adjustments - levels, hue/sat, etc.
* Upload JPEGs to LiveJournal Scrapbook (or some other FTP)
* (How could I forget?) Networking support!!! Done right, this time. :P
And probably lots more I can't think of. But sleep now. *snores-..-*
* Source compiled: 5425 lines.
* It loads and saves files now! Just JPEG, but adding new formats will be trivial.
* Accepts dropped files, too—format detected by content, not the file extension.
* The image view can be panned, rotated and zoomed; painting works just the same!
* Fuzzy/solid brush with variable settings (ala OpenCanvas watercolor).
* Dirty rectangle system, so even full-screen painting is fast.
* The underlying infrastructure is slowly becoming nontrivial (and useful).
Things supported by code but not quite implemented, or with no GUI:
* Antialiased lines, filled rectangles and complex filled polygons (polys still jaggy, ideas pending).
* Image cropping and resizing (just needs a dialog).
* Alpha-blending (for layers; but the brush also uses it).
* DirectX (faster but not integrated atm - low priority because it makes debugging horrendous)
Yet to do:
* Rewrite affine transformation - add blending, interpolation and supersampling. It'll be great for the image view, and later it could support a particle-based brush engine. (Also needed for small brush sizes.)
* GUI "sprite" layers - for selection overlays or other visual feedback
* Image layers
* Alternate blending modes, for the brush and for layers
* Tool system
* Pen/pencil tool (basically a sharper non-blending brush)
* Stroke smoothing (interpolate fast pen movement/rough mouse input)
* Image adjustments - levels, hue/sat, etc.
* Upload JPEGs to LiveJournal Scrapbook (or some other FTP)
* (How could I forget?) Networking support!!! Done right, this time. :P
And probably lots more I can't think of. But sleep now. *snores-..-*