Vad vi har för oss 2024
Det är redan 2024, och till och med redan mars. Liksom förra året hade vi ett videosamtal med alla sponsrade utvecklare, konstnärer och volontärer för att diskutera vad vi uppnådde förra året, ta reda på de största problemen vi står inför och prioritera detta år.
Utmaningar
Ett mycket allvarligt problem är att underhållsansvarig av konverteringen till Android- och ChromeOS i Krita har blivit för upptagen för att arbeta med Krita på heltid. Versionerna av Krita för Android och ChromeOS använder båda plattformen Android, och plattformen ändras ofta och godtyckligt. Det betyder att Sharaf har ägnat nästan all sin tid åt att hålla Krita igång på Android (och ChromeOS), istället för, som vi hade planerat, arbeta på ett speciellt användargränssnitt för Krita på Android surfplattor. Och eftersom det underhållsarbetet nu inte görs så har vi ett riktigt stort problem där. Dessutom, eftersom KDE har avvecklat sin binärframtagning och flyttat binärbyggen till det kontinuerliga integrationssystemet på invent.kde.org, har vi inte längre automatiska versioner för Android.
Vi har också förlorat en annan sponsrad utvecklare. Personen var sjuk ganska länge, men har nyligen bloggat om att börja arbeta på ett annat jobb. Eftersom personen särskilt arbetade med att underhålla de bibliotek som Krita är beroende av och var väldigt duktig på att skicka in rättningar kommer den personen också att saknas.
Till sist fick vi in Krita i Apple MacOS-butiken förra året. Men för två år sedan bytte Kritas underhållsansvariga, det är jag, juridiska namn. Nu har certifikaten som behövs för att signera paketet för butiken löpt ut och vi behöver skapa nya certifikat. De måste ha undertecknarens nuvarande juridiska namn, och av någon anledning har det visat sig vara väldigt svårt att få butiken att tillåta samma utvecklare, med samma ID och kod, men ett annat juridiskt namn, att ladda upp paket. Vi jobbar på det.
Vad vi gjorde förra året
Naturligtvis släppte vi Krita 5.2 och två felrättningsutgåvor för Krita 5.2. Vi kommer att göra minst en annan felrättningsutgåva innan vi släpper Krita 5.3.
Ljudsystemet för Kritas animeringsfunktion har fått en fullständig översyn, konverterades från Qt:s QtMultimedia-system till MLT, funktionen för bildmanus förbättrades avsevärt, vi fick stöd för JPEG-XL lagom till att Google Chrome beslutade sig för att sluta använda det, eftersom det inte fanns någon som supportar det ... Vi har också strukturerat om systemet vi använder för att bygga alla beroende bibliotek på alla plattformar. Jo, arbetet med MacOS pågår fortfarande, med PyQt som ett problem. Naturligtvis var det mycket annat på gång också.
Wolthera började skriva om textobjektet och avslutade det mesta och arbetar nu med verktyget för att faktiskt skriva, modifiera och sätta text. Det är en enorm förändring med mycket imponerande resultat.
Vad vi hoppas göra i år
Delar av listan är från förra året, och delar av den är ny.
Ett stort problem: Nu när KDE-projektet har givit ut den första versionen av KDE-Ramverk för Qt6, kommer konvertering av Krita till Qt6 att behöva göras. Det är ett stort projekt, inte bara på grund av funktioner som försvinner, utan mycket på grund av förändringarna i stödet för återgivning på grafikprocessorer. På Windows är drivrutiner för OpenGL ganska felbenägna, och på grund av det erbjöd Qt5 möjligheten att använda kompatibilitetslagret Angle mellan program som använder OpenGL och det inbyggda Direct3D-biblioteket för återgivning med grafikprocessorer. Det är borta, och om vi inte skriver om vårt återgivningssystem för grafikprocessorer måste vi återinföra Angle.
Sammantaget är det ganska troligt att konvertering till Qt6 kommer att ta mycket tid från att implementera roliga nya funktioner. Men när det är klart kan vi börja arbeta på ett användargränssnitt lämpligt för surfplattor, förutsatt att vi fortfarande kan ge ut Krita för Android.
Därmed inte sagt att vi inte vill implementera roliga nya funktioner!
Här är den prioriterade listan:
- Implementera ett system för att skapa flexibla pratbubblor och integrera det med textobjektet så att texten flödar in i bubblorna
- Implementera en ny lagertyp, för serietidningsramverk
- Tillhandahåll integration med Blender. (Det är dock mindre brådskande eftersom det redan finns ett mycket användbart tredjeparts insticksprogram för det: Blender Layer)
- Ersätt det nuvarande panelsystemet med något mer flexibelt och underhållsbart.
- Implementera ett system för att tillhandahålla verktygsförinställningar
- Skapa ett nytt användargränssnitt för hantering av paletter
- Lägg till en animerad visning av ljudvågformer
- Lägg till stöd för ett arbetsflöde med animeringsreferensramar.
Vi diskuterade också att använda grafikprocessorn för att förbättra prestanda. En inledande idé var att använda grafikprocessorn för penslar, men konstnärer hävdade att penselprestanda är bra, och det som är alldeles för långsamt är transformeringsverktyget Gör flytande, transformeringsmasker och några filter. Till slut bestämde sig Dmitry för att undersöka saken.
- Optimera transformeringsmasker med grafikprocessorn
Och här är det mest kontroversiella av alla: Ska vi lägga till AI-funktioner i Krita? Vi har haft flera häftiga diskussioner bland utvecklare och konstnärer på e-postlistan och på invent.kde.org.
Konstnärerna på mötet hävdade att generativ AI är värdelös och i bästa fall skulle leda till intetsägande, repetitiva mallar, men att assisterande AI kan vara användbart. För att ta reda på om det stämmer började vi undersöka ett särskilt projekt: AI-assisterad färgläggning av skisser. Det är användbart, kan ersätta ett tråkigt steg när man skapar konst samtidigt som man behåller den konstnärliga individualiteten. Om det faktiskt kommer att ta sig in i Krita är förstås osäkert, men utredningen hjälper oss förhoppningsvis att bättre förstå frågan, möjligheterna och problemen.
Observera: Vi kommer inte att implementera något som använder modeller som tränats på bilder hämtade på nätet och vi kommer att se till att funktionens koldioxidavtryck inte överstiger dess användbarhet.