Gå till innehåll

Petiga bildpunkter: Kritas GSoC 2024!

Föregående inlägg | tisdag, 10 september 2024 | Lästid: 5 minuter | Nästa inlägg

Nå, på något sätt har ännu en sommar* gått mot sitt slut och med den har årets Google Summer of Code nästan avslutats!

En liten GSoC snabbgenomgång

Om du inte är bekant med Google Summer of Code ("GSoC", för resten av det här inlägget för att rädda mina trötta fingrar), är det ett årligt program som Google driver där de betalar personer för att framgångsrikt bidra med funktioner och förbättringar till projekt med fri och öppen programvara (FOSS), som vårt. Det är förhoppningsvis en vinst för alla inblandade parter: det är en anständig sommarsysselsättning och lärorikt för bidragsgivaren, det uppmuntrar nya personer att doppa tårna i vattnet med bidrag till öppen programvara, och det stärker teoretiskt sett ekosystemet av öppen programvara som företag som Google förlitar sig på i stor utsträckning.

Liksom många andra projekt med öppen källkod har Krita varit deltagare i GSoC i ett antal år, och framgångsrika projekt har lett till en hel del trevliga förbättringar, såsom den förbättrade resurshanteringen, den helt nya bildmanuspanelen, inspelningspanelen, och så vidare.

Det bästa av allt är att Google under de senaste åren har öppnat dörren för alla (inte bara högskolestudenter längre), så att personer från alla samhällsskikt och bakgrunder kan delta. Naturligtvis behöver du förmodligen ha minst grundläggande kunskaper i programmering och gedigen kommunikationsförmåga för att lyckas, men jag uppskattar verkligen att programmet har blivit mycket mer öppet och rättvist. (Bra drag Google!)

Så om det låter intressant och du tror att du har vad som krävs, kan GSoC vara ett bra sätt att få betalt för att bidra till dina favoritprojekt med öppen källkod.

Nästan bildpunktsperfekt

Årets GSoC var lite lugn, eftersom vi bara hade ett projekt: "Bildpunktsperfekta linjer" av Ken Lo, med det enkla målet att skapa en bättre arbetsflödesupplevelse för bildpunktskonstnärer genom att tillåta "perfekta" enbildpunktslinjer.

Du kanske frågar dig själv, vad gör en "perfekt" enbildpunktslinje?

I grunden handlar konst om uttryck, så det finns verkligen inget sådant som objektivt bra eller dåligt, rätt eller fel, och så vidare. Bildpunktskonst är inte annorlunda i det avseendet, men precis som vilket medium som helst finns det vissa konventioner och traditioner som folk bara gillar att se. För konstnärer är en av konventionerna attraktionen av rena och läsbara enbildpunktslinjer, som kan användas som kontur för en karaktär eller annat objekt. I allmänhet, som jag förstår det, är en enbildpunktslinje av konventionellt hög kvalitet för att bildpunktskonstnärer en som har minimala rätvinkliga riktningsändringar (L-former, T-former, och så vidare). Att undvika räta vinklar kan ge vackra och graciösa kurvor, något som lätt kan tas för givet tills man arbetar med en extra låg upplösning.

Vilket för oss tillbaka till Kens mål med GSoC 2024: lägga till en ny funktion i Krita som gör att bildpunktskonstnärer kan rita jämna, flytande enbildpunktslinjer med ett penseldrag. Och jag är glad att kunna meddela att han i stort sett uppnått det målet, genom att lägga till ett nytt utjämningsalternativ "Bildpunkt" i penselverktyget som avsevärt borde hjälpa arbetsflödet för bildpunktskonst i Krita. (Kommer snart till verktygsalternativpanelen!)

Se själv:

En demonstration som visar linjer ritade utan och med det nya utjämningsläget för bildpunkter på. Den RÖDA linjen har utjämningen inställd på Ingen, medan den GRÖNA linjen har utjämningen inställd på Bildpunkt. De blå bildpunkterna är till för att visa de typer av bildpunktsförvrängningar som vi försöker bli av med. Observera: De RÖDA och GRÖNA linjerna ritades separat för hand, så de är inte helt likvärdiga.

När det gäller om de producerade linjerna är "bildpunktsperfekta", ja ... inte än, men de är jäkligt nära! Ken och jag hoppades verkligen på att uppnå verkligt "bildpunktsperfekta" bildpunktskonstlinjer i Krita med denna GSoC, och Ken gjorde en hel del bra forskning om hur han kunde gå till väga för att uppnå det resultatet. I slutändan kom vi dock till slutsatsen att sant bildpunktsperfekta linjer förmodligen skulle kräva större förändringar av Kritas pensellogik än den återstående GSoC-tiden förmodligen skulle tillåta. Det är okej, och jag tycker också att det är en bra lektion, ibland hamnar planen man börjar med i en återvändsgränd och man måste bara anpassa sig.

Med andra ord, man kan fortfarande sannolikt stöta på en tillfälligt herrelös bildpunkt som man kanske måste radera. Men vad jag med säkerhet vet är att Kens bidrag till Krita via GSoC 2024 är en mycket förbättrad kvalitet på enbildpunktslinjer, som jag är säker på blir en stor arbetsflödesförbättring för alla bildpunktskonstnärer och spelutvecklare som använder Krita som ett av sina verktyg.

Naturligtvis planerar vi inte att ge upp förrän vi når höjdpunkten av bildpunktsperfektion, så om någon där ute har idéer om hur man kan ta den här funktionen till nästa nivå, säg till.

Okej, häftigt! Men ... hur?

Jag glömde nästan att berätta hur man använder den ... Men den goda nyheten är att det är ganska enkelt.

För att sätta på den nya stabilisatorn av bildpunktslinjer, välj penselverktyget eller liknande, öppna verktygsalternativpanelen och ställ in kombinationsmenyn "Penselutjämning" till "Bildpunkt". Du märker förmodligen (förhoppningsvis) inte någon förändring av prestanda eller linjekvalitet när du ritar med en vanlig pensel på en vanlig duk, men med förinställningen för 1-bildpunkters bildpunktskonstpensel aktiv upptäcker du att rita kontinuerliga linjer ger snyggare bildpunktskonstlinjer.

Verktygsalternativpanel med "Penselutjämning" inställd på "Bildpunkt"

Och det är allt!

Det är slutet på GSoC 2024.

Tack till Google för att ni samarbetar med projekt som Krita än en gång för ännu en framgångsrik GSoC, och naturligtvis ett stort tack till årets Krita GSoC-bidragsgivare, Ken!

Slutligen, oavsett om det är genom ett program som GSoC, vår utvecklingsfond, eller det [absolut enorma antal frivilliga bidrag som vi ständigt får från medlemmar i gemenskapen](https: //invent.kde.org/graphics/krita/-/merge_requests), fölitar sig projekt som Krita på generositet och stöd från personer som du. Så, som alltid, ett STORT tack till alla er som har stöttat projektet på något sätt hittills i år!

Emmet

*Här på norra halvklotet, men jag vet om att ni på södra halvklotet finns!