Krita/GSoC2010
< Krita
Pentalis
TODO to the midterm
Fixing the current glitch with duplicated hatchingPressure sensitivity to make lines thickerAdding a mode without sub-pixel precisionMaking an intuitive GUI to letPressure sensitivity to make more linesAbility to make crosshatchingEnabling pressure sensitivity to create crosshatching
Roadmap:
Finish the GUI containing all the widgets for a finished brush.Finished rc1, Evaluating design.Finish the GUI containing all widgets for a final release; crosshatching will have a prototype simplified interface.Clean all the code: 4 space indentation, use self-explaining long names,change class names to the definite ones,eliminate all chalk brush residuals.Link GUI. Only a window left.Implement the functions described by the GUI, from easiest to hardest or from most important to least important.- (
Most important: Scratch off algorithmnot so important, the algorithm would slow down both development and the user's computer by a huge amount, this may not be implemented;stylus setting sensitivityImplemented;Hard: interval based settingsthis was obsoleted by a discussion in IRCI'm reconsidering this, contrary to what others may think, the need for a DISCRETE list of settings controlled by the GUI is real and not perceived, the tool can only reach its full potential in that way).
Currently doing:
Considering how to approach impasto.Finishing the hatching brush.Fixing small remaining bugs.Intoxicating with yoghurtHeading to sleep after a long day of doing interesting things and learning, see today's commit 00:02, 27 June 2010 (PDT)Linking the last bits of GUI 11:39, 21 June 2010 (PDT)Linking the GUI 05:19, 18 June 2010 (PDT)Learning how to link new GUI widgets to the general config widget: the basic curve dialog and the BrushTip dialog. 07:08, 17 June 2010 (PDT)
Roadmap for Impasto:
- Bumpmapping algorithm: Allow multiple light sources.
Test point: take a greyscale Krita layer acting as a heightmap and bumpmap it.Create a heightmap-enabled colorspace.Ugly and hacky at the moment.- Bumpmapping algorithm: Allow illumination to work with different color spaces (use simple, hackish, temporary solution).
- Test point: take a Krita layer with a heightmap-enabled colorspace, save the impasted projection.
- Create or patch a paintop to be able to write to the heightmap ("The fifth channel").
- Integrate the class into Krita runtime through a hidden or visible experimental layer, celebrate with champagne when it works.
- Create a basic GUI to let the user control light sources and impasto behavior.
- Device a method to allow all relevant paintops to write to the impasto channel (This point may be extended later).
- Pretty Gimmick: Find the perfect heightmap to cause circles to look like semispheres and the impasto settings to make them look like droplets of water or a similar good-looking effect. Ask LukasT to make the spray brush able to create such droplets.
- Bumpmapping algorithm: Speed enhancements.
- Optimize cross products.
- Optimize colorspace interaction.