Grafika – elementy, algorytmy, przykłady gotowe

Fort Quest 04–01 ‚2015 beta


FEB.14.2016.

Osobno zebrane (wyodrębnione) zadania dotyczące elementu VIEW (podgląd schematyczny labiryntu):

Linie 820 do 828 (ułożenie ‚łańcuszka’ widoków do narysowania) – ciąg widoków od lewej do prawej (lewo, przód, prawo) w odległości 1 od LOCX, LOCY (LOCN, LOCE, LOCS, LOCW) w zależności od kierunku patrzenia gracza (LOOKDIR)

Linie 950 do 954: dorysowanie jednego przykładowego widoku odległości 2 od LOCX,LOCY (LOCNN, LOCEE, LOCSS, LOCWW), bez umieszczania w zmiennych, jedynie przykład dla widoku odległego o 2 pozycje na wprost od kierunku patrzenia gracza (LOOKDIR)

Zadanie: dokończyć wizualizację schematyczną labiryntu zgodnie z szablonem zaprezentowanym i realizacją przykładową dla pełnego widoku 2 od LOCX, LOCY (uzup. linii od 950 do 954 dla pozycji LOCNNW, LOCNNE dla LOOKDIR=N, etc.)

Następny etap zadania po wykonaniu powyższego: zautomatyzować widok schematyczny dla dowolnego zadanego n–(pozycji odległych) od pozycji gracza LOCX,LOCY.

Osobne zadania:

– uzupełnić widok schematyczny VIEW o wszystkie dowolne obiekty faktyczne znajdujące się w lokacji gracza LOCX,LOCY oraz dla lokacji widocznych

– uzupełnienie teksturami i grafikami widoku schematycznego dla zainteresowanych nieobowiązkowe (zadanie dodatkowe): zrealizować obsadzanie tekstur w sposób ekonomiczny, np. dla danego labiryntu lub obszaru gry wczytać raz z pliku grafiki potrzebne wykorzystywane na pustą nieużywaną stronę pamięci i przed wyświetleniem widoku lokacji przerzucać automatycznie bloki tekstur lub grafik obiektów, etc. na widok schematyczny LUB przygotować schematyczne widoki gotowe (nie tworzone dynamicznie) i analogicznie – jedynie przerzucać z podręcznych obszarów pamięci ekranu gotowe widoki uzupełniane jedynie o obiekty w lokacjach.

– zadanie dla wymagających zainteresowanych: zrealizować widok schematyczny labiryntu w formie wektorowej dynamicznej (dowolna rozdzielczość ekranu, dowolna wielkość okna podglądu, sterowanie widokiem i elementami widoku w sposób wektorowy), zamiast formy grafik statycznych prezentowanych w przykładzie – zrealizować zadanie w formie ekonomicznej działającej gotowej do wykorzystania w dalszych zastosowaniach na potrzeby innych podobnych wizualizacji widoków typu Wolf 3D, Doom, itp.

Inne zadania i przykłady gotowe wkrótce.

DS`.
FEB.14.2016.

Fort Quest 04–01 beta – tmp in work – examples.


Zadania dla różnych grup zainteresowanych, w zależności od narzędzi znanych lub używanych przez zainteresowanego:

Dla znających Atari 8–bit (XL/XE) i Atari BASIC:

– dostosować program do pracy w trybach graficznych wszystkich dostępnych standardowych zgodnie z wyborem użytkownika przed rozpoczęciem wykonywania programu głównego – VIEW oraz MAP działa w listingu przykładowym w GRAPH. 6. Dostosować do dowolnego trybu GRAPH od 0 – .. (wszystkie standardowe dostępne na Atari XL/XE) – z okienkiem trybu tekstowego do obsługi gry (komunikaty i polecenia) – tak, jak w oryginale (okienko tekstowe musi pozostać).

– dołączyć obsługę grafik lokacji w zależności od zmiennych LOCX i LOCY (zmienne określające położenie / lokację bohatera na mapie gry). Grafiki w plikach graficznych wyświetlane po wejściu do lokacji LOCX, LOCY – najprostsze wyświetlenie obrazka z pliku odpowiedniego dla LOCX i LOCX lub dla zakresów LOCX,LOCY – obsługa dowolnych lub wszystkich trybów graficznych standardowych Atari XL/XE dla jednego zestawu grafik w formie jednej stałej (konwertowanie grafik po rozpoznaniu trybu graficznego i wyświetlanie po dostosowaniu do trybu GRAPH obsługiwanego w programie)

– podstawić własny lub dowolny zdefiniowany zestaw znaków tekstowych lub kilka zestawów znaków dołączanych na potrzeby gry z plików *.chr, *.fnt, itp. – żeby czcionka dla komunikatów i poleceń była ciekawa na potrzeby gry, np. Book Antiqua, lub inne ciekawe kroje czcionek zamiast standardowych Atari XL/XE.

– narysować mapę gry w trybie GRAPH 1 lub 2 celem ułatwienia i przyspieszenia rysowania elementów mapy (tryby tekstowe ze znakami zdefiniowanymi lub standardowymi) – zamiast w trybie GRAPH 6.

– przerobić program na korzystający TYLKO z jednej mapy pamięci na użytek mapy gry (zarezerwować i przydzielić konkretnie bezpieczny obszar pamięci dla mapy gry w sposób dynamiczny jednorazowo podczas działania programu przed rozpoczęciem wykonania programu głównego – dla trybu graficznego używanego w grze zgodnie z wyborem użytkownika przed rozpoczęciem rozgrywki) – analogicznie zabezpieczyć obszar pamięci dla podglądu VIEW oraz dla pustego ekranu (3 niezależne bezpieczne obszary pamięci na użytek: MAP, VIEW, pusty ekran), pozostały obszar pamięci operacyjnej przydzielić i zabezpieczyć analogicznie dla bloku zmiennych, stałych i dla innych bloków stałych wyodrębnionych, pozostała część pamięci operacyjnej wolna na potrzeby wykonania programu i na potrzeby dalsze potencjalne… – pokazać obszary pamięci uszeregowane i określone oraz wykazać ekonomiczność przydzielonych i zarezerwowanych obszarów, pokazać działanie pamięci w obszarach określonych przypisanych podczas pracy programu w sposób dynamiczny (wizualizacja obszarów przypisanych) – celem uporządkowania, optymalizacji i normalizacji obszarów przypisanych na poziomach najniższych oraz algorytmów przetwarzania tych obszarów w kodzie programu przetwarzającego), usunąć obszary niepotrzebnie zajęte, np. DOS i inne zbędne elementy niezwiązane z pracą własną programu, poprzesuwać obszary pamięci posiadane i wykorzystywane przez program dla porządku, stabilności i pełnej wydajnej bezpiecznej pracy programu. Pokazać obszary prawidłowo pracujące i przydzielone konkretnie (dedykowane) podczas wykonywania programu w całym obszarze od 0 do 65535.

[w aktualnej wersji programu jest już jedna mapa pamięci dla obsługi mapy gry: od adresu DL+5,116:DL+4,0 dla trybu GRAPH6,
pusty ekran od DL+5,AP:DL+4,0 (AP=139 w linii 85),
VIEW od DL+5,151:DL+4,224 – standardowy adres GRAPH6 w Atari BASIC]

– znaleźć sposób na rysowanie mapy gry na stronie pamięci niewidocznej dla użytkownika w taki sposób, żeby użytkownik nie musiał czekać na wczytanie mapy na ekran podczas przechodzenia do lokacji z inną mapą gry (np. na poziom dolny fortu lub górny lub za masywną bramę, za czerwone metalowe drzwi, etc. etc. – mapy muszą być gotowe po wejściu do lokacji z inną mapą niż obsługiwana).

– narysować mapę gry widoczną podczas rysowania w formie ciekawej animacji, np. rysowanie linia po linii sekwencyjnie w sposób kontrolowany dla zachowania efektu wizualnego ‚ciekawego’… lub rozwijając mapę od góry do dołu jak zwinięty papirus, lub ‚przyjeżdżającą’ z boku (krawędzi) ekranu, etc.

Przykład efektu wizualnego:

po zamianie linii programu jak poniżej:

199 POKE 89,116+(MAPNR-1)*16:POKE 88,0:POKE DL+5,116+(MAPNR-1)*16:POKE DL+4,Y2

203 NEXT J:POKE DL+4,Y-I:NEXT I:SOUND 0,0,0,0:CH=0:POKE 764,255:RETURN

mapy rysują się widoczne na ekranie jeżdżąc sobie ‚scrollowo’… przykładowo. Proszę sobie poprawić na przykłady wjeżdżania mapy od góry lub dołu ekranu lub z bocznych krawędzi ekranu i żeby wyglądało ładnie i sensownie, a nie cyrk przykładowy w powyższych liniach 199 i 203.

Inny przykład cyrku nieuporządkowanego graficzno–wizualnego (podmieć odpowiadające linie programu rysujące mapę na poniższe):

198 Y2=MAPNRY(MAPNR-1):Y=MAPNRY(MAPNR)+Y2-1:IF MAPNR>1 THEN Y=Y+1
199 POKE 89,116+(MAPNR-1)*16:POKE 88,0:POKE DL+5,117+(MAPNR-1)*16:POKE DL+4,184
200 EKR=PEEK(88)+256*PEEK(89):SOUND 0,12,23,17:K=Y2*80+EKR-80:D=Y2*MAPX-MAPX-MAPX
201 FOR I=Y2 TO Y:K=K+80:D=D+MAPX:FOR J=1 TO MAPX:C=0:IF MAP$(D+J,D+J)=”1″ THEN C=255
202 Y2=K+J:POKE Y2,C:Y2=Y2+20:POKE Y2,C:Y2=Y2+20:POKE Y2,C:Y2=Y2+20:POKE Y2,C:NEXT J:POKE DL+4,ABS(184-I*20):NEXT I
203 POKE DL+5,116+(MAPNR-1)*16:POKE DL+4,0:SOUND 0,0,0,0:CH=0:POKE 764,255:RETURN

– uzupełnić podgląd schematyczny lokacji w poleceniu VIEW o lokacje oddalone od LOCX, LOCY o 2 odległości, a nie tylko o 1 odległość widoczną przez użytkownika (obsługa LOCN – 1 odległość, LOCNN – 2 odległość, etc.) w podprogramie od linii 900 lub jedynie przy włączonym podglądzie VIEWON=1

– uzupełnić podgląd lokacji VIEW o tekstury, obiekty, wszystkie elementy gry, które znajdują się w lokacjach w formie schematycznej lub graficznej pełnej

– uzupełnić obsługę mapy gry o istotne lub ciekawe dla użytkownika elementy widoczne na mapie gry (mapa szczegółowa, a nie tylko schematyczna)

– wyświetlić zakończenie gry (po wyjściu z Fortu) nie punktami PLOT w GRAPH9 (trwające wiele minut) – jak w przykładowym programie, lecz wczytując obrazki wprost z pliku z grafiką do pamięci ekranu całymi blokami maksymalnymi możliwymi do przerzucenia wprost INPUT#plik, pamięć ekranu dla GRAPH9, albo screensave do pliku (kierunek odwrotny przerzucania).

Fort Quest - Congratulations

Cel zadania: natychmiastowe wyświetlenie na ekranie grafiki wprost z pliku graficznego znajdującego się na dyskietce.

Cel zadania: uzupełnienie gry o grafiki lokacji dla dowolnego trybu graficznego (wczytywanie dla LOCX, LOCY grafiki właściwej wprost na ekran w okienko graficzne podglądu lokacji ) – skorzystać z dodatkowego pliku obsługiwanego przez grę, np. ‚graphloc.lst’ do zgromadzenia informacji o grafikach wyświetlanych dla danych lokacji lub zakresów lokacji analogicznie jak plik dla opisów lokacji (locs.dsc), grafiki w osobnych plikach graficznych wyświetlane zgodnie z informacją o lokacji w pliku graphloc.lst, lub upchać informację o nr pliku z grafiką dla każdej lokacji w pliku locs.dsc, lub gdziekolwiek sensownie i ekonomicznie, oczywiste… (nie korzystając z podglądu lokacji w postaci grafik lokacji podczas rozgrywki nie potrzeba obsługiwać informacji o grafikach ww., tak jak analogicznie przy VIEW, MAP i przy innych podglądach graficznych rozgrywki, ale i przy każdych innych elementach nie obsługiwanych przez program w trybie bieżącym aktualnym, oczywiste, przykład gotowy działający w kolejnej aktualizacji szablonu przykładowego Fort Quest 04-01.ATR.

Zadanie dodatkowe: z wielu klatek w plikach graficznych wrzucanych kolejno w okienko ekranu wprost z pliku na ekran zrobić film pełnometrażowy na Atari XL/XE w różnych trybach graficznych, animowany kolorowy lub zwyczajny kinowy standardowy (klatki fotografii świata realnego, jak w kinematografie) – dla przykładu.

Dla zbliżenia wydajności kinematografu Atari XL/XE do standardowej prędkości wyświetlania filmu 25 klatek/sekundę, można skorzystać z kliku obszarów pamięci ekranu aktualizowanych w trybie ciągłym poprzez wczytywanie klatek wprost z plików do obszarów kolejnych w łańcuchu zamkniętym cyklicznym i wyświetlanie aktualnej klatki filmowej na ekranie, tak jak w projektorze kinowym, w którym kolejne klatki do wyświetlenia czekają gotowe do wrzucenia na ekran jak slajdy w podajniku – po zdjęciu aktualnej klatki z ekranu i zastąpieniu następną, wczytywana jest natychmiast kolejna klatka do pamięci ekranu na końcu klatek czekających w kolejce do wyświetlenia. Priorytetem dla płynnego wyświetlenia filmu w całości jest utrzymanie ciągłości czytania z dyskietki.

Zrobić, pokazać. Wyliczyć ile dyskietek jest potrzebnych dla filmu trwającego półtorej godziny – dla każdego trybu graficznego Atari XL/XE osobno.

– napisać automat do konwertowania dowolnych plików prostych BMP z zapisanym obrazkiem do plików z kolorami i w rozdzielczości trybów Atari XL/XE, jak w przykładzie Fort Quest 04-01 (pliki congrat.pic i fortscrn.pic) – pliki zawierają uporządkowane kolejne cyfry odpowiadające kolorom ustawianym instrukcją COLOR w trybie graficznym GRAPH9 w rozdzielczości 78 x (y), uzupełnić automat o zrzucanie konwertowanego BMP do pliku w formacie odpowiednim do postaci najprostszej sensownej (standardowej logicznej) lub do postaci określonej konkretnie własnym sposobem wrzucania plików graficznych na ekran (w zależności od parametrów ustawianych w trybach graficznych celem wyświetlenia grafiki => zawartość pliku graficznego powinna być najprostsza do bezpośredniego wrzucenia na adresy pamięci Atari XL/XE celem uzyskania natychmiastowego efektu oczekiwanego, tj. wyświetlenie pełnej skończonej grafiki natychmiast po skierowaniu zawartości pliku na adresy właściwe Atari – najlepiej jednym czytaniem pliku lub wielokrotonością najprostszą zgodną ze specyfikacją systemu odczytu/zapisu sektorów lub bloków dyskietki lub zmiennych używanych, adresów adresowanych, etc.)

Konwerter plików BMP do plików graficznych własnych uruchamiany na Atari XL/XE:

1. Plik BMP wgrać na dyskietkę (np. dołączyć do obrazu dyskietki ATR lub do dowolnego innego).

2. Uruchomić na dyskietce konwerter z nazwą pliku BMP celem automatycznego uzyskania na dyskietce pliku graficznego gotowego do obsługi przez własny program Atari.

Działanie konwertera:

1. Odczyt nagłówka pliku BMP zgodnie z formatem BMP => info systemowe o możliwej konwersji i lista konwersji możliwych do wyboru z podglądem.

2. Zapis odczytanego pliku BMP zgodnie z wyborem użytkownika do pliku wynikowego konwersji.

Zadanie przykładowe:

obrazek z gry Draconus (strona początkowa gry z tytułem gry i informacjami o grze) na Atari XL/XE:

draconus

Format pliku z obrazkiem: bmp, rozdzielczość obrazka 78×56 punktów, 1 do 8 odcieni szarości.

Przekonwertować na obrazek gotowy do narysowania w trybie GRAPH9.

Sporządzić program konwertujący podobne obrazki w dowolnej rozdzielczości na obrazki do wyświetlenia w trybie GRAPH9 jako pełne obrazki wyświetlone w całości w trybie GRAPH9 lub jako części oryginalnego obrazka w rozdzielczościach zgodnych z trybem GRAPH9 – każdy fragment oryginalnego obrazka osobno (puzzle o wymiarach elementów 78 x (y), lub o dowolnej wielkości zadanej) – dowolnie wg uznania i przydatności.

Narysować instrukcjami COLOR/PLOT.

Narysować poprzez wrzucenie bezpośrednie obrazka w odpowiednie miejsca pamięci komputera bez używania instrukcji rysowania.

Przykład 1:

DIM XLINE$(78):GR.9:CLOSE#1:OPEN #1,4,0,”D:grafika.pic”: FOR Y=1 TO 20:INPUT #1,XLINE$:?#6;XLINE$:NEXT Y:CLOSE#1<RETURN>

(instrukcja wyświetlająca natychmiastowo na ekranie Atari w trybie GRAPH9 obrazek z pliku grafika.pic – w przykładzie wyświetlone jest 20 linii w pionie, w zmiennej XLINE$ znajduje się 78 znaków z nr odcieni koloru w trybie GRAPH9 – prędkość wyświetlenia obrazka zależy jedynie od czasu czytania każdej linii poziomej obrazka do zmiennej XLINE$ – przy wczytaniu do pamięci całego pliku i przerzuceniu prosto z pamięci na ekran wyświetlanie obrazka 80×192 powinno być natychmiastowe)

Program działający przykładowy do wklepania i modyfikowania zgodnie z potrzebami własnymi:

0 DIM XLINE$(79):CLOSE #1:OPEN #1,4,0,”D:GRAFIKA.TXT”:GRAPHICS 9
1 FOR I=0 TO 35:INPUT #1,XLINE$:? #6;XLINE$:NEXT I

Plik grafika.txt.

Aby wyświetlić pozostałe linie obrazka należy wstawić po każdych 80–ciu znakach znak końca linii (›), wtedy czytanie do zmiennej XLINE$ rozpoznaje koniec wczytania linii do wyświetlenia. Uzupełnić plik grafika.txt o znaki końca linii celem wyświetlenia całego obrazka 80×192 znajdującego się w pliku grafika.txt. Można dowolnie modyfikować plik grafika.txt na własne potrzeby, lub jako element do zrealizowania konwertera automatycznego BMP=>pic lub txt, etc. (do wyświetlenia na Atari).

Przykład 2:

Zrealizować film 5–minutowy z klatek obrazków w GRAPH9 zgodnie z przykładem 1.

Przykład 3:

Wstęp do animacji niewielkich bloków graficznych.

0 DIM XLINE$(79):CLOSE #1:OPEN #1,4,0,”H1:GR.TXT”:GRAPHICS 9

1 FOR I=0 TO 39:INPUT #1,XLINE$:? #6;XLINE$:NEXT I:CLOSE#1

2 GOTO 2

Plik z obrazkiem do powyższego programu: gr.txt.

Zadanie: znaleźć działający sposób przeniesienia zawartości pliku z obrazkiem gr.txt z powyższego przykładu wprost z pliku do pamięci ekranu w trybie GRAPH9 z pominięciem zmiennej XLINE$ (INPUT #1,DL), np. poprzez przypisanie adresu pamięci dla zmiennej XLINE$ odpowiadającego pamięci ekranu dla trybu GRAPH9 (ADR(XLINE$)=DL_ADR:INPUT #1,XLINE$).

Zamierzany efekt: wczytanie wartości do zmiennej XLINE$ powinno skutkować natychmiastowym wyświetleniem wartości w trybie GRAPH9. Przy wczytaniu jednorazowo całej zawartości pliku gr.txt do pamięci ekranu – cały obrazek zawarty w pliku powinien pojawić się natychmiast (nie ‚rysując się’).

Fort-Graph9

Znaleźć format zapisu obrazków w trybie GRAPH9 pozwalający najszybciej i najprościej przerzucić obrazek wprost z pliku bezpośrednio na ekran Atari.

– napisać analogiczny automat do konwertowania i odtwarzania i wykonywania plików filmowych avi, mpeg itp. oraz muzycznych (mp3, wav, etc.) wprost na i przez Atari XL/XE

[..]


W nawiązaniu do wcześniejszych przykładów dotyczących rysowania w trybach graficznych Atari XL/XE z użyciem instrukcji ?#6,GRAFIKA$, mapa z gry Fort Quest 04-01 beta może być szybko wyświetlona jedną instrukcją w dowolnym trybie graficznym mieszczącym wymiary mapy.

Można sobie samodzielnie sprawdzić w których trybach graficznych mieści się i jak wygląda mapa znajdująca się w zmiennej MAP$:

GR. n: FOR I=0 TO MAPY-1:? #6,MAP$(I*MAPX+1,MAPX*I+MAPX):NEXT I<RETURN>

n – numer trybu graficznego Atari XL/XE

Dla dowolnego trybu graficznego mapa o wymiarach 15×18 punktów nie powinna rysować się powyższym sposobem dłużej niż 3 sekundy.

Dla trybów graficznych bez okienka tekstowego warto zapisać powyższą linię rysowania mapy w dwóch liniach numerowanych, żeby tryb graficzny nie wyłączył się po zakończeniu rysowania mapy, np.:

8000 GR. n: FOR I=0 TO MAPY-1:? #6,MAP$(I*MAPX+1,MAPX*I+MAPX): NEXT I

8001 GOTO 8001

[..]


Elementy do gier:

Postacie i charakterystyki.

Obrazek pożyczony z gry Criminal Case – przekonwertowany i zmieniony autorsko wstępnie na potrzeby grafiki w rozdzielczości 320×200, 4 do 6 kolorów. Oryginalny obrazek docięty na potrzeby własne.

Zamiast zabierać obrazki innym, można przygotować własne – to zawsze najlepsza i jedynie dobra metoda.

Na potrzeby gier wieloosobowych i z wieloma postaciami różnego rodzaju, warto mieć przygotowane własne zestawy szablonowych obrazków, np. galerię postaci w formach najprostszych i elementów wystroju.

Galeria – Criminal Case – Women Brigade – Members…

W różnych etapach i sceneriach lub scenariuszach gier różne odpowiednie ubiory i stylizacje są bardzo istotne lub ważne…

Lieutenant after duties - ready to serve - Women Brigades - Members -

Porucznik po służbie gotowa służyć… – członek Brygady Kobiecej…

W trybie graficznym Atari GR9 (bez napisów na obrazku w innej palecie kolorów):

Crimnal Case - Women&Girls Police Brigade Member (01)
Crimnal Case – Women&Girls Police Brigade Member (01)

Inny przykładowy obrazek postaci – tryb GR9 Atari XL/XE (paleta odcieni szarości):

Crimnal Case - Women&Girls Police Brigade Member (02)
Crimnal Case – Women&Girls Police Brigade Member (02)

[..]


[..]

… Dokładnie z tych obrazków brałem podziemia i labirynty, bardzo podobnych przynajmniej. Pisałem, że z Ultimy Underworld. Po co się tak emocjonować? Jak dzieci. Hura! Przynajmniej nie są niedorajdami skończonymi. To się liczy. Gratulacje. A inne obrazki?

Proszę szukać. To taka gra. Kto znajdzie – wchodzi do Labiryntu Śmierci. Stamtąd nie ma wyjścia, aż przez Czarne Wrota. To potem dorobię. Dobry początek. Potem będzie trudniej.

Powodzenia.

Kwestia przeżycia…

NOV.20.2015


Już jest grafika. Szablon, ale jak wrzucę bitmapy dla każdej lokacji, to koniec z grafiką, zostało opisać lokacje i czynności w lokacjach, inwentarz i reszta drobiazgów i gotowe.

Muzyki nie umiem, ale w wav albo mp3 coś dołożę, z youtuba. Będzie lux. Fajne. Lubię to. Nie wiedziałem, że po 30 latach łatwiej się programuje niż 30 lat temu. Genialne. Muszę napisać inne gry fajne.

Przygodowka Basic – szablon – poczatek ver. beta 04 – NOV.06.2015.a8s

Mam już pierwszy bitmap – ta ścieżka z gry. Bez skrzyżowania, ale to nic. To będzie północ – południe, zamiast skrzyżowania. Poprawię potem w grze.

Czy ktoś umie łatwo i szybko zamienić ten bitmap w 8 kolorach na mniej niż 8 kolorów, żeby w trybie graph 6 albo innym działało ładnie? Rozmiar obrazka jest 120×80. Kolory sam zrobię na 4 max. Żeby ktoś umiał sprawnie przerobić ten PNG na liczby do Basica w Data. Żeby PLOT–em narysować w trybie 6 Atari Basic.

Jak się podmieni pod liczby DATA z tej gry co dałem wyżej przykład w Basic, to będzie już z grafiką. Będą się dogrywały lokacje z dysków, bo pewnie zajmuje dużo. 22kB. Trzeba zmniejszyć do 4 kolorów i będzie 10kB na obrazek może. To się da policzyć: 120×80=9600 bajtów max. 8Kb.

Ktoś wie jak zrobić sznurek wartości DATA ciągiem dla tego PNG?

I byłoby gotowe – już z grafiką cała gra.

sciezka

Jeszcze muzyka tak samo, wait…

Już dziękuję za pomoc w razie czego, znalazłem sobie sam metodę. Chyba jest to w temacie konwersji – każdy sam sobie może zrobić własną ‚ręcznie’ analogicznie na tym przykładzie, co robię właśnie – obojętnie jaką grę, oczywiste.

Chodzi o przeniesienie tych pixelów z bitmapy ścieżki do wartości DATA. Jest fajny programik online:

HexEdit Online

Taki Sherlock / Watson / Norton Editor / Debug / Edit .. , itp.

Bardzo fajny, od razu widać cały kod w szesnastkowym i dziesiętnym.

Można podmienić sobie co się chce i eksportować nową wersję, skopiować liczby potrzebne zaznaczając i prosto do DATA. Gotowe. Fajne.


Hmm… to muzyka mi została. To na końcu ktoś mi dorobi i się wstawi.

Można robić grę… grafiki i lokacje. Fajne to jest.

Działa.

Już zajmuje 4kB w BMP, no to jak zredukuję do 4 kolorów po tym HexEdit – najbliższe różne kolory przykładowo ujednolici się do jednej liczby tej samej, to będą 4 kolory i 120×80, ramka na tekst w Graph 7 albo czcionka graficzna na trybie graficznym zamiast tekstu, będzie ładniej, jak w Neverending Story np.

Może nie będzie trzeba dogrywać tych grafik nawet. Zmieszczą się w pamięci gry.

No to chyba gotowe, teraz klepać.

Ciekawe, czy będzie szybkie w Atari Basic?

Podoba mi się.


A dysponuje ktoś narzędziem dobrym do robienia grafik do przygodówek na Atari? Żeby ładne były grafiki i obsługiwane już programowo – gotowe funkcje, że tylko bitmapa i elementy jakieś istotne wklepać i żeby było gotowe – do wrzucenia w kod gry. Najlepiej jako zamknięta gotowa funkcja do grafik.

I muzyka analogicznie. To byłby koniec moich potrzeb w celu ułatwienia sobie. Resztę połączę i zrobię sam.

sciezka 4c


6 Nov 2015

Może przeniosę ten fragment wątku dot. gry, którą robię, do nowego wątku do projektów?

Bo tu jest ogólny wątek, a wyszło w przygodówki. A przecież inne gry też są, to potem, jak przygodówka będzie działać skończona.

Zrobi się wszystkie rodzaje i każdy zrobi sobie sam potem własną.


Czy takie lokacje z grafiką oraz tekstem w grze (w okienku pod obrazkiem będzie opis miejsca i ‚Co robisz?’ – tu się będzie wydawało polecenia) mogą być (jak w pliku załączonym)?

Czy zmienić drogę tej przygodówki?

Każda lokacja miałaby taką grafikę mniej więcej i obsługę klawiaturową jak w tej wersji Basic – ale z pełnymi słownikami i opisami, etc. – standardowo. Napisy w dopasowanej wersji do całości na kształt tego, co na obrazku widać.

sciezka 6color - adventure


I jeszcze druga lokacja przykładowa, żeby było widać o co by chodziło w kwestii technicznej gry (jak ma wyglądać) – wszystkie lokacje byłyby tego rodzaju, żeby był klimat jak widać. Scenariusz mój własny, coś wymyślę. I trzeba wędrować jak w każdej standardowej przygodówce i robić co należy i badać aż do Congratulations.

Czy taka forma odpowiada i jest ładna? Proszę nie traktować tego jako zobowiązanie do jakiekolwiek umowy – a propos o czym rozmawialiśmy wcześniej – jeśli spodoba się, to wystarczy. Samodzielnie można zdecydować, czy chciałoby się grę na umowę zgodnie z wcześniejszą rozmową.

Jeśli to zaprezentowane się podoba, to mogę pociągnąć do pełnej gry.

Jeśli nie podoba się, to nie ma co robić dalej, bo cała gra wyglądałaby tak jak na obrazkach.

Jeśli ładniejsza jest ta z obiektami w stylu Erika i Troll’s Tale zamiast bitmap w tych, co pokazuję, to nawet łatwiej i szybciej się da. Może być proste jak w Mózgprocesor – same kształty najprostsze.

Do wyboru.

W drugim pliku ‚klisza fotograficzna’ (wycinek) z grafikami dwóch pierwszych przykładowych lokacji. Tekst będzie dopasowany do obrazka tak, żeby było jak grać (opowieść, komunikaty i miejsce na polecenia) – będzie się przewijać <naciśnij RETURN> – jeśli opowieść lub opis jest dłuższy i na końcu ‚Co robisz?’ i tu się wpisuje – tak, jak w standardowych przygodówkach – jak w przykładzie w Basic powyżej.

jaskina w lesie 6color - adventure

Lokacje 01-02 - adventure - 6 color

Muzyka będzie ładna klimatyczna odpowiednia do klimatu gry, opowieści i obrazków, żeby było jak opowieść prawdziwa ciekawa pełna i spójna jako opowieść. Będzie się zmieniała w zależności od lokacji, dźwięki też w zależności od zdarzeń lub czynności pasujące do ścieżki dźwiękowej prowadzącej grę.

Hmm… co jeszcze jako przykład?

Podoba się, czy nie tędy droga?

Może być jak Erik, ale warto powiedzieć przed.

Gra ma się podobać docelowo, a nie nie podobać, oczywiste.

2015–11–06 17:02


Screeny już gotowe w 4 kolorach do przeniesienia wprost na Graph 15 po DATA. Jeszcze posklecać wszystko, żeby działało i będzie można chodzić sobie po lesie i szukać zagadek.

Fajne. Działa.

Resztę już a propos tej przygodówki na wątku, który założyłem, żeby tu nie zwiększać zawartości wątku w temacie jednym.

Można wrócić do Fanowskich Konwersji.

Dzięki i przepraszam za zapisanie jednym tematem tyle miejsca na wątku.

DS`.

/koniec o przygodówkach.

Dwa screeny dodatkowe:

4 kolory sepia

4 kolory old photography


Praca nad screenem: PhotoFiltre 7 (free version)

Pierwsze próby uzdatnienia grafiki do wersji dla Atari: Graph2Font_v3.9.9.3_full, Atari Graphics Studio v3.0.1

Przykładowa ścieżka leśna z gry dostosowana dla Atari XL/XE za pomocą konwertera BMP2GR9 – tryb graficzny 9.

Śieżka w lesie - Quest - grafika okacji
Śieżka w lesie – Quest – grafika lokacji – Atari XL/XE GRAPH9

i analogicznie jaskinia w lesie:

cave-green palette
Jaskinia w lesie – Quest – grafika lokacji Atari XL/XE GRAPH 9

Przykładowe grafiki sporządzono z użyciem konwertera BMP2GR9 – program w Atari BASIC konwertujący dowolne obrazki w formacie BMP do grafik w dowolnych trybach graficznych Atari XL/XE wprost automatycznie w sposób najprostszy (zgodnie z przykładami powyższymi) wkrótce dostępny dla zainteresowanych – na zamówienie – zgodnie z uzasadnionymi potrzebami własnymi związanymi z pracą w trybach graficznych Atari XL/XE.


Więcej o innych narzędziach do grafiki Atari: atari . area (grafika)


Narzędzia gotowe do obróbki grafiki w dowolnych trybach graficznych Atari XL/XE wkrótce.

DIM XLINE$(x_res):GR.n:CLOSE#1:OPEN #1,4,0,”D:grafika.pic”: FOR Y=1 TO y_res:INPUT #1,XLINE$:?#6;XLINE$:NEXT Y:CLOSE#1<RETURN>: REM Wyswietlanie linii obrazka na ekranie

DIM GRAPHBLOCK$(x_res*y_res):GR.n:CLOSE#1:OPEN #1,4,0,”D:grafika.pic”: INPUT #1,GRAPHBLOCK$:?#6;GRAPHBLOCK$:CLOSE#1<RETURN>: REM Wyswietlenie bloku obrazka na ekranie

[..]

tbc.


Zadania przykładowe dla zainteresowanych.

1. Obrazek przykładowy w formacie BMP prostym o rozmiarach 78×59 punktów (max. 8 odcieni szarości) narysować w trybie GRAPH9 Atari XL/XE.

Cela 10/5 – Lustro na ścianie – Fort Quest 04–01 beta – Poziom dolny fortu.

Fort Quest 04-01 - Cela 10-5 Lustro GR9

Obrazek zapisany jest w prostej wersji formatu BMP, żeby przenieść obrazek do pliku TXT lub PIC lub dowolnego zawierającego numery kolorów do wyświetlenia w trybie GRAPH9 jak w przykładach poprzednich => wystarczy przepisać zawartość pliku BMP do pliku TXT lub dowolne rozszerzenie (np. o nazwie ‚lustro.pic’) z wartościami gotowymi dla trybu GRAPH9 (cyfry od 0 do 8 odpowiadające odcieniom szarości).

Wyświetlenie obrazka liniami od góry do dołu:

DIM XLINE$(78):GR.9:CLOSE#1:OPEN #1,4,0,”D:lustro.pic”: FOR Y=1 TO 59:INPUT #1,XLINE$:?#6;XLINE$:NEXT Y:CLOSE#1: REM Wyswietlenie obrazka w trybie GRAPH9 Atari BASIC o rozmiarach 78×59.<RETURN>

Jeśli zachodzi potrzeba wyświetlenia obrazka od dołu do góry (ze względu na odwrotny zapis w pionie w formacie BMP), można skorzystać z instrukcji POSITION w Atari BASIC do rysowania linii zawartych w zmiennej XLINE$ od dołu do góry, np. POSITON 160-Y, przed wyświetleniem linii instrukcją ?#6;XLINE$, lub zapisać obrazek przenosząc z BMP do pliku własnego z liniami uporządkowanymi odpowiednio zgodnie z potrzebą własną, by np. rysować wprost bez przeliczania lub ustawiania parametrów, lub dowolne.

Obrazek przykładowy lustra przypomina grafikę w grze The Day of the Tentacle firmy LucasArts (duże obszary jednokolorowe wynikające z uproszczenia kolorystyki – ograniczona liczba kolorów lub odcieni kolorów – tak, jak w powyższym przykładzie obrazka z lustrem, lub jako styl charakterystyczny wszystkich grafik określonych w zestawie dla produktu końcowego, pomimo braku ograniczeń technicznych lub programowych związanych z liczbą możliwych kolorów do wykorzystania).

Konwerter automatyczny najprostszy napisany w Atari BASIC konwertujący BMP do pliku lub wyświetlający wprost na ekranie Atari XL/XE plik BMP w trybie GRAPH9 daje w efekcie efekt jak na poniższym przykładzie (dla lustra z powyższego przykładu z pomięciem napisu GRATULACJE w górnej części ekranu).

LUSTRO-G9FULL-ATARI
Lustro – Cela 5/10 – Fort Quest 04-01 beta ‚2015 – grafika robocza do gry przygodowej

Po odpowiedniej korekcji wartości barw można uzyskać w kwestii kolorów obrazka idealny pierwowzór z BMP przykładowego.

Obrazek jest rozciągnięty w poziomie ze względu na specyfikację techniczną trybu GRAPH9 Atari XL/XE. Po odpowiednim przygotowaniu grafiki lub pliku BMP przy konwertowaniu do pliku wyświetlanego wprost w GRAPH9 warto lub można uwzględnić ‚rozciągnięcie ‚ trybu GRAPH 9 celem uzyskania 100% pierwowzoru z BMP konwertowanego.

Przykład gotowy w Atari BASIC (obraz dyskietki samouruchamialnej ATR):

Fort Quest 04-01 ‚2015 beta – Lower Level – Mirror GRAPH9 in work – Cell no 10/5

Przy zmianie wartości instrukcji SETCOLOR w linii 0 programu z 15 na 0 obrazek powinien być w odcieniach szarości. W przykładzie ATR obrazek jest w odcieniach czerwieni do złota lub tym podobne czerwonawo złote coś.

SETCOLOR 4,15,0 (odcień ustawiony w przykładowym programie)

SETCOLOR 4,0,1 (odcienie szarości)

SETCOLOR 4,3,0 (odcienie różu lub czerwieni charakterystyczne dla gier karcianych Artworx Strip Poker)

inne zestawy odcieni można sobie przeglądać samodzielnie zmieniając wartości w instrukcji SETCOLOR wg uznania.

Zadanie: znaleźć odcienie bursztynowe lub sepia.

[..]

Agent Marie El - Congratulations '2016
Agent Marie El – Congratulations ‚2016 Graph 9 Atari XL/XE – example of nice congratulations…

Agent Marie El – Congratulations ‚2016 .ATR


GRATULACJE !

Podstawy trybu graficznego 9 Atari XL/XE opanowane. Można robić filmy AVI i Matrixy VR with DejaVu Multiplayer in realtime… – online with Google MAPs support if needed…

Przykłady wkrótce…

Smaku DS`. Knight Congratulations Warsaw Poland (EU) '2005
Smaku DS`. Knight Congratulations Warsaw Poland (EU) ‚2005 – Green Dragon Beast Draconus – Matrix Version – Graph 9 Atari XL/XE

Smaku DS`. Knight ‚2005 Satan Golden Version – Congratulations ‚2016.ATR

[niebieskie odcienie przy ustawieniu odpowiednich wartości instrukcji SETCOLOR w linii 0 programu realizuje wersję Blue Beast Draconaut, itp. etc. – można eksperymentować zgodnie z własnymi pomysłami oraz specyfikacją trybu GRAPH9 Atari XL/XE z uwzględnieniem technik graficznych i sprzętowo–programowych pozostałych]

Przy hurtowym wrzuceniu zestawu plików BMP konwertowanych instream przez konwerter BMP2GRAPH9 na dyskietkę do plików numerowanych w łańcuchu kolejnych grafik, można szybko i prosto uzyskać dowolnej długości czasu trwania filmy 8, 16 lub nawet 25 klatek na sekundę dla filmów w sensownej rozdzielczości bloku animowanego.

Przykłady gotowe wkrótce…

DS`.

FEB.20.2016.