Cyprian, ja mam takie notki:
Instrukcja do G2F napisał/a:W HiRes mamy 2-a kolory, które wzajemnie na siebie oddziaływują: kolor 1 (709) i kolor 0 (710).
kolor 1 to jasność i tylko jasność grafiki czyli zapalonych pixli.
kolor 0 to kolor tła, czyli zgaszonych pixli.
Jeśli zmienimy kolor 0 (tło), to zapalone pixle przyjmą kolor kolor 0 o jasności z kolor 1 .
Jeśli zmienimy kolor 1 to zmienimy tylko jasność zapalonych pixli grafiki, ich kolor pozostanie bez zmian.
Kolory duszków PM0...PM3 będą zależeć od jasności zapalonych pixli grafiki, czyli od kolor 1 i mniej od zgaszonych pixli czyli kolor 0 .
DUSZEK ZNAJDUJE SIĘ NAD KOLOR 1 :
- jeśli jasność z kolor 1 <>jasności duszka to duszek przejmuje jasność z kolor 1 ,
grafika kolor 1 jest niejako podkolorowana kolorem duszka
- jeśli jasność z kolor 1 =jasności duszka to duszek nie zmienia jasności, zakrywa kolor kolor 1
DUSZEK ZNAJDUJE SIĘ NAD KOLOR 0 :
- kolor duszka pozostaje bez zmian, zakrywa tylko kolor kolor 0
W/w zależności możemy teraz wykorzystać do pokolorowania HiRes, musimy tylko zamienić kolory grafiki miejscami, tzn. kolor 0 (tło) będzie kolorem zapalonych pixli kolor 1 , a kolor 1 zamienimy na kolor 0 .
Dzięki takiej zamianie, kolor kolor 1 staje sie kolorem tła i jego jasność będzie oddziaływać na jasność duszków. Tło przeważnie mamy czarne, a jasność koloru czarnego jest =0 :)
Tak więc jeśli duszek przysłoni kolor kolor 1 =0, to też przyjmie jasność =0.
Atariki napisał/a:W trybach wysokiej rozdzielczości nałożenie sprajta na pole gry powoduje zmianę koloru tła wszędzie tam gdzie piksel sprajta jest zapalony. W konsekwencji wszystkie piksele grafiki mają kolor pobrany z rejestru sprajta, przy czym jasność piksela zgaszonego (0) brana jest z rejestru koloru sprajta, natomiast jasność piksela zapalonego (1) brana jest z rejestru COLPF1 ($D017).
Ponieważ zarówno kolor tła, jak i piksela pobierany jest z rejestru COLPF2 ($D018), to nieco inaczej wygląda również nakładanie kolorów sprajtów kiedy włączony jest priorytet 0 i zachodzi wyłącznie w przypadkach:
PF2 + PM2, PF2 + PM3, PF2 + PM2 + PM3, PF3 + PM2, PF3 + PM3, PF3 + PM2 + PM3
PONIEWAŻ POŁĄCZENIE POCISKÓW W PIĄTEGO GRACZA POWODUJE, ŻE KOLOR POCISKÓW BRANY JEST Z REJESTRU COLPF3 ($D019), TO W MIEJSCACH GDZIE PIKSELE POCISKÓW SĄ ZAPALONE KOLOR PF2 JEST ZASTĘPOWANY PRZEZ PF3. Nakładanie kolorów zaś odbywa się w tym przypadku tylko między pociskami (które traktowane są jak pole gry PF3) a graczami.
Pierwsza para sprajtów PM0 i PM1 reaguje wyłącznie między sobą, ponieważ żaden piksel pola gry nigdy nie przybiera koloru pobranego z COLPF0 ($D016) lub COLPF1 ($D017).
Fragmentu zaakcentowanego z ^Wiki jeszcze nie udało mi się uzyskać w G2F.
To powyżej można jeszcze połączyć z duszkiem lub pociskiem rozciągniętym na całym ekranie co poprawia trochę sytuację i teoretycznie daje on niezależność drugiego koloru znaków, zwłąszcza jeżeli dodatkowo wykorzystamy odwrócenie kolorów polecane w instrukcji G2F :)
W G2F masz do wykorzystania priorytet 0 i 1:
Priorytet 0
bez włączenia piątego gracza: PM0 | PM1 | ..... PF1 | PM2 | PM3 | PF2 | BAK
z włączonym piątym graczem: P_0 | P_1 | P_5 | PF1 | P_2 | P_3 | PF2 | BAK
Priorytet 1
bez włączenia piątego gracza: PM0 | PM1 | PM2 | PM3 | ..... PF1 | PF2 | BAK
z włączonym piątym graczem: P_0 | P_1 | P_2 | P_3 | P_5 | PF1 | PF2 | BAK
Zmieniłem P4 na P5 - bo jakoś wszyscy kojarzymy "piątego duszka", a nie czwartego licząc od zera ;)
___
Press play on tape...