kategoria: AMOS
[#1] Agonia w AMOS-sie...
Straszne nieprzyjemnie zrobiło się ostatnio na forum w niektórych wątkach, wiec postanowiłem zrobić coś, co może chociaż na chwilę pozytywnie skupi nasze umysły na komputerze, dla którego się tutaj schodzimy, a nie na wyżywaniu się w ten czy inny sposób.

ZbyniuR zamieścił newsa o powstającym porcie amigowej Agony na jakieś mało znane mi ustrojstwo, ale mniejsza z nim (ustrojstwem, nie ZbyniemR ). Naszło mnie, żeby sprawdzić, jak by sobie poradził AMOS z taką ilością grafiki na ekranie. Wiedziałem, że dobrze nie będzie, ale zgadywanie mało mnie satysfakcjonuje, więc postanowiłem na szybko sklecić kod i zobaczyć efekt. Przy czym zaznaczam: To nie jest gra. To nawet gry nie udaje. Nie ma tam latających przeciwników, żadnego dodatkowego liczenia i tym podobnych. Grafika jest przygotowana pobieżnie i wyrywkowo. Ilość kolorów 32 (przy czym nie jest to paleta oryginalna, bo tam programista zastosował kilka trików, no i tryb EHB). To zwykły kilkuplanowy scrolling i parę animacji i liczenie klatek na sekundę. Ot, luźny i szybki eksperyment, który zrobiłem przede wszystkim dla siebie, ale skoro już zrobiłem, to pomyślałem, że podzielę się z resztą.
Jak wielka jest to agonia, oceńcie sami i skomentujcie. Ale proszę - konstruktywnie. Aha, jeśli ktoś byłby tak życzliwy i zamieścił na jutubie wideo dla tych, którzy nie mają ochoty/możliwości odpalić tego eksperymentu, to będę wdzięczny.

Przed uruchomieniem należy zrobić assign agony: "" do katalogu, gdzie zostanie rozpakowane archiwum agonia.lha
[#2] Re: Agonia w AMOS-sie...

@Umpal, post #1

Odpaliłem i działa, szybkość spada do 10 klatek na 060, i trzeba sobie assigna machnąć bo nie zadziała :)
[#3] Re: Agonia w AMOS-sie...

@QUAD, post #2

Machnąłem Assign, odpaliłem z ikony i tylko jakiś ekran mi mignął i wróciło do WB.

Odpalając z shella też tylko mignie ekran i zwraca komunikat: "Najwyższy dopuszczalny kod błędu: 20"

Ofcoz Failat 21 daje tylko taką różnicę, że po mignięciu ekranu nie ma komunikatu błędu.

Emulowana A1200/030 z fastem bez fpu, zaznaczone more compatible bez JITa

edit------------------

Zmieniłem z3fast na fast, poszło :)

fps przy braku drzew itp to 25, z drzewami to 10-11


edit2------
Cpu emulation speed: Approximate A500/A1200 or cycle-exact

Jak wielka jest to agonia, oceńcie sami i skomentujcie. Ale proszę - konstruktywnie.


Agonia to prędkość, ale i tak na Amosa to fajnie wygląda, no i plik wykonywalny tylko 14kb, skąd wziałęś te iff'y co z katalogu? I czy można prosić o listing? :P

Ostatnia aktualizacja: 11.03.2017 08:18:58 przez agrajek
[#4] Re: Agonia w AMOS-sie...

@QUAD, post #2

muszę przepalić na A1200 ACA 1233/40 i napiszę co i jak :)

Sprawdzone i jest tak samo jak na A4K/060,działa identycznie i zwalnia do 10 klatek :)

Ostatnia aktualizacja: 11.03.2017 09:04:12 przez QUAD
[wyróżniony] [#5] Re: Agonia w AMOS-sie...

@Umpal, post #1

Straszne nieprzyjemnie zrobiło się ostatnio na forum w niektórych wątkach, wiec postanowiłem zrobić coś, co może chociaż na chwilę pozytywnie skupi nasze umysły na komputerze, dla którego się tutaj schodzimy, a nie na wyżywaniu się w ten czy inny sposób.

Nie miałem styczności z neo OSami, ale w tym muszę przyznać Ci rację.
Nie wiem co się dzieje, jakieś zwiększone promieniowanie kosmiczne, że ludziska niczym dzikie zwierzęta skaczą sobie do gardeł.
ppa.pl zawsze wydawał mi się wzorem przyjaznego forum, a tu takie cyrki.
Żeby to jeszcze świeżaki nie trzymali poziomu, ale starzy userzy też swoje dokładają :(

Ostatnia aktualizacja: 11.03.2017 10:06:35 przez movin
[#6] Re: Agonia w AMOS-sie...

@Umpal, post #1

Sporo sztuczek z oryginału można zrobić w amosie. Pierwsza rzecz do dual playfield. Druga rzecz to rainbow. Zauważ, że w Agony elementy grafiki mają maks. 8 kolorów. Więcej klatek nie uzyskasz, bo blitter nie wyrobi i cpu nie ma tu znaczenia. Mniej planów = mniej roboty dla blittera.
[#7] Re: Agonia w AMOS-sie...

@Umpal, post #1

Nagralem ci Filmik

Jak animujesz sowe i wode? Bo jesli nie w AMALu to lepiej go uzyc bo jest sporo szybszy.

No i mamy kolejny projekt na Retrokomp OK
[#8] Re: Agonia w AMOS-sie...

@agrajek, post #3

Grafikę z gry znalazłem w necie, ale to nie były iffy, więc musiałem przerabiać sporo żeby się to nadawało do Amigi. Stąd też wygląda to, jak wygląda. Ale nie o piękno grafiki w tym chodziło, lecz o "chodzenie", czyli działanie.
Listingu nie zamieszczę, ale napiszę, jak to zrobiłem, bo kod jest prosty, jak budowa cepa (literalnie zajęło mi to parę minut): Ładuję grafikę, tworzę Boby, Otwieram ekran z podwójnym buforowaniem (tryb manualny, czyli Autoback 0) i tworzę scenę na logicznym a następnie zamieniam z fizycznym. Wszystko rysowane jest tradycyjnie, bez udziału AMAL-a (który ma u mnie złą opinię po dogłębnych testach jakiś czas temu). Tło wklejam co klatkę i to samo z drugim planem przesuniętym w osi X o piksel. Pierwszy scroll idzie co 3 piksele, ale wyświetlany jest co parzysty przesuw całości. Woda i sowa rysowane są co klatkę, stąd zwolnienie wszystkiego przy spadku fps'ów.

Sprawdzone i jest tak samo jak na A4K/060,działa identycznie i zwalnia do 10 klatek :)

Jak napisał cholok, szybszy procesor niewiele tu zmienia (maks. 3 klatki), bo po prostu blitter jest za słaby (dodatkowo interpretacja AMOS-a, choć naprawdę dobra, też dodaje swoje "trzy grosze").

@cholok, wiem, że oryginalna gra jest na dual playfield'zie. (jest bardzo fajna strona, na której grafik biorący udział w powstawaniu gry opisał dosyć szczegółowo, jak osiągnęli finalny efekt). W moim eksperymencie nie chciałem tworzyć kalki gry, bo szkoda mi czasu na coś, czego i tak nie będę rozwijał (nie lubię za bardzo platformówek, a tym bardziej ich tworzenia). Chciałem zarzucić procesory typowym liczeniem i wyświetlaniem pikseli i zobaczyć moc przerobową. Z ciekawości zmieniłem ekran na 16 i 8 kolorów i oczywiście przyśpieszenie jest ogromne - 100% w przypadku 8 kolorów. Gdyby ktoś miał ochotę przetestować, to jest tutaj. (Kolory oczywiście będą koszmarne, bo grafika pozostaje wciąż ta sama)
Sporo sztuczek z oryginału można zrobić w amosie.

Z tym się zgadzam - sporo, ale nie wszystkie (szczególnie po lekturze wspomnianego artykułu)
AMOS daje zadziwiające możliwości, ale trzeba go dobrze poznać i cierpliwie "dziargać" kod aż do najlepszego efektu. Różnego rodzaju eksperymenty są do tego niezbędne. Stosując wszystkie zaawansowane sztuczki można uzyskać efekt bardzo podobny do Agony.

@Sordan, dzięki za wrzucenie filmu. Myślę też, że odpowiedziałem wyżej na twoje pytanie.
No i mamy kolejny projekt na Retrokomp OK

To, czego Amiga potrzebuje, to nie kolejnego projektu, a ukończenia obecnych OK

[Update]
Postanowiłem odnieść się nieco bardziej rzeczowo do AMAL-a. Ma u mnie mieszane uczucia. Oczywiście w przypadku Agony sowa musiałaby być animowana w AMAL-u, nie inaczej. Ale jeśli ktoś poeksperymentuje z AMOS-em trochę bardziej, to zauważy, że Channel(s) odtwarzający kod AMAL-a wcale taki różowy nie jest i po prostu dławi się przy jednoczesnym rysowaniu blitterem innych rzeczy. Dlatego AMAL może jedynie wspomóc w niektórych przypadkach, ale musi być bardzo dokładnie kontrolowany, inaczej będą spowolnienia. Co ciekawe, te przycinki odbywają się czasami w niespodziewanym momencie, co dodatkowo doprowadza do białej gorączki, bo jest trudny do przewidzenia. Zresztą nawet twórca AMOS-a przyznał, że jest to język niedopracowany. Dlatego staram się unikać AMAL-a.

Ostatnia aktualizacja: 11.03.2017 18:27:42 przez Umpal
[#9] Re: Agonia w AMOS-sie...

@Umpal, post #8

niezłe, niezłe
tutaj jest strona link
gdzie koleżka rozbiera na czynniki pierwsze sprite'y i copper w najpopularniejszych grach.

Mi po głowie chodziło zrobienie tego co ty tylko w blitzu. tam jest trochę większa swoboda w dostępie do coppera i w ogóle do sprzętu. w ASMie w sumie można zacząć pisać w dowolnym momencie.

sprawdzę twój program. Zobaczę jak ci to wyszło (muszę zasiąść do amigi) a potem zerknę jak to zrobić w BB2.

BTW1: W Agony chyba nie ma dual playfieldu... background to 1 bitplan eden też idzie na deszcz, a 3 bitplany idą na główną grafikę (chyba). bardzo mocno są też sprite'y używane

btw2: na EAB ktoś kiedyś zapostował implementcję tłą (1 bitplan + copper) zrobioną wBB2. i było to parę linijek kodu...
odkopię i się chyba pobawię w weekend.

[edit]
deszcz jest na spriteach... proponuje jednak ten artykół który podlinkowałem... sporo tam mięcha.

Ostatnia aktualizacja: 11.03.2017 18:31:56 przez retronav
[wyróżniony] [#10] Re: Agonia w AMOS-sie...

@Umpal, post #8

To, czego Amiga potrzebuje, to nie kolejnego projektu, a ukończenia obecnych OK


Spokojnie, Ci co cos robia to robia to po cichu i nic nie pokazuja (na przykad ja:)) zeby nie zapeszac i by niespodzianka byla wieksza jak od razu pokaza caly swoj owoc pracy w pazdziernikowym game compo w Gdansku. Jest Nas mega duzo na ppa wiec nic nie stoi na przeszkodzie by powstal kolejny projekt na nowa gre. Wystarczy, ze choc 1/10 ludzi zakochanych w watku `ciekawostki aukcyjne` (osobiscie dodalem watek do ignorowanych - serdecznie polecam) i zajmujacych sie tropieniem handlarzyn wrzuci na luz i zacznie dzialac i pyk od razu mamy 20 nowych gier na Amige wystawionych na Retrokompie OK
[#11] Re: Agonia w AMOS-sie...

@sordan, post #10

No i tak trzymaj OK. Też mam już dosyć wielu wątków na forum i również dałem ignorowanie niektórych, bo szkoda zdrowia i zapału. Trzymam kciuki za zaskakujące produkcje. Mniej pompy - więcej treści OK
[#12] Re: Agonia w AMOS-sie...

@retronav, post #9

Czytałem też ten artykuł. Bardzo ciekawie to zbadał i opisał. Gdyby ktoś się zabierał za zrobienie kalki gry informacja jak znalazł ok, racja
[#13] Re: Agonia w AMOS-sie...

@Umpal, post #1

Panowie ponawiam swoj apel!

Albo zaczniemy sie dzielic kodami zrodlowymi i wtedy ludzie z brakiem wiedzy szybko ja nabeda albo bedziemy nadal pokazywac swoje dziela w stylu "patrzcie i podziwiajcie".
Cebularze wprowadzili w nasze srodowisko wyscig szczurow i zazdrosc a wszyscy to niestety powielaja. Nie wiem czy na demoscenie tez to wystepuje ale nie jest to zachecajace dla nowych.
Jesli tworcy pojda caly czas ta sama droga, to dobrych produkcji mozemy sie spodziewac za 15 - 20 lat, bo tyle mniej wiecej trwa nauka programowania zeby osiagnac wysoki poziom wtajemniczenia.
Ubolewam nad tym, ze bardzo zdolni tworcy np. na AMOS Factory przyjeli wlasnie ta taktyke "pokazac ale sie nie dzielic z innymi", dlatego ogolnie slabo z tym amosowym devem.
Na kodach zrodlowych, czlowiek uczy sie 10 razy szybciej niz metoda wynajdywania kola na nowo.
Przemyslcie wiec sprawe, komu sie tak naprawde oplaca to "kiszenie" wszystkiego.

OK
[#14] Re: Agonia w AMOS-sie...

@retronav, post #9

BTW1: W Agony chyba nie ma dual playfieldu...

Przeczytaj drugie zdanie ze strony, do której podałeś link,
[#15] Re: Agonia w AMOS-sie...

@selur, post #13

Masz rację, ale to nie dotyczy tylko środowiska Amigi - tak się dzieje również w innych kręgach. Odwiedzam różne fora programowania (w różnych językach) i nigdzie nie spotykam się z zamieszczaniem kodu na prośbę. Ludzie pomagają, jak najbardziej, ale nie podają gotowego rozwiązania dopóty, dopóki nie zobaczą, że szukający porady sam też się wysila (choć i nawet w takich sytuacjach jest to bardziej pomoc teoretyczna niż praktyczna, do tego w małej skali). Ja też przez to przeszedłem i na własnej skórze przekonałem się, że gotowego torta nikt nie poda. Kiedyś zwróciłem się do AMOS-owego guru, takiego prawdziwego, bez ironii. Pomyślałem, że po co mam wynajdywać koło na nowo, skoro ktoś już przetarł szlaki. Nie dostałem nawet odpowiedzi . Pomyślałem: 'Dobra, pies cię gryzł. Nie, to sam się nauczę'. U nas na forum w kwestii programowania jest podobnie i nie dotyczy to tylko AMOS-a. Śledząc wątki, w których ktoś szuka porady można zauważyć, że odpowiedź rodzi się czasami w bólu, a i tak ostatecznie autor wątku odpisuje 'dobra, już sobie z tym poradziłem'.

Ale żeby nie stanąć na niczym, bo to wszystko już przecież wiemy. Jestem za pomocą, bardzo chętnie nawet. Tylko nie jestem za zamieszczaniem gotowego rozwiązania, bo jeśli ktoś nie rozumie jak powstał prosty efekt, to jak będzie w stanie zrobić z tego coś bardziej zaawansowanego? Trochę to przypomina Amitena, który pod każdym ciekawszym projektem żebrze o kod źródłowy. Nóż się otwiera. Chłop zna AMOS-a całkiem dobrze, a od wieków stoi w miejscu i czeka aż się samo zrobi. To nasuwa kolejny aspekt dzielenia się w ten sposób wiedzą: brak wdzięczności i skromności. Ludzie bardzo chętnie korzystają z cudzych rozwiązań, ale później taki nawet nie przyzna się, że cię zna i przypisze sobie całą zasługę. To sprawia, że człowiekowi najzwyczajniej przestaje się chcieć. Z drugiej zaś strony nie widzę za bardzo ludzi pytających, jak zrobić to, czy tamto w AMOS-ie, ani jak rozwiązać taki czy inny problem...
[#16] Re: Agonia w AMOS-sie...

@Umpal, post #15

W swiecie PC takie podejscie, to jak najbardziej norma, wiem o tym dobrze i tlumaczy to fakt, ze nawet deweloperzy indiegames sciagaja sie miedzy soba dla pieniedzy.
Na forach PC-towych jest tez nieporownywalnie duzo wiecej troli z podejsciem "wiem ale nie powiem" po to by zrobic na zlosc innym/zaszpanowac , takie typowo trolowe podejscie. Masa teoretykow z zerowym doswiadczeniem, tez jest tam na porzadku dziennym.

Ale w amigowaniu jest zupelnie inaczej np. AMOS, Blitz, Amiga E to przezytek, relikt przeszlosci i nikt na tym nie zrobi fortuny.
To jest jezyk, ktory zyje tylko dzieki Amidze i malej grupie dawnych basicowych/pascalowych programistow. Nikt sie juz tego, nigdy uczyc nie bedzie procz pewnej nielicznej grupki amigowcow. Bo tylko w amigowaniu ma to sens.
Mysle, ze w tak waskiej grupie jakakolwiek rywalizacja miedzy soba, to jednak rytualne samobojstwo a nie rozwoj.
Oczywiscie nie kazdy musi sie z tym zgadzac co mowie ale poki co nie jest dobrze. Jest zle. Szczegolnie widac to na AMOS Factory gdzie niektorzy dziergaja cos juz chyba 6 rok a nadal nie chca pokazac linijki kodu jakby to byl jakis nowy engine do Quake'a 5. Smutne ale prawdziwe.

Na szczescie powstaje ksiazka o AMOSIE/BLITZU/Amiga E, ktore ulatwia chetnym nauke aczkolwiek i tak bedzie to pomoc mala.
Bez pomagania sobie nawzajem te relikty przeszlosci przepadna. Niech wszyscy wezma to pod uwage...
[#17] Re: Agonia w AMOS-sie...

@selur, post #16

Zgadzam się z tym w pełni. Tylko żeby pomóc trzeba wiedzieć komu i w jaki sposób. Musiałaby się tutaj określić jakaś grupa ludzi, która np. 1) chce się nauczyć AMOS-a i potrafi coś programować, 2) chce się nauczyć, ale nie zna żadnego innego języka (ciężka sprawa w moich oczach, choć nie beznadziejna) i 3) pisze coś i potrzebuje porady żeby ulepszyć swoje produkcje czy rozwiązać jakiś napotkany problem. Wtedy człowiek wie mniej więcej, z czym ma do czynienia i jak się do tego ustosunkować.
[#18] Re: Agonia w AMOS-sie...

@Umpal, post #17

Chciałem zobaczyć listing z ciekawości, nie żeby na jego podstawie zrobić grę czy (jak to właśnie jest na forach pecetowych) uzyskać gotowca na zadanie z informatyki.

Nie ma potrzeby wiedzieć "komu i w jaki sposób" żeby wrzucić kawałek listingu.

Albo się wrzuca albo nie, wolna wola szeroki uśmiech
[#19] Re: Agonia w AMOS-sie...

@agrajek, post #18

Agrajku, spoko, rozumiem. Nikogo nie chciałem urazić moim komentarzem odnośnie żebrania o kod. Podałem jako przykład Amitena, ale wiem, że to skrajny przypadek i u nas na forum takich osób nie ma (nie trafiłem przynajmniej). Odniosłem się do sprawy ogólnie, bez przyklejania komukolwiek etykiety. Przyznaję, że mogło to zabrzmieć trochę surowo, ale nie mam skąpego nastawienia. Jak napisałem jestem bardzo chętny do pomocy, jeśli ktoś o nią poprosi ok, racja
Głupio się teraz czuję . W ramach "rekompensaty" jutro wrzucę kod na forum. I spokojnie, nie czuję wymuszenia - zrobię to z własnej woli i chęci. W sumie Selur ma rację. Jak będziemy tak kisić wszystko dla siebie, to nic się nie ruszy. Ktoś musi przerwać ten zaklęty krąg. Jeśli będę to ja, to czuję się zaszczycony i takie tam OK
[#20] Re: Agonia w AMOS-sie...

@Umpal, post #15

w sumie mialem tego nie pisac ale jednak...

Nie wiem do jakiego Amos'owego Guru sie zwracales ale daje wlasna glowe, ze Amiten nie jest tym prawdziwym.
Amiten to taki pseudo-programista gier, amosowy kuglarz-showman, owszem gosc ma bardzo duza wiedze ogolna i z pewnoscia duzo wie o Amosie ale do mentora mu daleko.
Wszystkie jego megaprodukcje: Amikill, Amivania, Parallel Worlds , Fish , Amikill , Spacer, czy ostatnio The Last Starfighter, to tylko takie polaczenie trikow z dobra muzyka i grafika najczesciej wzieta z innych gier. Nie ma tam zadnych cudow, zwykle procedury obslugi bob'ow w amalu i skrol sprzetowy ekranu. Takie sztuczki wizualne + pop******ki ale jak widac wiekszosc dala sie nabrac, bo kazdy mysli, ze to bog wie co jest i ludzie zachwycali sie jego zwiastunami. Kazdy ocenia po tym co widzi a nie po tym co jest w srodku, sek w tym, ze ta ocena ulegla by zmianie gdyby ktos zasiadl do takiej "gry" i pogral dluzszy czas. Amiten niczym nie imponuje a na dodatek, zywi sie tylko poklaskiem tlumu co jest juz irytujace.
Dobre to sa np. "The Game", teraz w produkcji "Ego Wings" czy beta procedurki takiego KievG, Booboo, ktorzy niestety wyznaja zasade, ze nie nalezy sie dzielic z innymi i to jest smutne.

Prawdziwa sztuka programowania jest zawarta w takich amosowych grach jak
JetFight, Genesia, Doman, Bloodfest, Scorched Tanks, Dogfight, seria Legions Of Dawn czy Relics Of Deldroneye.
Na nasze nieszczescie nie ma kodow zrodlowych do tych gier wiec nigdy sie nie dowiemy jak to konkretnie zostalo zrobione ale sytuacje ratuja nieco niedoceniane zrodlowki naszych rodzimych produkcji np. Astral, Rebel CD 32, Legion czy innych ktore sie pojawily wczesniej badz niedawno Knights, Renegades, Oblituette. Wbrew pozorom zawsze mozna tam znalezc cos ciekawego/nowego czego jeszcze nie znalismy.
Poki co trzeba korzystac choc z tego co jest dostepne i zachecac innych do udostepniania, wtedy moze sie zmieni na lepsze.

Ostatnia aktualizacja: 12.03.2017 03:57:50 przez selur
[#21] Re: Agonia w AMOS-sie...

@selur, post #20

Jakies tutoriale sa kodowania na amidze?
[#22] Re: Agonia w AMOS-sie...

@maka23111, post #21

na karte graficzna
[#23] Re: Agonia w AMOS-sie...

@selur, post #13

OK przejrzalem to Amosowe Agony i ... całkiem, całkiem fakt że wolno, ale zakładam że jest sporo miejsca do optymalizacji.

Co do dzielenia się kodem to wszystko co potrzebne już w sieci jest. Serio!
Jesli ktoś chce zacząć kodować dema, gry - wszystko jedno - musi mieć tylko cierpliwość.
Przywołam po raz kolejny mój przykład. chciałem zrobić intro na RKLE i zrobiłem. Małe, proste, ba nawet można powiedzieć lamerskie, ale zrobiłem od zera w ASM. Wiecie ile się do tego przygotowywałem i czytałm i szukałem, itp? 6 miesięcy. Ale wszystko znalazłem w sieci. Nawet gotowe fragmenty kodu do scrolla którego zrozumiałem i wplotłem w swój kod. trzeba tylko chcieć i być wytrwałym.

W tej chwili rozkminiam BBasic i wiecie co? Materiałów i miejsc w sieci też jest sporo Na tyle sporo aby zacząć robić nawet proste gierki. W przypadku BBasica to nawet w katalogu Examples jest tak dużo materiału że spokojnie po analizie tego też można przymierzyć się do gry.
Jedno zastrzeżenie. Trzeba pogodzić się że zrozumienie nowej technologii, języka, trików, itp zajmie czas. nie ma wyjścia. Dla tego uważam że dzielenie się kodem już gotowych dużych produkcji to nie najlepszy pomysł. Małe snippety tak, a tych jest w sieci MEGA dużo
Jeśli ktoś chce zacząć to polecam:

https://www.youtube.com/watch?v=p83QUZ1-P10&list=PLtjBEWQ66xeLEqAUssJEDQRV1cbQR2-xk
i na serio nawet jak ktoś uważa że kuma sprzęt amigi ale nigdy nie programował to niech to obejrzy - wszytko. to jest namiastka tego co będzie czekać kodera na A500-A1200.
i IMO assembler przynajmniej w podstawach trzeba znać.
Ja zanim napisałem swoje intro obejrzałem wszystkie odcinki.

http://eab.abime.net/forumdisplay.php?f=126
oraz
http://amigacoding.com/index.php/Main_Page

trzeba włożyć sporo pracy, cierpliwości, research'u bo od zera w miesiąc się produkcji nie zrobi.
a jeśli ktoś uważa że już jest gotów analizować kod prawie gotowy to od niedawna powstaje shmup (bullet hell) w BB:
http://eab.abime.net/showthread.php?t=85844

@Umpal
na koniec: Dobra robota i zgadzam się z Twoimi komentarzami. Trzeba rozumieć podstawy. aby iść dalej


Ostatnia aktualizacja: 12.03.2017 11:28:20 przez retronav
[#24] Re: Agonia w AMOS-sie...

@Umpal, post #15

Ale... zamiast pisać ścianę tekstów i zastanawiać się nad właściwym działaniem, nie lepiej po prostu w tym samym czasie wrzucić ten kod na jakieś repo/gist/pastebin i tyle?

U nas sami hobbyści, którzy prędzej czy później poczytać będą musieli, ale jak Selur mówi: jakikolwiek kod to zawsze kod. Przykładowo, w RKM jest pełno dziur, a o lepsze źródło przykładowego kodu ciężko bo... każdy pisze do szuflady.

I nie pisz, że nie ma osób pytających, bo może po prostu wyszli z założenia że nikt inny ich nie wesprze żadną radą, skoro niczym przez ten cały czas się nie dzieli. Fun fact: jestem na PPA ładnych parę lat i stosunkowo niedawno przy okazji dyskusji o HAM8 player i kompilatorach c++ zauważyłem że jesteś w jakiś sposób związany z programowaniem. Ciekawe ilu jeszcze takich tutaj mamy?
[#25] Re: Agonia w AMOS-sie...

@teh_KaiN, post #24

Cebularze wprowadzili w nasze srodowisko wyscig szczurow i zazdrosc a wszyscy to niestety powielaja. Nie wiem czy na demoscenie tez to wystepuje ale nie jest to zachecajace dla nowych.


Mimo, że jednym z głównych napędów demosceny jest rywalizacja (ale przyjacielska), to nie jest ona stawiana ponad koleżeństwo. Przykłady można mnożyć. Cahir udostępnił kody źródłowe do naszych obu ostatnich dem, poza tym prowadzi wykłady dla "adeptów programowania" i nie odmawia pomocy w kwestiach technicznych. Sachy prowadzi(ł) kurs asemblera na łamach Retrokompa, i to kurs konkretny (na bazie kursu Photona) skrojony pod kodowanie dem, a nie teoretyczny o "dupie maryni". Nawiasem, niedługo kurs ten znajdzie się na stronach Scena.PPA. Wielu koderów udostępnia też swoje "toolchainy" (Noname, Hannibal i inni), narzędzia (Blueberry), a nawet rozkłada na czynniki pierwsze swoje efekty na blogu (Slummy).

Nie dziwię się również, że koderzy czasami niechętnie odpowiadają na pytania z cyklu "napisz mi jak to zrobiłeś, bo mi się nie chce myśleć". Co innego, gdy widać, że pytający wykazał nieco wysiłku i dotarł w swojej walce do ściany, wtedy najczęściej uzyska on pomoc, co pokazują koderskie wątki na ADA.

Poza tym, zgadzam się z Carrionem
[#26] Re: Agonia w AMOS-sie...

@maka23111, post #22

jesli pytasz o pisanie pod karte graficzna w Amosie, to tylko w kategoriach kiepskiego zartu
[#27] Re: Agonia w AMOS-sie...

@selur, post #26

nie w amosie, warp 3d .....juz troche poczytalem, mozna odswiezyc zwiekszyc zainteresowanie
[#28] Re: Agonia w AMOS-sie...

@Umpal, post #19

Obiecałem i spełniam. Ale jeszcze raz zacytuję, co napisałem w pierwszym poście, bo odnoszę wrażenie, że niektórzy myślą, że to gra:
To nie jest gra. To nawet gry nie udaje.

Z założenia miał to być typowy stress test. Doskonale rozumiem, że to powinno być inaczej zrobione, gdyby tylko był to zamiar stworzenia gry. Nie jest, nie był i nie będzie
Oglądajcie i pytajcie, jeśli jest o co pytać.

APPATH$="Agonia:"

For I=1 To 9
   N$=Str$(I)
   N$=Right$(N$,1)
   Load Iff APPATH$+"Gfx/owl_0"+N$+".iff",2
   Screen Hide 
   Get Bob 100+I,0,0 To 32,87
Next I
For I=10 To 16
   N$=Str$(I)
   N$=Right$(N$,2)
   Load Iff APPATH$+"Gfx/owl_"+N$+".iff",2
   Screen Hide 
   Get Bob 100+I,0,0 To 32,87
Next I

For I=1 To 9
   N$=Str$(I)
   N$=Right$(N$,1)
   Load Iff APPATH$+"Gfx/agony_water0"+N$+".iff",2
   Screen Hide 
   Get Bob 10+I,0,0 To 288,32
Next I
For I=10 To 12
   N$=Str$(I)
   N$=Right$(N$,2)
   Load Iff APPATH$+"Gfx/agony_water"+N$+".iff",2
   Screen Hide 
   Get Bob 10+I,0,0 To 288,32
Next I

Load Iff APPATH$+"Gfx/Agony_tree.iff",2
Get Bob 6,0,0 To 334,192

Load Iff APPATH$+"Gfx/Agony_net.iff",2
Get Bob 5,0,0 To 256,128

Load Iff APPATH$+"Gfx/Agony_tree2.iff",2
Get Bob 4,0,0 To 178,191

Load Iff APPATH$+"Gfx/Agony_tree3.iff",2
Get Bob 3,0,0 To 268,192

Load Iff APPATH$+"Gfx/Agony_bgnd2.iff",2
Get Block 1,0,0,288,192
Screen Hide 2

Screen Open 1,288,192,32,Lowres : Flash Off : Curs Off 
Screen Display 1,140,60,,

Get Palette 2

Double Buffer : Rem // Włącz podwójne buforowanie ekranu
Autoback 0 : Rem    // Przejdź na trym manualny (1= półautomatyczny, 2 = automatyczny)

T1=Timer : Rem     // Pobierz aktualny czas 
FPS=0 : Rem        // Wyzeruj licznik klatek/s 
X1=300: Rem        // Ustal pozycję tła w osi X
X2=320 : Rem       // Ustal pozycję pierwszego planu w osi X
WATER=10 : Rem     // Przypisz numer pierwszej klatki animacji wody
OWL=100 : Rem      // Przypisz numer pierwszej klatki animacji sowy
Ink 3 : Gr Writing 0 : Rem // Ustaw kolor nr 4 i wyłącz tło spod tekstu

Do : Rem // ...roboty! ;-)

   Inc FPS : Rem   // Zwiększ licznik klatek/s  
   T2=Timer : Rem  // Do obliczania czasu i wyliczania FPS 
   T3#=T2-T1 : Rem // Odejmij różnicę w czasie, jaki upłynął

   If A=0 : Rem // Jeśli nieparzysta zmień na następną klatkę animacji wody (co daje co 4 ramkę)
      Inc WATER : If WATER=23 : WATER=11 : End If 
   End If 

   Inc OWL : If OWL=117 : OWL=101 : End If : Rem // Zwiększ klatkę animacji sowy
   If X1=-160 : X1=300 : End If : Rem            // Jeśli tło wyszło poza ekran umieść je z powrotem
   X2=X2-3 : If X2<-735 Then X2=320 : Rem        // Przesuń pierwszy plan o 3 piksele

   If T3#=>50 : Rem      // Minęła sekunda, przekaż ilość klatek/s 
      F$=Str$(FPS) : Rem // Zamień liczbę na ciąg tekstowy
      T1=Timer : Rem     // Pobierz aktualny czas 
      FPS=0 : Rem        // Wyzeruj licznik klatek/s 
   End If 

   A=I mod 2=0 : Rem                  // Oblicz resztę z dzielenia... 
   If A=0 : Rem                       // ...jeśli nieparzysta  
      Put Block 1 : Rem               // Wstaw nieruchome tło
      Paste Bob X1,0,4 : Dec X1 : Rem // Drzewo w tle
      Paste Bob X2,64,5 : Rem         // Sieć rybacka
      Paste Bob 10,64,OWL : Rem       // Sowa
      Paste Bob X2+250,1,3 : Rem      // Koślawe drzewo na pierwszym planie 
      Paste Bob X2+400,0,6 : Rem      // Drzewo + łódź na pierwszym planie
      Paste Bob 0,160,WATER : Rem     // Fale
      Text 6,8,F$ : Rem               // Wyświetl FPS
      Screen Swap : Wait Vbl : Rem    // Zamień ekran logiczny z fizycznym i zaczekaj na ramkę
   Else : Rem      // ...jeśli parzysta
      Put Block 1 : Rem               // Wstaw nieruchome tło
      Paste Bob X1+1,0,4 : Rem        // Drzewo w tle 
      Paste Bob X2,64,5 : Rem         // Sieć rybacka
      Paste Bob 10,64,OWL : Rem       // Sowa
      Paste Bob X2+250,1,3 : Rem      // Koślawe drzewo na pierwszym planie 
      Paste Bob X2+400,0,6 : Rem      // Drzewo + łódź na pierwszym planie
      Paste Bob 0,160,WATER : Rem     // Fale
      Text 6,8,F$ : Rem               // Wyświetl FPS
      Screen Swap : Wait Vbl : Rem    // Zamień ekran logiczny z fizycznym i zaczekaj na ramkę
   End If 

Loop


Jak widać, główny kod znajduje się między Do i Loop. Jest tego niewiele, bo i działanie jest banalne. Ot, zwykłe przesuwanie obiektów na ekranie ze zmianą klatek w przypadku animacji.
[#29] Re: Agonia w AMOS-sie...

@Umpal, post #28

Odnośnie optymalizacji, choć bardziej by tu pasowało napisania Agony w Amosie od nowa, należałoby zastosować:
1. Dual Playfield
2. Odczyt bloków graficznych 32x32 lub 16x16, lub nawet 8x8 (żeby blitter nie musiał rysować za dużo, a liczy się każdy cykl)
3. Mądre rozplanowanie obiektów tak, aby nie pojawiało ich się zbyt wiele na raz na ekranie
4. Sprzętowe sprity (tak, jak to jest w oryginalnym Agony)
5. AMAL, ale z głową i tylko do niektórych rzeczy po bardzo dokładnych testach
6. Dużo cierpliwości i niezadowalania się byle czym

Tyle na początek OK
[#30] Re: Agonia w AMOS-sie...

@Umpal, post #1

Słabo to wygląda. Świetny dowód na to że AMOS nie nadaje się do robienia gier na amigę.
Na lepszych amigach czy nawet na 060 z kartą graficzną/blazewcp można się bawić w programowanie w stylu w jakim ta agonia została zrobiona.
Oczywiście pod warunkiem że poszczególne warstwy będą nakładane cpu a nie blitterem.
Ale na słabszych od 060 konfiguracjach to tylko mieszanie w rejestrach, sztuczki kruczki z sprite'ami, bitplanami i copperem.
Koniecznie w C lub assemblerze.
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem