02.07.2010 | T ampere, Finland | Akademy 2010
Working on Krita:Fun&Profit Luk Tvrd 02.07.2010 | T ampere, - - PowerPoint PPT Presentation
Working on Krita:Fun&Profit Luk Tvrd 02.07.2010 | T ampere, - - PowerPoint PPT Presentation
Working on Krita:Fun&Profit Luk Tvrd 02.07.2010 | T ampere, Finland | Akademy 2010 Luk Tvrd Who I am Alumnus of VB-TU Ostrava, Czech Republic How did I get involved in Krita GSoC 2008: Sumi-e brush engine
Lukáš Tvrdý www.krita.org 2
Lukáš Tvrdý
- Who I am
- Alumnus of VŠB-TU Ostrava, Czech Republic
- How did I get involved in Krita
- GSoC 2008: Sumi-e brush engine
- GSoC 2009: 3D Brush for Krita
- Master Thesis: Brush Painting in 2D Raster
graphics
- Community sponsored developer
Lukáš Tvrdý www.krita.org 3
What is Krita
- Krita is a KDE program:
- sketching and painting,
- creating digital painting files from scratch
- concept art, creation of comics and textures for rendering.
- to be both a painting application and a photo editor is hard:
- UI problems
- Human resources
- Do the things really good
- Still small support for photo manipulations
Lukáš Tvrdý www.krita.org 4
What I'm working on
- Brush engines
- Hairy brush
- Spray brush
- Soft brush
- Deform brush
- Particle brush
- Sketch brush
- Hatching brush
- And some more...
Lukáš Tvrdý www.krita.org 5
What I have to work on
- Action plan I,II
- User readiness
–
e.g. supporting abr brushes
- Performance
–
Valgrind, QtT est Framework: Benchmarks
- Unit performance benchmarking
–
12x faster smudge, pixel iterators 6x faster,
–
6x faster painting, vectorization effort
- Usability
–
UI improvements
- Bugs
Lukáš Tvrdý www.krita.org 6
What is brush engine?
- Defines painting operation
- Define how the stroke will look like
- Lines or footprints
- In GIMP tools (airbrush, pixel brush, duplicate tool)
- In Krita brush engines (spray, pixel brush,
duplicate)
- MyPaint has one big brush engine
- http://mypaint.intilinux.com/
Lukáš Tvrdý www.krita.org 7
Demonstration
Lukáš Tvrdý www.krita.org 8
Samy Lunge
Lukáš Tvrdý www.krita.org 9
David Revoy
Lukáš Tvrdý www.krita.org 10
Samy Lunge - Fur
Lukáš Tvrdý www.krita.org 11
David Revoy Angel
Lukáš Tvrdý www.krita.org 12
Samy Lunge Samy Lunge - Rain
Lukáš Tvrdý www.krita.org 13
Samy Lunge – Sumi-e style
Lukáš Tvrdý www.krita.org 14
Samy Lunge Tree
Lukáš Tvrdý www.krita.org 15
Przemek Golab Watercolor
Lukáš Tvrdý www.krita.org 16
Przemek Golab Hairs
Lukáš Tvrdý www.krita.org 17
David Revoy Times
Lukáš Tvrdý www.krita.org 18
David Revoy – Charcoal test
Lukáš Tvrdý www.krita.org 19
How to write a brush engine
- Plug-ins
- Have an idea, invent a new algorithm
- KisPaintOp::paintAt() || KisPaintOp::paintLine()
- Access to the pixel buffer through KisPainter, bitBlt pixel buffer
- libbrush, libpaintop
- Support for ABR, GBR, GIH
- GUI options
- Serialize the brush settings
Lukáš Tvrdý www.krita.org 20
Do you want to join us?
- Algorithms for image processing or
- Graphics effects or
- Physical simulations of liquids or
- UI designer or
- or you like to play...
- How to join http://bit.ly/df55e3
Lukáš Tvrdý www.krita.org 21
Contact
- My blog
- http://lukast.mediablog.sk/log
- Official website
- http://www.krita.org
- Official forum
- http://forum.kde.org/krita
- IRC Channel
- #krita at freenode
Lukáš Tvrdý www.krita.org 22