Komentowana treść: Demo effects on the classic Amiga - seminarium
[#1] Re: Demo effects on the classic Amiga - seminarium
Dobre!
Mimo ucięcia przy omawianiu blittera jest to b.ciekawy materiał i ja się dużo dowiedziałem
o demkach' które znam od lat. Dobrze znać szczegóły techniczne bo wizualnie nie zawsze dany efekt jest
ładny, a dopytać nie ma kogo.
Proponuję zrobić tłumaczenie i podlinkować do działu początkujących.
[#2] Re: Demo effects on the classic Amiga - seminarium
Też z chęcią bym łyknął tłumaczenie!
[#3] Re: Demo effects on the classic Amiga - seminarium

@Mikrobi, post #1

Dobrze znać szczegóły techniczne bo wizualnie nie zawsze dany efekt jest
ładny, a dopytać nie ma kogo.

W zrozumieniu tych rzeczy może pomóc świetny kurs Photona/SCX na YT (AHP - jak zwykle polecam), tam podane są podstawy, a tutaj sposób ich wykorzystania.

Dzięki za podlinkowanie wykładu, fajny materiał i dobrze, że doczekał się publikacji.
[#4] Re: Demo effects on the classic Amiga - seminarium

@sachy, post #3

Dzięki.
To chodzi o ten kurs asemblera ?
[#5] Re: Demo effects on the classic Amiga - seminarium

@Mikrobi, post #4

@Mikrobi: to nie kurs asemblera, a kurs programowania hardware Amigi (www.youtube.com/user/ScoopexUs). Kursów do nauki asembera m68k jest sporo (Asman też zaczął na PPA) i można korzystać nawet z tych dotyczących Atari ST (czy Apple Macintosh), bo proc jest ten sam. Zauważ, że Blueberry w trakcie swojego wykładu nie tłumaczy nic jak działa sam CPU, a właśnie jak działa HW i Custom Chips, bo to jest istotne. Photon z kolei sporo wyjaśnia również jak działa procesor, więc od tego kursu polecał bym zacząć.
[#6] Re: Demo effects on the classic Amiga - seminarium

@sachy, post #5

jak działa HW i Custom Chips, bo to jest istotne.

OK

Dokładnie to jest istotne w amigowych demach, jeśli sprowadzimy demo tylko do operacji na procesorze i równie dobrze można by je odpalić na Atari ST, Macu czy innym komputerze który korzysta z tego samego procesora, po co w ogóle wtedy bawić się w "platformy" demoscenowe skoro i tak o wszystkim decyduje wspólny procesor i te platformy nie mają żadnej unikalności?

To właśnie korzystanie z amigowych custom chips nadaje sens demom na Amigę, sprawia że ta platforma jest unikalna. Dlatego stawiam tezę, że demo które jest odpalone na Amidze, ale wszystko i tak liczy się procesorem nie jest demem amigowym tylko uniwersalnym. To że jego twórca akurat pod ręką miał Amigę i na niej sobie ten kod na procesor napisał jest rzeczą wtórną.
[#7] Re: Demo effects on the classic Amiga - seminarium

@jubi, post #6

Dlatego stawiam tezę, że demo które jest odpalone na Amidze, ale wszystko i tak liczy się procesorem nie jest demem amigowym


Co jest "prawdziwą Amigą" już ustaliliśmy, teraz czas na debatę czym jest "prawdziwe demo amigowe", ordnung musi być. wariat?

START!

.
[#8] Re: Demo effects on the classic Amiga - seminarium

@jubi, post #6

To właśnie korzystanie z amigowych custom chips nadaje sens demom na Amigę, sprawia że ta platforma jest unikalna. Dlatego stawiam tezę, że demo które jest odpalone na Amidze, ale wszystko i tak liczy się procesorem nie jest demem amigowym tylko uniwersalnym. To że jego twórca akurat pod ręką miał Amigę i na niej sobie ten kod na procesor napisał jest rzeczą wtórną.

Bardzo słuszna uwaga. Faktycznie dema na prawdziwą Amigę nie korzystają z jej "prawdziwości". Mam wrażenie, że korzystanie z unikalnych układów klasycznej Amigi stało się w pewnym momencie wręcz wstydliwe. Za to standardem stało się zmuszanie Amigi 68k to bycia takim bardzo słabym, starym pecetem na którym nie ma nic poza pamięcią i procesorem. No i potem musimy się zachwycać scenkami z kilkoma trójkątami na krzyż, teksturami 16x16 pixeli i brakiem korekcji perspektywy. Nie jestem przekonany czy o to chodzi w demach dla Amigi 68k z OCS/ECS/AGA.

Scena niby miała wyciskać wszystko ze sprzętu. A tu tak trochę średnio widać to wyciskanie skoro takie fajne koprocesory graficzne podczas działania dema leżą i się nudzą. :) W zamian mamy przed demem uwagę, że "zalecany procesor 060 albo szybszy". szeroki uśmiech

Ostatnia aktualizacja: 27.04.2016 16:39:12 przez MDW
[#9] Re: Demo effects on the classic Amiga - seminarium

@MDW, post #8

Bo w pewnym momencie (tak od 030 z FASTem w górę) okazuje się, że szybciej, łatwiej i wygodniej jest zrobić wszystko procesorem. Czy to wina scenowców, że "prawdziwa Amiga" obraziła się, upadła i przestała robić nowe, jeszcze lepsze custom chipy? Nie. Czy zmusisz scenowców, żeby kodowali scrollery pod A500 +512 SLOW? Nie. No to o co chodzi? O dym. Jak zwykle.
[#10] Re: Demo effects on the classic Amiga - seminarium

@recedent, post #9

A nie można jakoś dodatkowo wykorzystywać mocy układów specjalizowanych? Na C64 wykorzystuje się procesor stacji dysków. szeroki uśmiech Prawdę mówiąc od Amigi 68k+AGA nie oczekuję "festiwalu scenek". To prawie zawsze wychodzi brzydkie. Nie wiem po co w to iść.
[#11] Re: Demo effects on the classic Amiga - seminarium

@MDW, post #10

Np gdyby procesorem w 3d wyliczyć se np obiekt np jakiegoś małego owada, ptaka, mrówke, człowieka tak 64x64 max 128x128 pixeli

Potem sprzetowo go juz powielać przez kopiowanie klatki blitteremm po na całym ekranie tak by powstał rój stworków. ?

jak dobrze kojaże można by jescze je wyginać spezetowo .... przesuwac palety itd.

cos takiego ci chodziło ?

Bo widziałem fajne efekty robione custom chipami na statycznych grafikach ...
zaś na takich dynamicznie liczonych nie kojaże .... chociaż pewnie było , jak spałem ;)
[#12] Re: Demo effects on the classic Amiga - seminarium

@dzordan, post #11

Powielanie wyglądałoby trochę "średnio". W 3D jest perspektywa i w różmych miejscach ekranu taki obiekt widać z trochę innej strony. Nie da się użyć tej samej bitmapki. :)

Generalnie ja bym się nie silił na Amidze 68k+AGA na jakieś wielkie 3D. Cokolwiek się zrobi to zawsze wygląda tak sobie. To ciśnienie na "festiwal scenek" jest swego rodzaju leczeniem odwiecznego amigowego kompleksu 3D. Popatrzmy na scenę grzybową. Tam już wyrośli z "festiwalu scenek". Pokazanie bandy trójkątów wczytanych z pliku w czasach gier za setki milionów dolarów już nie rzuca na kolana. Od dem raczej oczekuje się czegoś bardziej twórczego, pomysłowego. I to w wielu pecetowych produkcjach widać. Amiga Classic ciągle leczy kompleks scenek. szeroki uśmiech

Ostatnia aktualizacja: 27.04.2016 23:15:37 przez MDW
[#13] Re: Demo effects on the classic Amiga - seminarium

@MDW, post #12

Amiga Classic ciągle leczy kompleks scenek.


E tam, gadasz

Elude - Serenity: https://www.youtube.com/watch?v=5mBG50C8q-c

Spaceballs - Dataskull: https://www.youtube.com/watch?v=T9rI__Gz-ak

Traction - Swookie: https://www.youtube.com/watch?v=mXbneZhrJvw
[#14] Re: Demo effects on the classic Amiga - seminarium

@dzordan, post #11

Mozna zrobic tak jak piszesz ale nie ma sensu potem uzywac blittera do powielania tego na ekranie skoro procesor zrobi to o wiele szybciej. Moze nie dla robali ale robilismy takie cos dla powielania szescianow (w Dust np). Do tego przy uzyciu procesora mozna wstepnie zoptymalizowac bitmape tak zeby rysowanie przezroczystych obiektow bylo szybsze.
[#15] Re: Demo effects on the classic Amiga - seminarium

@MDW, post #12

"Powielanie wyglądałoby trochę "średnio". W 3D jest perspektywa i w różmych miejscach ekranu taki obiekt widać z trochę innej strony. Nie da się użyć tej samej bitmapki. :)"

Jezeli obiekt jest dostatecznie maly, jest dostatecznie daleko a kamera porusza sie relatywnie malo to mozna to robic jak najbardziej. Co wiecej, robi się tak nawet dziaiaj na pc/konsolach (nie dokladnie tak jak tutaj opisane ale chodzi o samo renderowanie do bitmapy i potem wyswietlanie tego albo na przestrzeni kilku klatek albo powielajac). Na amidze dodatkowo pomaga niska rozdzielczosc.
[#16] Re: Demo effects on the classic Amiga - seminarium

@kiero, post #15

W sumie racja. Często bardzo oddalony obiekt ma wielkość jednego czy czterech pixeli. Wtedy w ogóle można postawić w tym miejscu pixel koloru przybliżonego do średniego koloru tekstury. szeroki uśmiech To taka hardcorowa postać classicowego LODa (level of detail). szeroki uśmiech
[#17] Re: Demo effects on the classic Amiga - seminarium

@MDW, post #12

To ciśnienie na "festiwal scenek" jest swego rodzaju leczeniem odwiecznego amigowego kompleksu 3D.

Coś w tym jest, pamiętam że już w czasach 486 pecetowcy widzący amigowe scenki 3D w demach uśmiechali się z pobłażaniem. Znajomy scenowiec-koder który właśnie na 486 działał, oglądał wtedy u mnie dema amigowe tak się właśnie uśmiechnął i stwierdził że design ładny, ale te obiekty to straszna "rzadzizna", chodziło oczywiście o małą ilość trójkątów.

Dema i demoscena spełniały ówcześnie wiele różnych funkcji, jedną z nich było podkreślenie dumy z posiadanej platformy, chcęć chwalenia się jej możliwościami przed posiadaczami innych komputerów. O ile zarówno dema na A500 jak i dema na MC68060 pokazują kunszt kodera, to dema na A500 korzystające z mocy amigowego chipsetu pokazują także możliwości Amigi. Ten drugi rodzaj dem pokazuje jedynie możliwości procesora MC68060, który można zamontować choćby i w Atari Falcon (CT60). Dlatego bardziej pasuje do nich określenie "dema na MC68k" niż dema na Amigę, bo to że są odpalane akurat na Amidze jest kwestią drugorzędną.
[#18] Re: Demo effects on the classic Amiga - seminarium

@jubi, post #17

Zgadzam się z tym rozgraniczeniem. Wykorzystanie akceleracji jaką dają koprocesory Amigi jest nie do przecenienia. Procesor nawet MC68060 o ile wykonuje zadania szybko, bez koprocesorów nie zdziałałby zbyt wiele. To, że dźwięk, obraz wideo, bitplany, duszki idą przez DMA jest najwspanialszą właściwością Amigi.

Przecież to jest najistotniejsze w Amidze, że np. scroll ekranu nie wymaga kopiowania grafiki, odtwarzanie dźwięku nie zajmuje w ogóle czasu procesora, obsługa wideo również nie zajmuje w ogóle czasu procesora, synchronizacją zajmuje się główny koprocesor wideo ogólnego przeznaczenia, czyli Copper. Blitter korzysta z przetwarzania potokowego (pipeline), więc może wykonywać kilka czynności na raz (rysowanie, wypełnianie, praca na 3 kanałach źródłowych).

Dzięki temu procesor może zajmować się właściwymi obliczeniami. W pewnych przypadkach, jeśli obraz wideo wymaga ingerencji procesora można zastosować przerwanie Coppera. Umiejętność wykorzystania potencjału Amigi i jej podzespołów uważam za najważniejszą rzecz przy pisaniu oprogramowania na Amigę.

Procesor może zajmować się jakimiś obliczeniami na grafice w pamięci FAST typu mapowanie tekstur, a następnie kopiować do pamięci graficznej Amigi. Możliwe jest to też w przerwaniu Coppera na przykład celem synchronizacji z obrazem. Nie narzucono tutaj żadnego ograniczenia przez konstruktorów.

Wiadome jest, że bezpośredni port gry z PC + konwersja pikseli może nie być zadowalająca. Żeby uzyskać zadowalający efekt trzeba trochę pracy, wiedzy nt. Amigi i sporych umiejętności (szczególnie znajomości asemblera).

Nawet w dokumentacji wielokrotnie podkreśla się, że inne źródła obrazu z Amigi są "non Amiga display device". Jednoznacznie wiemy dzięki temu, że Amiga to przede wszystkim OCS i następne generacje układów, czyli ECS oraz AGA.

Amiga została stworzona jako wspaniały komputer, który sprawdził się zarówno w dziedzinie rozrywki (gry), jak i bardziej poważnych zastosowaniach (programy). Workbench najlepiej sprawdza się w 4-16 kolorach, ale to nie jest ograniczenie sprzętowe, tylko zastosowany mechanizm współbieżności.

To właśnie dzięki przecudownej, kolorowej grafice zakochałem się w Amidze. Amiga to dzieło bardzo dopracowane, wręcz idealne, bo nikt później nie wiedział jak rozwinąć ten genialny komputer, by był w zgodności z oryginałem i dotrzymywał tempa rynkowi. Sorki, ale tendencja typu port systemu operacyjnego na jakiś obcy komputer to nie dla mnie. Ja chciałbym, żeby Amiga OCS/ECS/AGA została zapamiętana, a nie wyrzucona na śmietnik historii.
[#19] Re: Demo effects on the classic Amiga - seminarium

@Hexmage960, post #18

Hurraaa! Wiemy już, że "amigowym oprogramowaniem" można nazwać wyłącznie te programy/gry/dema, które korzystają z max MC68000 i przynajmniej jednego układu specjalizowanego. A może dałoby się jeszcze jakoś ograniczyć dziedzinę "prawdziwej amigowości"?

@jubi: Proponuję, żebyś w ramach prawdziwej amigowości liczył scenki tylko na MC68000 (oczywiście z wykorzystaniem pełnej przepustowości DMA, mocy Coppera, szybkości Blittera, kunsztu Pauli etc.).

@Hexmage: Kłopot w tym, że tak "idealnie spasowana" to jest stockowa A1000/A500/A2000. Przy "wyższych" modelach, albo szybszym procesorze zaczyna się kłopot. Bo jak pogonisz tutaj, to gdzie indziej zaczyna brakować. Jak dasz tu trochę szybciej taktowane, to tam się rozjeżdża. A i kompatybilność wsteczna zaczyna trzeszczeć niemiłosiernie.
[#20] Re: Demo effects on the classic Amiga - seminarium

@kiero, post #14

a domyslasz sie dlaczego w tej grze w tym miejscu jest az 77 kolorów ?


można zmieniac cała palete co linie czy pare ekranów otworzyli ?
myslałem ze to tryb ehb .... ale wtedy kolorów powinno byc max 64 ....

w paruu innych mejscach też mi cos śmierdzi i wyglada na wiecej kolorów niz powinno być w teori....
Na CRT tego az tak nie było widać jakoś.....

Ostatnia aktualizacja: 28.04.2016 16:28:32 przez dzordan
[#21] Re: Demo effects on the classic Amiga - seminarium

@jubi, post #6

mi sie wydaje ze to juiz kwestia tego co bardziej jara kodera dema.
Czy barziej hardware jako taki, czy bardziej skupia sie na algorytmie jednak.
czy umysł matematyczny czy elektroniczny/ fizyczny.

Więc to bardziej efekt uboczny zinteresowań i nawyków poprostu.

Jak ktos idzie od pomysłui matematyki to bedzie raczej szedl w strone procesora mi sie wydaje... zwykle sa to ludzie mega inteligentni i mega heh wizjonerzy uporzadkowani solidni typowe mózgi itd...


A jak ktoś bardziej mysli od strony sprzetu najpierw, a pomysł jest rzecza wtórna to wtedy dopiero świetnie wykorzysta hardware a nawet to że własciwośi ukladów zmieniaja sie pod wplywem temperatury :P
To trzeba jednak być troche wariatem jak nicola Tesla
[#22] Re: Demo effects on the classic Amiga - seminarium

@dzordan, post #20

a domyslasz sie dlaczego w tej grze w tym miejscu jest az 77 kolorów ?
można zmieniac cała palete co linie czy pare ekranów otworzyli


Mi to wygląda właśnie na podmianę palety copperem co N-tą linię. Jest to stosunkowo często stosowany i prosty patent na A500, w demach również.

Ostatnia aktualizacja: 28.04.2016 19:42:48 przez slay
[#23] Re: Demo effects on the classic Amiga - seminarium

@slay, post #22

DObra jesli jest tak jak mówisz to ja mam kolejne pytanie...(celowo o to zaptalem z tym wlasnie przykładem)

Czy dało by sie czysto hipotetycznie na AGA podmieniać cala palete co linie ? :D czy to za cieżkie obciązenie dla kompa by było ?

podejrzewam że nie jest to możliwe ;) Bo wtedy by ktoś zrobił tryb 24bit rgb w rodziałce 256x256 juz dawno temu...Bo majac na obrazku gradient mozna by wyświetlic cokolwiek..... bo taka paleta to poprostu cala linia obrazu :P

dobrze mi sie zdaje IMPOSSIBLE?
Czy nikt nie był tak szalony i nie sprawdzil OK ... w co wątpie ;)
[#24] Re: Demo effects on the classic Amiga - seminarium

@dzordan, post #23

Podejrzewam że nie wyglądałoby to lepiej niż łatwiejsze do uzyskania 512x256 w HAM8. A zajmuje dokładnie tyle samo miejsca.
[#25] Re: Demo effects on the classic Amiga - seminarium

@dzordan, post #23

Nie da rady, copper daje radę chyba wymienić koło 60 kolorów na linię z palety Amigi 500, czyli 4096 (tutaj o kilkanaście kolorów mogłem się pomylić), a do tego nie możesz zmienić koloru, który jeszcze się nie wyświetlił w danej linii, więc trzeba kombinować. Żeby zmienić z palety 24bit, trzeba jeszcze przełączać banki, co ograniczy liczbę zmian do max. 20 (tutaj również mogłem się dość grubo pomylić).
Gdyby było inaczej, można by prosto zrobić porządny c2p na Copperze.
[#26] Re: Demo effects on the classic Amiga - seminarium

@flops, post #25

A mnie wczoraj zaciekawił taki oto fragment dokumentacji do programu MagiC64 - emulatora C64 dla Amigi:

Another goal during the development of MagiC64 was a good speed of the emulation. That is why MagiC64 has very fast optimized graphic functions for both bitplane and chunky modes. There is no conversion from chunky to planar, which results in a dramatically improved graphics performance.

Napisane jest w nim, że program nie używa konwersji chunky to planar. Pytanie - jak to jest możliwe? Z autorem chyba już nie ma kontaktu (mam zarejestrowaną wersję programu), więc raczej nie uda mi się zapytać u źródła.
[#27] Re: Demo effects on the classic Amiga - seminarium

@slay, post #13

Dzięki za przykłady - bardzo fajne!
Pamiętam że serenity oglądałem na 060@60 i było za wolne
(Wersja yt jest szybka jak należy.)
Dla mnie najlepszym przykładem na układy spec jest kalkulator ti92.
Ma Motorolę jak a500 a wyplotowanie funkcji trwa kilkadziesiąt sekund...
Pozdr
[#28] Re: Demo effects on the classic Amiga - seminarium

@MDW, post #8

niestety, albo stety zgadzam się z tym w całej rozciągłości. nigdy nie rozumiałem i nie zrozumiem (nie chcę) dem na 060. zacząłem zabawę w amigowe demoscenowanie bo robienie dem zawsze wiązało się dla mnie z wyciskaniem maksa z ograniczonego sprzętu a nie dodawanie szybszych procesorów. na serio te dema na 060 nie różnią się niczym od dem na pc i mogły by być pisane na amidze, pc 486, albo innym atari flakonie - vide "Starstruck" TBLa.
sorry nike mine die przekona że robienie dem na 060, budowanie 3D enginów i tym podobnych efektów ma na amidze sens.
wolę obejrzeć po raz 1000 fajnie przemyślany efekt na copperze czy bliterze niż po raz kolejny teledysk złożony ze scen 3D.
... tak wiem jak to zabrzmi.

ale wiecie... ja przybywam ze sceny C64. tam od zawsze demo musiało działać na 64kb i szeregowej stacji 1541 (tutaj przypomina mi się moja dyskusja z Kiero na którymś party, który pytał dla czego dema na c64 tak długo trwają ;) ).
od jakiegoś czasu pojawiają się dema na rozszerzenie pamięci REU, ale tylko w formie ciekawostek. nikt nawet nie myśli o zmianie zasad (vide dyskusja na CSDB o tym co dodać do compo na tegorocznym X'16).
scena Amigi i scena Atari (8bit) poszły w innych kierunkach i IMO nie wyszły na tym za dobrze.
[#29] Re: Demo effects on the classic Amiga - seminarium

@retronav, post #28

(tutaj przypomina mi się moja dyskusja z Kiero na którymś party, który pytał dla czego dema na c64 tak długo trwają ;)


A dlaczego tyle trwają? ;)
[#30] Re: Demo effects on the classic Amiga - seminarium

@retronav, post #28

Ja np. nie przepadam za plastyką nowych dem chociażby TBL. Jako graficy - Ty oraz Slay powinniście doskonale rozumieć termin "plastyka".

W mojej prywatnej opinii np. efekt plazmy w Arte (druga część dema) bije na głowę wszystkie efekty 3D nowych dem.

Nawet efekty 3D w tym demie (na początku tunel, który ma piękne tekstury oraz pod koniec) również bardziej mi się podobają niż najbardziej "wyuzdane" efekty 3D wymagające sześćdziesiątki.

Jednym słowem uważam, że design mocno kuleje w nowych demach.

Nie wiem też dlaczego scenowcy nie piszą dem z założeniem uzyskania 50fps, nawet jeśli miałoby to okroić je z części efektów.
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