tr-demoscene
the scene => coding => c64 => Konuyu başlatan: einhander - 06.07.2008 03:25:24
-
16 veya 16*16 renk combinasyonlu renkli olacak tek bir spriteda c64 mümkün mü?
ve multicolor mode olmayacak bilen varsa yazsın olur mu olmas mı?
-
multicolor mode olmayacak dediğin anda elindeki tek seçenek 8 sprite'ı üst üste basıp her satırda $d012'yi yakalatıp 8 sprite'ın da renklerini değiştirerek her satırda maksimum 8 farklı renk olacak biçimde 16 renkli sprite elde etmektir. Birden fazla sprite'a ihtiyacın varsa bunu her satırda 4 farklı renk kullanılabilen 2 sprite bloğu ya da her satırda maksimum 2 renk olacak biçimde 4 sprite bloğu şeklinde kullanabilirsin. 16*16 256 renk kombinasyonundan kastettiğin iki renk frame'i kullanarak renk karışımı elde etmek ise bu aslında 136 renk elde edilmesine yarar (diğer renkler tekrar eden renklerdir). Evet bu şekilde de kullanman mümkündür.
Yani sonuç olarak 8 sprite üst üste basıldığı durumda;
1) 21 sprite satırında, her satırda ve her framede bağımsız 8 renk kullanarak renk karışımları elde etmek mümkündür. Teorik olarka 8*8 = 64 farklı renk elde edilebilir. Eğer her iki framedeki 8 renkten ortak olan renkler çıkarsa sayı 64'den az olacaktır.
2) Her sprite satırı bağımsız olarak renk paletine sahip olabilir. Bu konuda bir sınır yoktur.
3) Yan yana daha fazla sprite basmak olanaklı olmasa da multiplexer kullanarak alt alta aynı özelliklerde spritelar kullanılması olanaklıdır.
-
Çok basit Ben tek bir sprite ve multicolor olmayacak dedim. örnek olarak 16 renk olacak demiştim. Üstadad şimdi ben bu olayı Basic de bir sprite basarken
aklıma bir şey geldi. Her sprite datası basışımda o spriteın renk bilgisini değiştirdim Basicte denediğimde Tuhaf bir şekilde farklı bir gibi bir şey gördüm.Sonra assemblerda aynı şeyi yapmak istedim baktım ki her sprite datası bastıkdan sonra sprite renk numarası değiştiğinde enterasan bir şekilde o sprite rengin sürekli ince uzun aynı ekrana $d020 vey $d021 artırdığımızda oluşan renkleri gördüm benim merak ettiğim de bu ? Acaba iii bir programlama tekniği ile bu işten ne çıkar yani 16 renk ve Üzeri olabiliri mi ? merak ettiğim bun lar.
-
ne demek istediğini anladım ancak senin yaşadığın olay bir tür split. yani tek renk bir spriteın rengini alt satıra geçmeden de değiştirmen mümkün. ancak bunu yalnızca spriteın bir yerinde yapabilirsin ve bir karakter bloğuna denk gelecek şekilde yapabilirsin. Sprite'ın 3 karakter genişliğinde olduğunu düşünecek olursan bundan çok büyük bir çıkar elde etmen mümkün değil. Ayrıca bu tekniği kullanırsan sprite'ın yatay pozisyonunu dilediğin gibi değiştirmen de kolay olmayacaktır.
Son olarak sana SHIFLI (Super Hires Interlace FLI) ve UFLI grafik modlarını incelemeni tavsiye ediyorum. Bunlarla ilgili çok net dökümanlar bulmak kolay değil ancak bazı sitelerde yayınlanmış röportaj, IRC logları v.s. var bu konularda. Spriteların çok renkli ve efektif kullanımlarıyla ilgili şu ana kadar çıkmış en güzel örnekler bunlar.