Merhaba, bu yazıda SKCropNode sınıfını inceleyeceğiz. Keyifli okumalar.
SKCropNode Nedir?
Çocuklarının çizdiği pikselleri maskeleyen bir düğüm, ve aynı zamanda yalnızca bir kısmı ebeveynin çerçeve arabelleğine işlenir.
Genel Bakış
Bir kırpma düğümü, kokpit görünümleri, kontroller ve diğer oyun göstergelerinin yanı sıra bir dizi düğümün yalnızca bir sahnenin belirli bir bölümünde çekilmesi gereken herhangi bir etkiyi uygulamak için yararlıdır. Şekil 1, bir kırpma düğümünün nasıl çalıştığını gösterir. Solda gösterilen roket gemi sanatını, sağda gösterilen kırpma düğümünün çocuğu olarak çizilmiş bir sprite için maske olarak kullanır.
Kırpılan alan bir maske kullanılarak belirtilir. Maske sabit bir görüntü değil. Maske, SpriteKit’teki diğer içerikler gibi bir düğümden oluşturulur. Bu, bir ürün düğümünün bir sanat eserinden türetilen basit maskeleri kullanabileceği anlamına gelir, ancak daha karmaşık maskeler de kullanabilir. Örneğin, bir maske belirtebileceğiniz bazı yollar şunlardır:
- İçeriği, sahnenin dikdörtgen bir kısmına sınırlayan bir işlenmemiş hareketli grafik.
- Dokulu bir hareketli grafik, piksel başına hassas bir maskedir. Fakat aynı zamanda eşit olmayan bir şekilde ölçeklenmiş bir yapının faydalarını da düşünün. Yeniden boyutlandırılabilir bir kullanıcı arabirimi öğesi (bir sağlık çubuğu gibi) için bir maske oluşturmak ve daha sonra maskelenmiş alanı dinamik içerikle doldurmak için eşit olmayan bir ölçeklenmiş doku kullanabilirsiniz.
- Düğüm koleksiyonu, çerçevenin her oluşturulduğunda değişen karmaşık bir maskeyi dinamik olarak oluşturabilir.
Bir kırpma düğümü kullanmak için, başka düğümlerde olduğu gibi çocuk düğümleri ekleyin. Ardından, kırpma düğümünün maskNode özelliğini başka bir düğüme yönlendirecek şekilde ayarlayın. Sahne oluşturulduğunda, kırpma maskesi, maske düğümünü oluşturur ve çocuğun hangi piksellerinin üst öğenin framebuffer’ına işlenmesi gerektiğini belirlemek için ortaya çıkan maskeyi kullanır.
Liste 1, maskenin basit kullanımını göstermektedir. Bu kod, uygulama paketindeki bir dokudan bir maske resmi yükler. Sahnenin içeriğinin bir kısmı daha sonra, kırpma düğümündeki çocuklar olarak, maskenin, oyunun denetimleri göstermek için kullandığı ekranın bölümünü aşırı çekmesini önlemek için kullanmasıyla oluşturulur.
SKCropNode *cropNode = [[SKCropNode alloc] init]; cropNode.maskNode = [[SKSpriteNode alloc] initWithImageNamed:@"cockpitMask"]; [cropNode addChild: sceneContentNode]; [self addChild:cropNode]; [self addChild:gameControlNodes];
Ürün düğümünün çocukları oluşturulduğunda, düğüm düğümü ilk önce oluşturulur ve düğümün çocuklarını kırpmak için kullanılır.
Fonksiyonları Ve Değişkenleri
var mask
Düğüm, kırpma düğümü maskesini belirlemek için kullanılır.