OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 28.03.2024, 20:35

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 59 ]  Přejít na stránku Předchozí  1, 2, 3, 4  Další
Autor Zpráva
PříspěvekNapsal: 21.07.2022, 10:12 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Tak je celkem jasné, jaké má Pico možnosti.
Z paměti čteš 32 bitů současně a PIO z toho udělá 8 shifterů pro R3G3B2 výstup.
Jediné co s tím můžeš udělat přeházet význam těch bitů, takže když budeš vystupovat jako 8bodů x 4 plainy, tak je můžeš zakódovat do 16 barev, s omezeným výběrem (můžeš jen přiřadit ty 4 plain bity kombinaci 8 bitů RGB).
V paletě se dá realizovat logická funkce, třeba že 1 plain překrývá svojí barvou ostatní plainy.
Takže si tam můžu udělat třeba barevné pozadí, scénu a tu obarvím 6 plainy (64 barev z palety) a 2 subjekty na zbývajících plainech, každý z vlastní barvou.
Do palety můžu dát i jaká bude barva, když se subjekty překrývají.
Když budu hýbat se subjekty, tak stačí přes masku měnit jen příslušný plain a pozadí se nemění.

A o to asi chlapcům v HGFX grafice jde :D

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
PříspěvekNapsal: 21.07.2022, 10:38 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 864 times
Been thanked: 697 times
V knihovně PicoVGA používám 4 překryvné roviny, typicky všechny v 8-bitové barvě R3G3B2 (tj. pixel = 1 bajt, snadno se s tím manipuluje) - základ pozadí a nad ním mohou být 3 roviny s definovanou barvou pro průhlednost. Je tam i možnost použít hardwarové sprajty, ale ty má problém stíhat když je jich víc.

Místo toho jsem raději začal používat sestavování obrazu do back bufferu. Pico je dost rychlé při práci s grafikou, tak je lepší všechny ty operace řešit softwarově se 2 buffery (když je k tomu dostatek RAM). Kdybych to připojoval k 8-bitu, tak hlavní procesor by posílal jen instrukce - např. přesuň sprajt na tuto souřadnici nebo skroluj rovinu - a Pico by sestavovalo obraz za běhu, včetně překryvů pozadí a sprajtů. Ne během zobrazení, ale do back bufferu. I nějaká 3D projekce se tam dá řešit celkem rozumnou rychlostí, např. "mode 7".

Různé módy mixování rovin jsou stejně nakonec celkem k ničemu, u 2D her je plně postačující jen průhledné/neprůhledné, buď alfa kanálem nebo klíčovou barvou, a prosté překreslování objektů a rovin přes sebe. Proto se mi zdá mnohem praktičtější než nějaké planární grafiky, tak prostá pakovaná grafika, nejlépe 1 pixel = 1 bajt. Nejlépe R3G3B2 - v tomto módu se dá případně manipulovat i s RGB složkami, nejsou potřeba palety, je s tím rychlá práce a kvalita obrazu mi vycházela nejlíp, proti různým jiným formám palet (např. palety 6x7x6). S barevnými rovinami by se mi už nechtělo dělat, to bylo u EGA hodně nepohodlné. Proti tomu jsou 8-bitové pixely úplně zlaté.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
PříspěvekNapsal: 21.07.2022, 12:26 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Samozřejmě, že planarová grafika je slepá cesta z doby, kdy bylo málo pomalé paměti a dohánělo se to paralelním přístupem. Jaká obludnost tak hw vznikne, je vidět na videopaměti PP-01.
Když je to 8-mi bit, tak jedině rastrová grafika 1 pixel = 1 bajt RGB, jak jsi správně zvolil.
Vše ostatní simulací nad tím.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
PříspěvekNapsal: 22.07.2022, 14:18 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
danhard píše:
1 pixel = 1 bajt RGB
Ja by som radsej prijal 1 pixel = index do RGB palety
Predsa len, paleta umoznuje jednu skvelu vec - malou zmenou na strane CPU sa da urobit velka zmena na obrazovke. Co je hlavne u tych 8-bitov castokrat mimoriadne cenna vlastnost.


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 09:49 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Paleta je užitečná, jen může být problém 256x 8bit v pixelové rychlosti realizovat.
Na 8 bitové zobrazení ji nepotřebuješ, můžeš jít přímo a když budeš využívat plainy, tak nehrozí, že by jsi využil větší hloubku, než 16 barev, čili by bohatě stačily 2 palety 16x 8bit.
Ale mnohem užitečnější by bylo zobrazovat současně 2 stránky, jednu v 8-mi bitovém modu bez palety a k ní stránku s plainy se zjednodušenou paletou.
Můžeš tak udělat pozadí s hloubkou 256 barev a překrývat to budou plainy s mnohem více možnostmi.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 11:06 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1972
Bydliště: Most, Praha
Has thanked: 864 times
Been thanked: 697 times
Palety se někdy hodí i u 8-bitového zobrazení, kdy se dají změnou palety snadno realizovat animace bez nutnosti překreslení obrazovky - např. tekoucí voda nebo animace loading obrazovky Windows 95. Ale je to dost vzácný případ, je otázkou zda to stojí za to.

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 12:12 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
To si můžeš udělat na té plainové obrazovce.
Logika zobrazování je, že se zobrazuje 8-mi bitový podklad a překrývají ho plainy z druhé obrazovky.
Tam je to rozděleno ještě na polovic, takže plain 0-3 překrývá základ a plain 4-7 překrývá obojí.
Podle toho, kam vodu umístíš, tak budou subjekty proplouvat před vodopádem, nebo za vodopádem :D

Prostě 8 plainů je u HGFX hrozně málo a hned se pozná, že je to laciná omezená grafika.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 12:23 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
danhard píše:
tak nehrozí, že by jsi využil větší hloubku
Vecsia hlbka farieb nie je ani zdaleka jediny prinos palety.
danhard píše:
Na 8 bitové zobrazení ji nepotřebuješ, můžeš jít přímo a když budeš využívat plainy
Tam mi porad, ako zmenim cely obsah vsetkych plainov za niekolko hodinovych taktov...

Myslim ze si si moju poznamku poriadne neprecital. Panda38 to vyjadril "polopatisticky". Proste, potrebujem velmi rychlo (v jednotkach milisekund) naraz zmenit farbu na velkej ploche obrazovky, tak predsa CPU nebude ako blb prekreslovat vsetky pixely s danou farbou, ale urobi iba jeden zopartaktovy zapis do palety a hotovo :)
danhard píše:
Paleta je užitečná, jen může být problém 256x 8bit v pixelové rychlosti realizovat.
Jeden pixel trva tusim 140 ns, pri 2x vyssom rozliseni po X to bude 70ns. To myslim dnesne rychle ramky v pohode zvladnu :)


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 12:26 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
danhard píše:
To si můžeš udělat na té plainové obrazovce.
Logika zobrazování je, že se zobrazuje 8-mi bitový podklad a překrývají ho plainy z druhé obrazovky.
Ako s touto logikou urobim napriklad plynuly fade-in a fade-out nejakeho 256-farebneho obrazku ?


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 12:54 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
To s tím neuděláš, to uděláš jen v HGFX s paletou 256x8bit, ale potom už nic jiného :D
Nezapomínej, že je v plánu nejen dvojnásobné rozlišení, ale určitě bude zájem i o VGA výstup.

U té karty, kterou jsem tu pastnul výše, byl požadavek 80Mpixl/s a chodilo to asi do 130M.
Ale tam jsem měl paletu ve FPGA a Spartan XCS10xl nemá RAM bloky, takže byla menší na a zabírala 1/2 FPGA.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 13:36 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Busy píše:
danhard píše:
tak nehrozí, že by jsi využil větší hloubku
Vecsia hlbka farieb nie je ani zdaleka jediny prinos palety.
danhard píše:
Na 8 bitové zobrazení ji nepotřebuješ, můžeš jít přímo a když budeš využívat plainy
Tam mi porad, ako zmenim cely obsah vsetkych plainov za niekolko hodinovych taktov...

U plainové obrazovky paleta je, ale protože budeš plainy užívat minimálně na dvě vrstvy, tak stačí paleta 16x 8 bitů a "stmívat" budeš tou paletou.

Nepsal jsem, že tam nebude paleta vůbec, ale jak by se dala pro plainovou obrazovku zjednodušit, tak laskavě čti moje příspěvky celé, pěkně si to pomalu sesumíruj a pak tady vyblej nějakou odpověď :roll:

Samozřejmě se tam kříží různá omezení, ale největší omezení je, že se zobrazuje jen ta 8-mi plain obrazovka.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 14:04 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
danhard píše:
To s tím neuděláš, to uděláš jen v HGFX s paletou 256x8bit, ale potom už nic jiného :D
Ako to ze nic ineho ? Pokial paleta nebude zmensovat pocet bitov pre zobrazovanie, tak a vhodne si ju nastavis, tak to bude fungovat presne podla tvojej bezpaletovej prestavy "tak jedině rastrová grafika 1 pixel = 1 bajt RGB". Cize s paletou urobis vsetko to co aj bez palety plus kopec veci navyse.
danhard píše:
Ale tam jsem měl paletu ve FPGA a Spartan XCS10xl nemá RAM bloky, takže byla menší na a zabírala 1/2 FPGA.
Spartan pouzity v MB03 alebo eLeMeNte ma priamo v sebe 8kB ramky s pristupom tusim 10ns (ak si dobre pametam co mi LMN hovoril), takze tam by paleta hadam dala realizovat velmi dobre a bez plytvania kapacitou FPGA na RAM bloky.
Nezabudaj, ze tu sme vo fore o koncepcii grafiky na osembitoch obecne, a nie o konkretnej realizacii v HGFX, takze si to najprv podla toho poriadne zosumarizuj, az potom vyblej nejaku odpoved :)
danhard píše:
Nepsal jsem, že tam nebude paleta vůbec
Pisal si "Když je to 8-mi bit, tak jedině rastrová grafika 1 pixel = 1 bajt RGB" co som ja pochopil tak ze chces aby priamo bity nacitane z bitplanov isli do D/A prevodnikov pre RGB vystup. Cize grafika uplne bez palety, nieco v style ako ma PP01. Ak som to pochopil zle, tak sa ospravedlnujem.


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 15:23 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Jaké jsou hw požadavky tu zatím nikdo nevyblil :D

1 pixel = 1 bajt RGB neříká nic o paletě, jen že bych zvolil režim výstupu 8 bitů R3G3B2, protože pro 8-bit je to stylové :D

Busy píše:
Ako s touto logikou urobim napriklad plynuly fade-in a fade-out nejakeho 256-farebneho obrazku ?

256-farebný obrázok pro mě znamená jednoznačně obrázek s hloubkou 256 barev, na ten potřebuju do palety cpát 8 bitů, takže když na to spotřebuji 8 plainů, tak mi na nic jiného plainy nezbydou, můžu akorát pěkně fádovat s tím obrázkem. Zase kdybych měl paletu 256x24 bit, tak bych mohl fádovat plynuleji a radostněji. Já to tak mám :lol:

U RB Pico ale žádná paleta udělat nejde, umí akorát vysypat frame buffer tak jak je.

Upřesním jaký mám já hw.
SRAM 64kx16 10ns, Spartan XCS10xl, 24bit RGB převodník, prog. oscilátor do 130MHz
Při VGA modu je pixel rate 25.175MHz.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 17:11 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
danhard píše:
Jaké jsou hw požadavky tu zatím nikdo nevyblil :D
No vidis, ty si prvy :)

Ale konkretne HW poziadavky nepovazujem za podstatne, pretoze v tomto fore sa bavime o obecnejsich otazkach, ako je koncepcia :)


Nahoru
 Profil  
 
PříspěvekNapsal: 23.07.2022, 18:08 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Taky jsou to obecný otázky, co stojí jaká realizace ?
Co stojí paralelní zápis do x plainů, co stojí paleta a jak by měla být organizovaná, kolik je zapotřebí paměti a jak rychlé a tak podobně.
Když o tom nemáš přehled, tak to budeš realizovat tak kravsky, jako je to v PP-01, jestli jsi to nepochopil, tak s normální pamětí to tak prostě nejde :!:

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 59 ]  Přejít na stránku Předchozí  1, 2, 3, 4  Další

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 7 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz