David Capello afbd3b2d96 Optimize ToolLoop with modified regions of pixels
Here we avoid copying and clearing pixels that will not be used
in the whole tool loop process.
Changes:
* Add several member functions in ToolLoop to validate/invalidate regions
  of source/destination images so we know what regions are safe to use
  by inks and can be shown in the editor
* Add new DocumentObserver::onExposeSpritePixels() member to validate
  pixels that will be displayed in the editor
* Add Ink::needs/createSpecialSourceArea() member functions to validate
  extra areas for inks like blur or jumble
* Add undoers::ModifiedRegion to save the undo information about the
  modified region
* Add ShowHideDrawingCursor class
* Change "blur" tool policy from overlap to accumulate

(This is a real fix for issue #239)
2014-12-08 14:57:56 -03:00
2014-11-16 23:03:30 -03:00
2014-12-03 11:15:09 -03:00
2014-10-30 11:34:35 -03:00
2014-12-03 11:15:09 -03:00

Aseprite

Copyright (C) 2001-2014 David Capello

THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY
See the license section for more information.

Introduction

Aseprite is an open source program to create animated sprites. Its main features are:

  • Sprites are composed by layers & frames (as separated concepts).
  • Supported color modes: RGBA, Indexed (palettes up to 256 colors), and Grayscale.
  • Load/save sequence of PNG files and GIF animations (also FLC, FLI, JPG, BMP, PCX, TGA).
  • Export/import animations to/from Sprite Sheets.
  • Tiled drawing mode, useful to draw patterns and textures.
  • Undo/Redo for every operation.
  • Mini-editor with real-time animation preview.
  • Multiple editors support.
  • Pixel art specific tools like filled Contour & Polygon.
  • Onion skinning

Issues

There is a list of Known Issues (things to be fixed or that aren't yet implemented).

If you found a bug or have a new idea/feature for the program, you can report them.

Support

You can ask for help in:

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Authors

Thanks to all the people who have contributed ideas, patches, bugs report, feature requests, donations, and help me developing Aseprite.

Credits

Aseprite uses libraries or parts of the original source code of the following projects created by third-parties:

Other parts of code by:

  • Gary Oberbrunner
    Code to quantize RGB images with ordered dither method.
Languages
C++ 94.2%
Lua 3.7%
Shell 0.9%
CMake 0.8%
C 0.2%
Other 0.2%