Próbuję rozgryźć podstawy tworzenia gier na platformę C64 od wersji BASIC i mógłbym skorzystać z porady na temat czegoś bardzo podstawowego, ale ważnego: co to właściwie jest na ekranie i jak go narysować?
Spójrz na Katakis / Denaris :
Na ekranie jest co najmniej 9 różnych rzeczy:
- Pasek wyników z różnymi czcionkami
- Sam statek
- Satelita przymocowany do statku, odłączany
- Pociski broni wtórnej
- Pociski pierwotnej broni
- Ruchome obiekty (mogą być okrętami wroga)
- Pasek stanu zawierający obraz statku, liczbę żyć i trzy sekcje, które mogą wypełnić
- Główny pasek ładowania broni może wypełnić się do końca
- Przewijane pole gwiazd w tle
- (nie są ponumerowane na ekranie) Stałe obiekty, takie jak skały lub metalowe ściany, które są częścią tła
C64 obsługuje tylko 8 duszków na poziomą linię skanowania, więc nie sądzę, że wszystko na środku ekranu może być duszkiem? Zakładałbym, że wszystko, co wymaga kolizji, byłoby duszkiem (ponieważ mogę uzyskać wykrywanie kolizji ze sprzętem), ale nawet wtedy szybko osiągnąłem limit 8 duszków. Ponadto moja broń może wystrzelić więcej niż jeden pocisk - mój statek, satelita i 6 pocisków byłyby już 8 duszkami w rzędzie (spójrz na około 50 sekund filmu).
Z którego trybu graficznego skorzysta taka gra? Podręcznik programowania zawiera tryb mapy bitów, który zasadniczo modyfikuje pamięć ekranu. Czy to jest tryb, w którym zwykle powinienem pracować? Jak skomponuję wszystkie elementy inne niż duszki, aby uzyskać je na ekranie?
Wiele rzeczy na pasku wyników i stanu jest statycznych („Obszar: 01” lub „ramka”), więc chyba zapełnię je tylko raz, gdy rozpocznie się poziom. Rzeczy wymagające aktualizacji - wynik, paski ładowania u dołu - zostałyby zaktualizowane poprzez wypełnienie pamięci ekranu kolorem czarnym, a następnie rysowanie nowego wyniku w każdej klatce?
Czy też muszę narysować cały ekran na każdej klatce?