25 лет Krita!
- Halla Rempt
Двадцать пять лет. Четверть века. Именно столько длится работа над Krita. Точнее, над тем, чему ещё предстояло стать Krita. Сначала проект назывался KImageShop, но это название было уничтожено уже давно умершим немецким юристом. Затем его переименовали в Krayon, и это название тоже было уничтожено. Затем его переименовали в Krita, и это название прижилось.
Я стал частью Krita только в 2003 году, когда Krita ещё входила в состав офисного пакета KDE — KOffice, позже переименованного в Calligra… А я стал сопровождающим Krita в 2004 году, когда Patrick Julien передал эстафету. Это значит, что из этих двадцати пяти лет я провёл с Krita около двадцати, так что, дорогой читатель, надеюсь, мне простят столь личный пост: очень большая часть моей жизни связана с Krita, и это будет заметно.
Но сначала вернёмся к тому времени, когда мне понадобилось приложение для цифровой живописи; первые зёрна Krita были посеяны в 1998 году, даже раньше, чем появились первые строки кода. Тогда вокруг Linux царило воодушевление, и существовало множество проектов, пытавшихся создать отличные приложения для Linux. Одним из этих проектов был GIMP, другим — Qt. Первый был приложением для обработки цифровых изображений, второй — набором инструментов для создания удобных приложений на C++. Но GIMP не использовал Qt — он применял собственный набор инструментов для пользовательского интерфейса (хотя изначально использовался Motif, не имевший открытого исходного кода). Поклонник Qt, Matthias Ettrich, выполнил экспериментальный перенос GIMP на Qt и представил доклад об этом на Linux Kongress 1998. Это было воспринято неблагожелательно и вылилось в перепалку, типичную для сообщества открытого исходного кода. Люди были молоды, а страсти кипели.
Что ж, в подобных случаях единственный выход — взяться за дело самому, что и произошло. Понадобилось несколько неудачных попыток, но в последний день мая 1999 года Matthias Elter и Michael Koch начали работу над KImageShop: прочитайте письмо, потому что довольно забавно, насколько первоначальный замысел соблюдался, а насколько — нет (KOM был чем-то вроде Corba, и если о Corba никогда не слышали, то, вероятно, потому, что Corba была ужасной идеей.).

Разработка началась, и, как ни странно, в кодовой базе Krita до сих пор сохранился настоящий код, оставшийся с тех времён, хотя большая часть его — открывающие и закрывающие скобки.
А потом разработка остановилась — потому что, ну, создание полноценного приложения для обработки изображений — дело нелёгкое и небыстрое. А потом она снова началась, снова остановилась и снова началась. До того как в 2003 году я начал искать хорошую, производительную кодовую базу для приложения для рисования, у проекта сменилось несколько сопровождающих. Я не знал C++, но уже написал первую книгу о совместном использовании Python и Qt.
Krita была переписана до такой степени, что в ней не было даже инструмента рисования, поэтому это было первым, что мне хотелось иметь. Это оказалось непросто!

Но… Открытость в том, что всё это непросто, вызвала интерес, и к проекту начали присоединяться участники. И вот в 2004 году сложилась небольшая команда энтузиастов. За тот год произошло многое: Camilla Boemann переписала ядро Krita, что дало слои с автоматическим размером, Adrian Page написал бэкенд на основе OpenGL, Cyrille Berger добавил первые зачатки модулей и сценариев. Однако подход всё ещё оставался довольно техническим, и выпуск так и не состоялся.
Только в 2005 году Krita была выпущена в составе KOffice 1.4. Совсем ещё незрелая, но все сходились на том, что у неё есть перспективы, и в некоторых журналах о Linux о ней хорошо отзывались — в 2005 году это ещё было в порядке вещей.

Затем наступил 2006 год. Вышла Krita 1.5 с поддержкой CMYK с управлением цветом. В Krita 1.5 также появилась недолговечная функция акварельного слоя с настоящим смешиванием цветов, но поддерживать её оказалось слишком сложно. И в том же году вышла Krita 1.6: Linux Journal назвал её передовым достижением. Нам казалось, что это вполне зрелый выпуск, но художники, присылавшие отзывы, всё ещё считали, что в нём многого не хватает.
И тут случилась катастрофа. Срок поддержки Qt3 истёк, и был выпущен Qt4. Работа по переносу оказалась огромной и заняла целую вечность — в том числе потому, что по глупости было решено переписать значительную часть кода 1.x, чтобы обеспечить совместное использование компонентов между приложениями KOffice. Переписывание заняло весь 2007 год, 2008 год и половину 2009 года.
Тем временем, пока шли отчаянные попытки исправить все ошибки, которые вносили перенос и переписывание, был проведён первый сбор средств: на них приобрели планшеты Wacom с художественными перьями для тестирования Krita. Wacom Intuos 3, полученный ещё тогда, используется до сих пор!
Затем, в 2009 году, была выпущена Krita 2.0. Пользоваться ею толком было ещё нельзя, но было важно выпустить что-то, что можно было бы дать людям на тестирование. В 2009 году вышла и Krita 2.1. Кроме того, появился первый спонсируемый разработчик Lukáš Tvrdý, задачей которого было именно исправление всех ошибок. Позже он также улучшил производительность кистей Krita.
По мере того как Krita приобретала известность, отзывов становилось всё больше, и в 2010 году мы решили провести большой спринт в Девентере, чтобы определить, какой мы хотим видеть Krita для наших пользователей. Клон Photoshop? Клон GIMP? Клон Corel Painter? Или что-то самобытное? Для кого мы делали Krita?
Ответ верен и по сей день: Krita создаётся для цифровых художников, которые создают свои работы, в основном с нуля. Рисование в Krita должно быть в радость художникам всех направлений по всему миру.
Но до достижения этой цели было ещё далеко. В 2010 году вышли Krita 2.2 и Krita 2.3: нам казалось, что Krita 2.3 готова для художников, но лишь с выходом Krita 2.4 и 2.5 в 2012 году Krita действительно стала довольно хороша! На самом деле наша нацеленность была предельно точной: несколько лет нашим призывом было «Сделать Krita пригодной для David Revoy!» — отчасти в шутку, но отчасти и всерьёз. Во время спринтов разработки мы наблюдали за художниками и позволяли им комментировать вживую то, что им нравилось и не нравилось, при этом наблюдающим разработчикам запрещалось открывать рот — ни чтобы возразить, ни чтобы помочь художнику.
Тем временем я создал фонд Krita, чтобы проводить сбор средств для поддержки разработчиков, работающих на полную ставку. Первым спонсированным разработчиком стал Dmitry Kazakov, который до сих пор остаётся ведущим разработчиком Krita.
Тогда Krita всё ещё входила в состав офисного пакета KDE, но теперь он назывался Calligra — из-за бесконечного конфликта всего с одним разработчиком KOffice, сопровождающим KWord. Вся энергия, потраченная на этот конфликт, могла бы пойти на разработку — это была огромная трата. Со времён Calligra разработка пошла гораздо более гладко. Теперь в разработке Calligra участвовала Nokia, и последовавшее улучшение центральных библиотек, используемых всеми приложениями, также помогло улучшить Krita, хотя, с другой стороны, сложность, необходимая для поддержки весьма разнородного набора приложений, до сих пор остаётся тяжким грузом.
Шли годы. 2013 год был совершенно ничем не примечательным. Выпущены версии 2.6 и 2.7, проведены кампании по сбору средств, добавлены новые возможности (например, поддержка анимации), создана версия Krita со специальным пользовательским интерфейсом для сенсорных устройств и планшетов (при поддержке Intel: с Intel, главным спонсором фонда развития, до сих пор прекрасные отношения). Было приятно видеть работы, которые создавали художники, получать отзывы пользователей, а заниматься разработкой было просто в удовольствие.

В 2014 году Krita была перенесена на Windows — в том числе из-за версии Krita для сенсорных экранов и планшетов. А ещё было выпущено одиннадцать версий Krita 2.9 — поистине превосходный выпуск.
Также в 2014 году состоялась наша первая кампания на Kickstarter. Тогда Kickstarter был новым и свежим, и это было по-настоящему захватывающе. Почти 700 человек поддержали Krita! А ещё Krita была портирована на MacOS. Какое-то время кампании на Kickstarter проводились ежегодно, и они были интересны как нам, так и нашим разработчикам: ставились дополнительные цели, и людям давали возможность голосовать за то, над чем, по их мнению, следовало работать.

Тогда у меня ещё была основная работа, поэтому работать приходилось по вечерам и выходным, а ещё в поезде по дороге на работу.
Также снова начат перенос Krita — на этот раз на Qt5. Это было не так сложно, как перенос с Qt3 на Qt4, но поддержка планшетной версии Krita была утрачена: Qt5 сделал невозможной правильную интеграцию холста на основе OpenGL в сенсорную версию библиотек Qt5. На это ушли месяцы и немало денег, но затея не удалась.
Затем я сломал плечо и потерял основную работу в Blue Systems, и вдруг фонду Krita тоже пришлось платить мне. К счастью, нашёлся спонсор для переноса на Qt5 — это был мой первый спонсируемый проект.
В 2016 году была выпущена Krita 3.0 — она была не так хороша, как Krita 2.9, но, к счастью, ещё помнилась боль от переписывания в сочетании с переносом, поэтому сначала просто выполнили перенос, не объединяя его с масштабным переписыванием. А вот анимация в ней была!

Кроме того, вышел наш первый и последний печатный артбук. Огромный объём работы для меня, начатой ещё в 2015 году, а в итоге — ещё и огромная финансовая дыра.

Работа над улучшенными версиями Krita 3.0 велась на протяжении всего 2016 и 2017 годов. Наступил 2018 год, и была выпущена Krita 4.0 с результатами работы, спонсированной через Kickstarter. Хотя и не полностью, потому что в 2017 году всё моё внимание поглотила Великая налоговая катастрофа. Налоговая служба Нидерландов требовала уплаты десятков тысяч евро НДС за работу, выполненную Dmitry; именно тогда вместо бюро по административному обслуживанию малого бизнеса в местном городке был нанят настоящий бухгалтер.
Когда проблемы были преданы огласке, пожертвования потекли рекой, и PIA сделала огромное пожертвование, по сути покрыв счёт.
Чтобы это не повторилось, я выделил всю коммерческую деятельность в отдельную компанию из одного человека. Это стало ещё важнее, поскольку в 2017 году Krita появилась в Windows Store. Это был второй магазин — до него, в 2014 году, Krita появилась в магазине Steam. С тех пор Krita выпущена в Epic Store, Google Play Store и теперь даже в Apple MacOS Store.
Шло время: в 2018 году вышла Krita 4.1, в 2019 — 4.2, в 2020 — Krita 4.3 и 4.4. Довольно спокойные годы активной разработки, роста числа пользователей и популярности. К проекту присоединялось всё больше спонсируемых разработчиков, и Krita достигла больших успехов.
Хотя канал Krita на YouTube уже существовал, в 2019 году по нашей просьбе над регулярными видео для канала начал работать Ramon Miranda:
К настоящему моменту накопился внушительный список впечатляющих руководств на самые разные темы — от самой цифровой живописи до создания профилей кистей!
А затем разработка замедлилась. В 2020 году последствия Covid19 становились всё очевиднее. Спринты стали невозможны, а значит, больше никаких сверхпродуктивных очных сессий разработки. Участники команды болели, а некоторые — тяжело. Долгий ковид подорвал и мою собственную производительность: есть много дней, когда я могу лишь лежать в затемнённой комнате.
К 2021 году, хотя переносить Krita на новую версию Krita и не пришлось, мы всё же решили сменить векторные слои с ODG на SVG, из-за чего файлы Krita стали несовместимы между версиями 4 и 5. Иными словами — серьёзное изменение формата файлов. Мы всё ещё работаем над новыми версиями Krita 5: 5.1 в 2022 году, 5.2 в 2023 году.
В будущем ожидается очень хорошая Krita 5.3!
А ещё, со стоном, Krita 6.0 — потому что начат перенос Krita на Qt6. И это совсем не весело, ведь Qt6 — снова огромное изменение в том, что Qt предлагает и позволяет.
И это — 25 лет работы над тем, чем я начал заниматься понемногу, потому что хотел нарисовать карту для фэнтезийного романа на своём ноутбуке!
Поддержите фонд развития ежемесячным пожертвованием. Или сделайте разовое пожертвование здесь.