Чого чекати від 2024 року?
Уже настав 2024 рік, і навіть настав березень цього року. Як і минулого року, ми скористалися відеозв'язком, щоб поспілкуватися із спонсорованими розробниками, художниками та охочими для обговорення досягнень минулого року, визначення найбільших викликів, які постаю перед нами та обговорення пріоритетних завдань на цей рік.
Виклики
Дуже серйозною проблемою є те, що супроводжувач порту Krita для Android і ChromeOS зараз надто зайнятий, щоб працювати над Krita повний робочий день. Версії Krita для Android і ChromeOS використовують платформу Android, а ця платформа змінюється часто й непередбачувано. Це означає, що Шараф витрачав майже весь свій час на підтримку роботи Krita на Android (і ChromeOS), замість того, щоб працювати, як ми планували, над особливим інтерфейсом користувача планшета для Krita на Android. І оскільки ці роботи з технічного обслуговування зараз не проводяться, у нас є справді велика проблема. Крім того, оскільки адміністратори KDE припинили роботу системи збирання та перенесли двійкові збірки до системи безперервної інтеграції invent.kde.org, ми більше не маємо автоматичних збірок для Android.
Також ми втратили ще одного спонсорованого розробника. Він певний час хворів, а нещодавно повідомив у блозі, що почав працювати на іншому робочому місці. Оскільки він займався роботою із супроводу бібліотек, від яких залежить робота Krita і дуже добре знався на виправленні у основній гілці розробки, його також дуже не вистачатиме.
Нарешті, минулого року ми додали Krita у крамницю Apple MacOS. Однак два роки тому супроводжувач Krita, а саме я, змінив її офіційну назву. Тепер термін дії сертифікатів, необхідних для підписування пакета для крамниці, закінчився, і нам потрібно було створити нові сертифікати. Вони повинні мати поточне юридичне ім'я підписувача, і чомусь дуже важко змусити крамницю дозволити тому самому розробнику з тим самим ідентифікатором і кодом, але іншим юридичним іменем, завантажувати пакети. Ми над цим працюємо.
Наші здобутки у минулому році
Звичайно ж, нами випущено Krita 5.2 та два випуски з виправленнями вад для Krita 5.2. Ми випустимо ще принаймні один проміжний випуск із виправленнями вад, перш ніж черга дістанеться Krita 5.3.
Звукову систему для анімацій Krita було повністю перероблено, перенесено з системи QtMultimedia Qt на MLT. Функцію розкадрування було значно покращено, ми отримали підтримку JPEG-XL саме в той час, коли команда Google Chrome вирішила відмовитися від неї, оскільки її ніде не реалізовано... Ми також переробили систему, яку використовуємо для створення всіх залежних бібліотек на всіх платформах. Що ж, робота над пакунками для MacOS все ще триває, але проблемою є PyQt. Звичайно, відбувалося й багато іншого.
Wolthera почала переписувати текстовий об'єкт і в основному завершила це, і зараз працює над інструментом для фактичного написання, зміни та набору тексту. Це величезна зміна із захопливими результатами!
Що ми сподіваємося зробити цього року
Частина цього списку з останнього року, частина є новою.
Одне велика проблема: тепер, коли проєкт KDE випустив першу версію KDE Frameworks для Qt6, потрібно буде перенести Krita на Qt6. Це великий проєкт не лише через зникнення функцій, а й значною мірою через зміни у підтримці обробки на графічному процесорі. У Windows драйвери OpenGL досить погані, і через це Qt5 запропонував можливість використовувати рівень сумісності Angle між програмами, які використовують OpenGL, і власну бібліотеку Direct3D для обробки на графічному процесорі. Це зникло, і якщо ми не перепишемо нашу систему обробки на графічному процесорі, нам потрібно буде повернути Angle у стос.
Загалом, досить ймовірно, що перенесення на Qt6 забере у нас багато часу і завадить впровадженню цікавих нових функцій. Але коли це буде зроблено, ми зможемо почати працювати над інтерфейсом користувача, зручним для планшетів, за умови, що ми все ще зможемо випускати Krita для Android.
Це не означає, що ми не хочемо реалізовувати чудові нові можливості!
Ось короткий список:
- Реалізувати систему створення гнучких текстових бульбашок та інтегрувати цю систему з текстовим об'єктом так, щоб текст вписувався у бульбашку
- Реалізувати новий тип шарів для бібліотек коміксів
- Забезпечити інтеграцію із Blender. (Не дуже терміново, оскільки існує дуже корисний сторонній додаток для цього: Blender Layer)
- Замінити поточну систему бічних панелей чимось гнучкішим та зручнішим для супроводу.
- Реалізувати систему для забезпечення роботи наборів інструментів
- Створити новий інтерфейс користувача для керування палітрами
- Додати показ форми хвилі звукового сигналу для анімацій
- Додати підтримку для робочого процесу на основі еталонного кадру анімації
Ми також обговорили використання графічного процесора для підвищення швидкодії. Одна з початкових ідей полягала в тому, щоб використовувати графічний процесор для пензлів, але художники стверджували, що продуктивність пензля хороша, але надто повільним є інструмент перетворення розплавленням, маски перетворень та деякі фільтри. Зрештою Дмітрій вирішив вивчити такі питання:
- оптимізацію масок перетворення для обробки на графічному процесорі
І найсуперечливіша річ: чи варто додавати функції ШІ до Krita? У нас було кілька гарячих дискусій серед розробників і художників у списку листування та на invent.kde.org.
Художники на зустрічі стверджували, що продуктивний ШІ нічого не вартий і в кращому випадку призведе до створення не вартих уваги, повторюваних шаблонів, але допоміжний ШІ може бути корисним. Щоб з'ясувати, чи це правда, ми почали досліджувати один конкретний проєкт: прокреслення ескізів за допомогою ШІ. Це корисно, може замінити нудний крок під час занять мистецтвом, зберігаючи художню індивідуальність. Звичайно, невідомо, чи це справді потрапить до Krita, але, сподіваюся, дослідження допоможе нам краще зрозуміти проблему, можливості та проблеми.
Примітка: ми не будемо впроваджувати нічого, що використовує моделі, навчені на скопійованих зображеннях, і ми переконаємося, що шкода від цієї можливості не перевищить її корисності.