SeExpr’a Giriş¶
4.4 sürümünde geldi: Bu belge, sizi SeExpr ifade diliyle tanıştırır.
SeExpr nedir?¶
SeExpr, Disney Animation tarafından tasarlanmış, gömülebilir bir ifade dilidir. Bu dil, uygulamaların devingen bir biçimde üretilmiş içeriği sunabilmesine olanak tanır. Pixar firması, belgelendirmelerinde bu dili bir “betikle genişletilebilir desen üreticisi ve birleştiricisi” olarak tanımlar.
SeExpr, Krita’da bir Dolgu Katman olarak kullanılabilir.
Ayrıca bakınız
Krita Artists forumunda “Prosedürsel doku üreteci (örnekler ve dilekler)” başlığı
Arka Plan¶
SeExpr’in ne olduğunu anlamak için iki tür grafik arasındaki ayrımı bulabilmemiz gereklidir, raster ve oransal.
Her gün gördüğünüz birçok bilgisayar üretimi şey – fotoğraflar, en sevdiğiniz animenin ekran görüntüleri, mimler – bunların hepsi ilk belirttiğimiz sınıfa ait olan, bir ızgaraya dizilmiş tonlarca ufak renk noktalarından veya daha yaygın olan tanımıyla piksellerden oluşan bir görseldir.
Raster grafiklerin iki adet dezavantajı vardır. Onları oluşturduğunuz andan itibaren çözünürlükleri sabir kalır. Onlara yakınlaştırma yaptığınızda sihirli bir biçimde daha çok ayrıntı bekleyemezsiniz. Onları değiştirmeniz gerektiğinde ya kaynağa gidip onu yeniden örneklemeniz (bazen bunu yapmak olanaksızdır) ya da Krita gibi bir raster grafik programıyla düzenlemeniz gerekir.
Ancak en büyük sorunlardan biri, SD kartlar gibi ikincil depolama veya RAM gibi programlarımızın kullanabileceği alan ile her zaman sınırlı olmamızdır. Sıkıştırılmadığı sürece, görsel belleği gereksinimleri, görselin boyutunda ikinci derecedendir. Örneğin, Krita’nın Yeni Belge Oluştur iletişim kutusu, size üç parça bilgi sunar: Görselin piksel türünden boyutu, pikselin kendisinin boyutu ve toplam gereken bellek tutarı.
İşte kare dokular için bir özet. Gereken bellek yalnızca bir katman içindir:
Boyut |
Gereken bellek |
---|---|
256 |
256 KB |
512 |
1 MB |
1024 |
4 MB |
2048 |
16 MB |
4096 |
64 MB |
Başka bir alternatif ise Vektör Grafikler kullanmaktır. Vektör grafikler; örneğin, SVG’ler, bir şekli belirtmek için yivler ve Bézier eğrileri gibi matematikler formüllerden yararlanırlar. Matematiksel olarak tanımlandıklarından, çözünürlüklerini kaybetmeden gereksinimlerinize göre yeniden boyutlandırılabilirler.
SeExpr ise prosedürsel grafikler denen başka bir sınıfa aittir. Vektör grafiklere benzer olarak, prosedürsel grafikler tanımlarını depolamak için yalnızca birkaç KB’a gereksinim duyarlar. Ancak onlar matematiksel formüller kullanmazlar; rengin nasıl hesaplanacağını dokunun her bir noktasına kodlarsınız. Kesinliği sınırlı olmadığı için katmanlarınızdaki karmaşık desenleri tamamen isteğe bağlı çözünürlükte işleyebilirsiniz.
Bir betik yazmak¶
Bu öğreticide, SeExpr ile nasıl bir betik yazılacağını, katmana nasıl sunulacağını ve nasıl bir önayar olarak kaydedileceğini göstereceğiz.
Katmanlar ögesine gidip yeni bir Dolgu Katman ekleyerek başlıyoruz. Sonrasında, listeden SeExpr’i seçin. Karşınıza bu pencere çıkacaktır:
SeExpr üreteci iletişim kutusu iki sekmeye ayrılmıştır. Şimdilik Seçenekler bölümünde kalacağız.
Not
Dolgu Katmanlar, bu sekmeleri ayrıntılı olarak açıklar.
Açık mavi ile bir katmanı boyayarak başlayalım.
En önce, SeExpr betikleri bir çıktı değişkeni tanımlamalıdır. bunu şimdilik $color
olarak beyan edelim. SeExpr renkleri RGB renk uzayında kabul ettiğinden, renk değişkenleri adına vektör denilen bir renk üçlüsüyle tanımlanırlar. $color
değişkenini tanımlayp ona bir değer vererek başlayalım.
Metin kutusuna gidin ve içinde metin varsa silin. Sonrasında, $color
değişkenini [0.5, 0.5, 1]
gibi bir değere tanımlayın (yarı açık kırmızı, yarı açık yeşil, tam açık mavi):
$color = [0.5, 0.5, 1];
SeExpr’nin, hangi değişkenin nihai renk değerini tuttuğunu bilmesi gerekir. Bu, son kısımda ayrı bir satırda, değişkenin adı yazılarak yapılır:
$color
Betik şimdi şöyle görünmelidir:
$color = [0.5, 0.5, 1];
$color
Tamam’a tıklayın ve ilk betiğinizi sunun!
Uyarı
Tümüyle kesin olması açısından SeExpr bir renk yönetimi yapmaz. Dokuları her zaman 32 bit kayan noktalı değer, gaması düzeltilmiş ve sRGB görseller olarak sunar. Krita onları sRGB-elle-V2-srgbtrc.icc profilini kullanarak belgenizin renk uzayına dönüştürür.
Bunun ne anlama geldiğini öğrenmek için Renk Yönetimli İş Akışı bölümüne bakın.
Araç takımlarını kullanarak betiğinizi yönetmek¶
Değişkenlerinizi tanımlamanın ve yönetmenin başka bir yolu da vardır. Dolgu Katman 1 üzerine sağ tıklayıp Katman Özellikleri…’ni seçerek katman özelliklerini açın.
Ortadaki kutuyu fark ettiniz mi? Sözdizimi doğru bir betik algıladığında, SeExpr, değişkenleri teker teker yönetmek için bir sürü düğmeler sunar. Yukarıdaki örneğimizde, $color
’leri üç ayrı biçimde değiştirebilirsiniz:
girdi alanlarına kırmızı, yeşil ve mavi kanalın değerlerini girin
ilgili kanalı değiştirmek için küçük renkli sürgüleri hareket ettirin
tümüyle yeni bir renk seçmek için kutuların solundaki önizleme karelerine tıklayın
Ortadaki kutudaki son düğme her zaman Yeni Değişken Ekle’dir. Buna tıkladığınızda aşağıdaki iletişim kutusu açılır:
Bu iletişim kutusu, SeExpr’in kabul ettiği tüm değişken türlerini gösterir:
- Eğri ve Renk Eğrisi¶
Bunlar, Durak Gradyanları’nın SeExpr sürümleridir; verilen değer kümesiyle bir rampa aradeğerlerler.
Eğriler, 1B gradyanları temsil ederler; her bir değerlendirme noktasında tek bir kayan noktalı değer döndürürler.
Renk eğrileri RGB gradyanlarını temsil ederler; her bir noktada bir renk döndürürler.
- Tamsayılar ve Kayan Noktalı Değerler¶
Sayılar.
- Vektör¶
Bir kayan noktalı değer üçlüsü.
- Renk¶
Bir RGB rengi temsil eden bir vektör.
- Örnek¶
Bir renkler listesi.
- Dizi¶
Genelde tek sözcükler.
Örneğin, Vektör sekmesinde $color
değişkenini yineleyebilirsiniz:
İlk önayarınızı oluşturmak¶
Betiğiniz hazırsa onu bir önayar yaparak yeniden kullanabilirsiniz.
Seçenekler sekmesinin üst çubuğundan bir tane oluşturabilirsiniz.
Yeni SeExpr Önayarı Kaydet ögesini seçin ve aşağıdaki iletişim kutusu açılacaktır:
Üst satırdaki düzenleme kutusundan önayarın adını düzenleyebilir ve kolayca ayırt edebilmek için bir küçük görsel atayabilirsiniz.
İpucu
Önayar halihazırda varsa iletişim kutusu adın sonuna “Kopya” sonekini koyar. İstediğiniz zaman değiştirebilirsiniz.
İletişim kutusu, bir küçük görsel ayarlama konusunda aşağıdaki seçenekleri sunar:
- Var Olan Küçük Görseli Yükle¶
Önayarın halihazırda bir küçük görseli varsa (örneğin var olan bir önayarı yinelediyseniz) bu düğme onu yükler ve uygular.
- Görsel Yükle¶
Dosya sisteminden alınacak bir görseli küçük görsel olarak uygular.
- Betiği Küçük Görsele Sun¶
Betiğinizi 256 × 256 boyutunda bir doku olarak sunar ve onu bir küçük görsel olarak uygular.
- Küçük Görseli Temizle¶
Küçük görseli siler. Önayar, var olan bir önayarın kopyasıyla bu, Var Olan Küçük Görseli Yükle seçeneği kullanılarak geri alınabilir.
Var olan önayarları değiştirmek¶
Bir önayarın betiğini değiştirirseniz Seçenekler sekmesinin üst kısmında iki yeni düğme fark edeceksiniz:
Yeniden Yükle düğmesi, önayarı özgün özelliklerine geri yüklerken, Önayarın Üzerine Yaz seçeneğine tıklamak değişiklikleriniz kaydeder.
Ek olarak, Yeniden Adlandır düğmesine tıklayıp yeni adı girdikten sonra Kaydet düğmesine basarak önayarın adını değiştirebilirsiniz.
Önayarlarınızı demetlemek¶
Betiklerinizi paylaşmak çok kolaydır! SeExpr betik önayarlarının Krita’daki diğer özkaynaklardan bir ayrımı yoktur. Kendi demetlerinizi oluşturmak için Özkaynak Yönetimi bölümündeki yönergeleri izleyin.