07/07/19

Universal soldier


Playstation 2 bola zastaralá mašina už na štarte a veľká otrava pre progišov. Dnes veľmi častý názor všeobecne po fórach, tak sa to pozrime bližšie. Grafické karty v roku nula dva, keď ešte ladničky neboli pripojené na internet, dokázali akurát tak capnúť jednu textúru na polygón, ktorého vertex dáta /trigonometria, matematika/ ste museli pracne počitať na CPU. Multi-textúrovanie ste dosiahli tak, že ste tomu polygónu naložili textúry dve a spojili to cez alpha blend operácie, inak vcelku performance problém. Alebo tri texúry. Štyri nie. Celé by to už padlo na hubu /fillrate, priepustnosť zberníc, výkon rasterizácie/. PS2 je dizajnová práve okolo týchto problémov.

Ide o extrémne výkonný multipass GPU rasterizér s enormnou priepustnosťou, kde sa len pozriete, a s presunutím trasformácií polygónov na dvojicu mimoriadne výkonných VU /vektor jednotky/. PS2 nepozná špecializovaný HW pixel/vertex shader, súčasť moderných GPU, v čase základného návrhu PS2 to bolo ešte vzdialená budúcnosť. Máme teda v rukách  v podstate super univerzálnu platformu, ktorej geometrická časť grafickej pipelajny predbehla vývoj o mnoho rokov. Základná pamäť / RMW read–modify–write/ je blesková, eDRAM nedokáže unaviť nikto, CPU scratchpad RAM s špeciálnym DMA prístupom uštve aj závodného chrta. Dosť kecov, ukážky.


Generovanie polygónov vynechaním CPU, emisia častícových efektov rovnakým spôsobom, geometry instancing /kópie meshu po obrazovke, v MS svete až od Direct 9.x/. To všetko "primitívna" PS2 zvládne a pritom ide o vyslovene high-end výbavu, ktorú napríklad SEGA Dreamcast nedostal a aj oveľa novší, ten prvý, Xbox musel často "oklamať" kreatívnom postupom. V ľavom videu je skôr teória, v pravom je Melman z Madagaskaru. Skočte rovno na deviatu minútu a nepretáčajte, je to paráda. Rovnaké finty využíva super hustá džungľa v Transformers: Armada /údajne 60fps, ak je to pravda potom ide technicky o najlepšiu hra pre PS2, heh/, Ikusagami a jeho 65 535 panduľákov naraz na ploche alebo Hitman: Blood Money /14:30 min/ s ulicou , kde pomedzi zástupy ľudí na zem ani vlas nespadne. Hnusná kvalita videa, sorry.



Polygóny, partikle. Jednoduché. Čo však per-pixel manipulácia s textúrou ? Bump mapping, normálové mapovanie /alias DOT3 mapping/. Pekná vec, keď sa 2D placka tvári ako 3D bez toho, aby sme použili nejaké polygóny navyše. Normála je priamka kolmá na povrch, v našom prípade kolmá na každý pixel textúry a bez HW podpory, teda pixel shader v GPU je to ťažké, veĺmi ťažké. PS2 ako vidieť vo videu vyššie opäť raz zneužíva ohromný multipass výkon svojho GPU a Vektor jednotky a aj tento efekt zvládne napodobniť. Samozrejme v rozumnom rozsahu.

"This paper has also described how it is possible to integrate the normal mapping with ordinary shading of non-normal mapped objects without any additional effect on performance." - PS2 je šampión.

Trblietavá hladina vody, lom, pseudo reflexie, 3D vlnky /fourier transformácie vertexov, samozrejme to opäť beží na Vektor jednotke/. A takto môžme pokračovať donekonečna a ešte ďalej, kým vám šťava nedôjde. A tým nemyslím ten hardvér PS2ky ale ROI - Return on Investment. Rentabilita vloženej investície, ktorou je napríklad čas. PS2 zvládne prakticky čokoľvek ale musíte to z nej dolovať, rubať holými rukammi, potiť krv. Niekde som čítal, že na engine pre všetkými milovaný Black pre PS2 makal aj Sean Murray /Hello Games, "No Man's Sky"/. To len tak off-topic. Aha - našiel som to "Murray began working as a lead programmer for Criterion Games .. Burnout 3 and Black at Criterion as a Technical Lead."

30/06/19

Deformujeme, ohýbame, lámeme


"Metóda konečných prvkov je numerická metóda slúžiaca na simuláciu priebehov napätia, deformácii, vlastných frekvencií, prúdenie tepla, javov elektromagnetizmu, prúdenie tekutín a pod. na vytvorenom fyzikálnom modeli. Jej princíp spočíva v diskretizácii spojitého kontinua do určitého (konečného) počtu prvkov, pričom zisťované parametre sú určované v jednotlivých uzlových bodoch. MKP sa používa predovšetkým pre kontrolu už navrhnutých zariadení, alebo na stanovenie kritického (najnamáhanejšieho) miesta konštrukcie. Hoci sú princípy tejto metódy známe už dlhšiu dobu, k jej masovému využitiu došlo až s nástupom modernej výpočtovej techniky." - wikipedia

Po anglicky FEM /finite element method/ a ide o rutinne používaný postup mimoherne v priemysle /ničíme autá v simulovanej havárke alebo testujeme pevnosť zvaru/ už celé desaťročia. To vyššie vám tiež preložím do ľudskej reči. Zoberiete klasický polygónový objekt /mesh/ a jeho vnútornú štruktúru rozdelíte na sieť štvorstenov /malé pyramídky, ide asi o najmenší 3D objekt/. Každý jeden z nich má definované vlastnosti napríklad ako tuhosť /odolnosť voči deformácií/, zachovanie objemu /hmota by sa nemala pri deformácií strácať/, bod plastickej deformácie alebo bod zlomu. No a môžte počítať.

Aj na prvý laický pohľad je zjavné, že ak jeden objekt rozdelím na 16 000 menších asi to pre mašinu veselé nebude. Za starých čias to grafické stanice zvládali skôr v semi-realtime režime a my to teraz chceme do hier vo väčšom merítku a aspoň na 30fps. Odvážne. Nvidia sa do toho pustila už pred mnohými rokmi v balíku svoje PhysX fyziky pod názvom FleX - je integrovaný do Unreal enginu a samotnú Flexku by ste mali nájsť v hrách Fallout 4 alebo Killing Floor 2. FleX je z toho čo viem nájsť zjednodušenou FEMkou, teda menej parametrov, s ktorými sa musí trápiť.

FEM fyzika ala AMD - je to celá prednáška, názorné ukážky máte napr. v 3:53 a 32:50 minúte

Video vyššie je úplne čerstvá novinka od AMD. Ide o "plnohodnú" FEM /je možné ju napasovať na CPU, GPU/ a pretože je PS5 kompletne AMD stroj tak nás to extra zaujíma. Opäť ide o plugin integrovaný do Unreal enginu a čaká na dostatočný výkon aby sa prejavil. Tak snáď sa s tým stretneme v tých PS5 hrách. Osobne to vidím tutovo a masovo použiteľné v niečom ako The Last of Us, teda komornejšia gamesa, kde je lepšia kontrola nad prostredím. Nečekám to v Gran Turisme 7 kde hrozí, že sa zrazí naraz 22 áut so sanitkou. V ďalšom GTA to ale očakávam aplikované aspoň na malé detaily - trochu železného ohýbania značiek, trochu trhania šiat, lámania stromov, možno nejaké nalievanie vína do pohára. Také milé hravé veci.

27/06/19

Menej je niekedy viac a ako veľa je už dosť


Pri novom grafickom engine pre chystaný, najnovší diel Call of Duty som zachytil tieto kľúčové slová: PBR – physically based rendering /denná rutina, nuda, matematický model interakcie svetla s materiálom/, photogrammetry /módny hit, špeciálna technika skenovania real life textúr s rešpektovaním PBR/ a nové výrazne efektívnejšie spracovanie geometrie scény /pod čim si predstavím hlavne kus poctivého kódu tzv. occlusion culling algoritmus/. Venovať sa budeme tej geometrii a čo znamená culling polygónov sa hneď dozviete.

Dnes sa totiž COD dev tím pochválil, že zatiaľ čo v starších dieloch ich engine zvládol asi 3 milióny polygónov na frame, po novom to bude bežne 16-17M per frame. Čo je teda vážne dosť a v maxime utiahne aj 24M. A to je už čistý next gen triedy Playstation 5, či ako to vlastne je ? Herný frame o full HD rozlíšení 1 920 × 1 080 pixelov má cirka 2 milióny obrazových bodov a pri 24M polygónoch na frame je "za každým pixelom" technicky ukrytých 12 polygónov /overdraw/. Ide teda o masívny výkon a veľkú rezervu pre prípadné alfa efekty /okná, hmloviny, výbuchy, oblaky, stromy, tráva, voda/.


1000 polys na frame /30fps/ stačí na Qvák wannabe grafiku

Samozrejme, nie každý objekt-polygón-vertex sa prebojuje až na obrazovku. Ak je náhodou časť hernej scény zakrytá nejakým oklúderom - panduľák stoji za tankom a tank zakrýva váš výhľad, je vašou povinnosťou sa tých "zakrytých" polygónov zbaviť - teda ich culling na základe oklúzie /tiež všetky odvrátené strany objektov - backface culling alebo "to" za okrajom monitoru - frustrum culling/.  Ak sa odstránite tie, ktoré nevidíte, šetríte GPU a tá toho utiahne oveľa viac. Herné enginy tento problém riešia od veky vekov, je to ich pevnou súčasťou /aj toho vyššie na Saturne !/, dokonca si môžte kúpiť celý balík ako je Umbra, ktorá to urobí za vás. Witcher 3 to urobil presne takto. A každé GPU sa snaží aj o nejakú základnú formu podpory na HW úrovni /via Z-buffer, depth buffer, iks HiddenSurfaceRemoval variánt/.

Všetko pekné,  ale to čo som doteraz napísal sú už dávno prekonané, zastaralé prdlačky. Stále tie nekonečné polygonové stripy pre GPU musí pripraviť CPU, na ktorom zároveň beží ten super sofistikovaný occlusion culling kód. Mimochodom práve to bola veľká časť práce SPE jednotiek v PS3ke, aj takto pomáhali RSX GPU. Pravé next gen riešenie od Nvidie pritom existuje už nejaký ten rok ale pretože PC GPU mainstream je hardvérovo o pár poschodí nižšie, tak to celé leží ladom.

VS/GS/HS/DS

Nvidia. Oni dobre vedia, že sa blížime ku limitom klasických polygón mesh povrchov /vertex, geometry, hull, domain shader/ s akými ťažkosťami sa potýkame pri manipulácii s nimi a že chudák CPU za to nemôže. Takže tu máme úplnú novinku a tou je MESH shading. Nahrádza všetko to staré, všetky tie skratky v titulke kapitoly a ide o skutočne revolučnú, next gen techniku. A mimochodom to beži komplet na GPU vrátane generovania "CPU" display listov, cullingu, tesselácie a LOD manažmentov. V jednej RAM a bez pendlovanie po zberniciach. Je za tým kopa práce a je to úplne prevratné. Totálne programovateľne, autonómne geometrické operácie bežiace na GPU. Dav teraz kričí - chceme ukážku Nvidia a nech to fičí.



Prosím - cirka 50 000 000 polygónov na frame po vyradení tých, ktoré nemáte vidieť. Bez námahy, bez asistencie CPU. Teraz ešte musíte vymyslieť kvalitný LOD /level of detail/ systém, lebo šuter je až príliš detailný čo v ďiaľke nepotrebujeme a nutnosť mať vysoký počet LOD úrovní zas prináša iné nevýhody. Riešením je systém on-the-fly Continuous Level Of Detail generation. O tom určite inokedy, keď sa potvrdí, že PS5 GPU podporuje primitive shader a primitive discard akcelerátor vyššej triedy a je aj správne implementovaný. Proste to isté čo už má Nvidia.V špičkovej PS5 hre, aj tak je to už jasné, vás bude čakať neuveriteľný nárast "fyzickej" geometrie /polys/, kvality textúr /rozlíšenie, počet/, komplexnosť shader kódu /rasterizácia na úplnom olympe/. Proste sa opäť musím vrátiť k tomu Unity Heretic tech demu, tak. A raytracing ste zatiaľ ešte ani nespomenuli.

26/06/19

Hra o tróny


Kde bolo, tam bolo - každému dobrá známa epizóda okolo roku 1988 o tom ako herný gigant Nintendo nadviazal družbu so SONY a chcelo od nich pomoc pri vývoji CD mechaniky pre "2D" Super Nintendo konzolu. Išlo o logický krok, veď SONY spolu s Phillips stáli ako otcovia zakladatelia za CD /compact disc/ formátom. Nešlo o prvý prípad toho, ako by sa časť know-how SONY ocitla v nintendo mašine. Kutaragi pre SNES totiž vyvinul jeho audio čip  Sony SPC 700. Z obchodu však nič nebolo. Zákulisné dohody o delení moci, zisku, licenčných poplatkov, kontrola nad softom, proste sa nevedeli rozumne podeliť. SONY plánovalo aj vlastný SNES kompatibilný HW, ktorý by podporoval ako herné kartridže, tak aj nové CD /táto licencia by však bola plne pod kontrolou SONY/.

Celé to neslávne skončilo škandálom počas výstavy CES 1991, keď deň po tom ako SONY prezentovalo doterajšie výsledky ich práce s nitendom, to isté nintendo na to oznámilo, že so SONY neráta a potajomky rokovali s Philips /!!/ o lepších podmienkach, lepších pre nintendo. Všetko to viedlo k tomu, že SONY zmenilo plány, zbavili sa kompatibility s SNES katridžami a Ken im upiekol nativnú "3D" konzolu s CD mechanikou. Nintendo sa ku cedečku nedopracovalo ani s filipsom a CD mechaniku získala až ich konzola Gamecube v 2001. N64 zas na jej absenciu jasne doplatila /SquareSoft pri voľbe platformy pre dátovo obrovskú Final Fantasy 7/.

Playstation 1 ako "3D powerhouse" však nespadla len tak z neba. Je s tým spojená iná zábavná príhoda. Tentoraz je v tom namočená SEGA. Táto po veľmi úspešnej konzole Megadrive /Genesis v amerike/ už rozmýšľala o jej nástupcovi. SEGA bola veľmi silná aj v arcade kabinetoch, v roku 1992 vypustili slavný "3D" Sega Model 1. Veľmi drahá a veľmá výkonná vec, kde netextúrované polygóny lietali v obrovskom množstve a samozrejme plynulo. Bojovka Virtua Fighter 1 úplne pobláznila davy a SEGA zaňuchala svoju šancu. Ako však napchať 25 000 dolárový kabinet do domácej 250 dolárovej konzoly ? Podobne ako SNES pri CD mechanike aj SEGA napochodovala za SONY a poprosila o pomoc.

Dohoda znela asi tak, že sa podelia so SONY fifty-fifty s nákladom na vývoj hardvéru ale každá strana si ponechá 100% zisku z hier vyvinutých pod vlastnou značkou. Opäť podobne ako nintende ku úspešnému dotiahnutie celej akcie do konca nedošlo a SONY navyše získalo veľmi cennú insajder informáciu o tom, že budúcnosť rozhodne nie je v 2D konzole s 3D "ready" fičúrami /ako si myslela SEGA/. A SONY vlastnú verziu Sega Model 1 naozaj aj dokázali postaviť.

V skutočnosti išli ešte ďalej a vzhľadom na priamu podporu textúrovania a základné nasvietenia konkurovali aj Sega model 2 /!!/. Ide o jednu z najstresujúcejších situácií, ktoré kedy SEGA zažila, keď zistili, že ich pripravovaná SEGA Saturn je koncepčne "zastaralá" a SONY je doslova o jednu generáciu napred. V panickom móde na poslednú chvílu upravili, upgrejdovali Saturn do podoby 2D/3D hybrida v dual CPU a GPU konfigurácii s tak obtiažným programovanám, že sa hompáľal s povrazom na krku ešte skôr než to vôbec začali predávať. SONY im navyyše definitívne vyrazilo stoličku z pod nôh cenou Playstation 1 o 100 dolárov pod Sega Saturn. Game over.


Sega "dual core, GPU SLI" Saturn a počkajte je toho viac

A grécka tragédia sa stále ešte neskončila. Oplatí sa trochu bližšie pozrieť na to ako to SEGA pokašlala pokračovaním v chybných rozhodnutiach. Potom ako odskočili od SONY a nechalo ich makať za vlastné, neskôr uvideli prvé špecifikácie PS1, ktoré SONY hrdo odprezentovala  - šokovaní nabehli za SGI, ktorá so SONY na PS1 kooperovala a požiadala ich o niečo "podobné" aj pre seba. Neuveriteľné, že japonská centrála SEGA stopla aj túto spoluprácu. SEGA Saturn teda vznikla čiste za pomoci ich vlastných nippon inžnierov a už dobre vieme ako neslávne to dopadlo.

Neskutočné, ale tento epos pokračuje ďalej. SGI totiž s návrhom, ktorý mali pripravený pre SEGA oslovili Nintendo a celé to dalo vznik 3D konzole Nintendo 64 avšak bez CD mechaniky a navyše na trhu v predaji až v 1996, teda rok a pol po Playstation 1, keď už bolo o víťazovi vojny konzol rozhodnuté. Ďalší pol rok po štarte N64 sa dovolila Final Fantasy 7 na troch CD a dodnes počujem ten hurónsky rehot SONY nad krátkozrakosťou Nintenda.


Koľko kapesníkom muselo nintendo premočiť, 
keď to sledovali v telke desať krát denne niekoľko mesiacov

Presah do prítomnosti. Dnes je situácia mierne odlišná, viac pod kontrolou, bez pubertálneho besnenia. SEGA a Nintendo sú mimo hlavnej hry. MS a SONY vedia na bit a hertz presne ako má ich herný HW vyzerať, hrajú s nuansami ako, či stihnú v roku 2020 prejsť na výrobný proces 7nm+ EUV alebo koľko desiatok miliónov čipov si u AMD zazmluvniť. SONY sa hardvérovo poučilo z PS3ky, MS zas z prvého Xbox One s anemickým GPU. Včerajšia honba za "3D" grafikou sú dnešné glorifikované hry a online-stream-subskripčné služby. Otázka do pléna - Toshinden, Tekken či Virtua Fighter ? Prevratné, neošúchané grafické technológie majú nakoniec vždy niečo do seba, že raytracing "lens flare" budúcej generácie hier.

23/06/19

Blade Runner 2049


Otrocký rimejk originálu z 1982. Scény, témy, situácie, postavy. Mohol by si to analyzovať po záberoch a bolo by čo písať v seriálovom pokračovaní na pol roka. Išlo by však o slabomyseľné zabíjanie času. Zabudli sa chlapci s novým filmom posunúť v čase a úplne rezignovali na objektívnu morálku, prvé prikázanie a zdravý rozum. Uviazli v pasci službe fanúšikovi a nepodarilo sa im preraziť mantinel vlastnej obmedzenosti. Rozhodne si preleťte môj starší članok ku pôvodnemu Blade runnerovi, aj ja som to musel bez hanby urobiť.

Ideme na to. Opäť pohľad do oka, do duše, do tváre boha. Už však neletíme nad temným mestom s komínami chrliacimi pekelný oheň, sme nad pokojnou "bielou" krajinou pokrytou solárnymi elektrárňami a foliovníkmi kde v tichu dorastá vysokoproteinový červ. Drax the Destroyer sa stará o vaše hladné žalúdky. Hral tam iba pár minút, bolo to však veľmi milé a úplne ľudské.

- "Morphology? Longevity? Incept dates?"
- "Don't know, I don't know such stuff."
- "I just do eyes, j'j'... just eyes... just genetic design, just eyes."
- Bladerunner /1982/ - do božích veci sa inžnier veru nemá čo miešať

Gosling zabíja síce bezcitne ale zásadne v sebaobrane, tuším aj Ford a Rachel to tak robili, svedomiu sa trochu uľavi. Viete o čom, že v Homérovej Iliáde sú hlasy bohov, ktoré borci celý ten epos počúvajú, vlastne hlasom ich svedomia, čo je morálny imperatív v nás, teda duch boži. V podstate ďaleko od pravdy ani neboli. Oko vylúpneme ale na vrchol pyramídy ho zabudneme položiť. Ten film nepozná základne postuláty a teologické dogmy. Videl si zazrak života Gosling, narodenie dieťaťa. Cisárskym rezom, vojenským nožom. Nie.

Normatívna previerka. Kontrola mentálnej stability po traumatizujúcej príhode. Absolutne brilantná verzia starého Voight-Kapf testu, výborné. A vychádza zo štadardného testu, ktorý môžte absolvovať aj dnes. Evokované potenciály, EEG a K status agent K, nedá sa to oklamať. Gosling, dnes si este v pohode, dostatočne si neprecitol.

Maďarská cuchta na schodoch /odkazov na prvého blejda je tu more/. Gosling sa snaží nájsť vstupný port domácej paničky Joi.  Dokonalá manželka kubánskej národnosti výšky 168cm. Syntetik s telom v romantickom vzťahu s AI bez tela. Zúfala dezilúzia ľudskosti. Už nám chýba len vyriešiť problém s replikantom rodiacim deti. Poviem vám tajomstvo. Súčasná špičková neurobiológia, kybernetika úplne vylučuje možnosť nahratia ľudského vedomia do počítača, dokonca aj schopnosť ľubovoľnej AI si začať uvedomovať sama seba,. A tvrdia to dosť ultimatívne. Nikdy sa to nestane.

normatívny test je prepis viet tejto knihy milá Joi, Nabokov píše o smrteľnosti človeka,
o bohu a živote po smrti a celé to hádžeme na hlavu úbohého replikanta

Koniec hrania. Povedzme, že pôvodný Blade Runner kĺzal po povrchu veľkých tém ako - čo je život, vedomie, city, sex, rodenie detí, život a smrť. A zvládne to aj umelina. Odpovede už poznáme a Bladerunner 2049 sa o nič viac tiež nesnaží. Starý Blade Runner, jeho prostredia, postavy sú naturálnejšie, autentickejšie, každý jeden charakter v novom filme za svojim starým náprotivkom výrazne zaostáva. To však nie je najväčšou chybou 2049ky. Tou je infantilne zmeškaná príležitosť na vytvorenie niečoho omnoho lepšieho ako Deckard and co. Slabošsky sa vyhli skutočnému konfliktu.

"Na počiatku bolo Slovo a Slovo bolo u Boha a to Slovo bolo Boh. Ono bolo na počiatku u Boha. Všetko povstalo skrze neho a bez neho nepovstalo nič z toho, čo povstalo." Prvé vety evanjelia podľa Jána hovoria, že sa sa nám ľuďom nikdy nepodarí "zostrojiť" život, život s vedomím, život s morálkou. Žiadna ľudská AI, žiadny replikanti, agent K či Deckard. Potom by však nebolo o čom písať ani točiť sci-fi filmy. Akceptujme teda možnosť, že naše vlastné stvorenia získajú vedomie. Mimochom, lebo viem, že nikto z vás nemá o teológií ani páru - kto je Slovo /Logos/ a na ďalšie komplikované teologické, filozofické otázky sa pýtajte kľudne pod článkom.

V poriadka máme syntetika. Má tento syntetik v sebe morálny zákon, ako sa tam dostal ak jeho tvorcom nie je Logos ? Nielen otázku existencie morálky, jej pôvodu riešime celé tisicročia /filozofia je úplne bezradná, Kant pozdravuje/ a bez nej ste buď zviera alebo vec. Tento problém sa snaží nadhodiť iný sci-fi film Ex Machina. Opať evanjelium podľa Jána 14:6 - "Ja som cesta, pravda a život. Nik nepríde k Otcovi, iba cezo mňa." Cesta je tzv. objektívny morálny kódex garantom ktorého je Boh, neexistuje iná alternatíva. Pravda - kde patrí aj sedem základných filozofických otázok: Kto som ja? Odkiaľ prichádzam? Kam smerujem? Čo je pravda? Čo je krása? Čo je dobro? Čo je bytie?

A život. Pointou nového zákona je porazenie smrti. Dar večného života avšak za jednej hlavnej podmienky - bezvýhradný a absolútny vzťah s Kristom. Nie philia ale agape. Zdá sa vám, že sa naši replikanti zapojili do tohto kolotoča ? Čo tzv. problém  slobodnej vôle alebo paradox existencie zla ? Nič, však. A poviem vám že nič z toho ani od scenáristov nečekám. Rozhľadený, teologický podkutý autor sa totiž už dávno vydal opačným smerom.

Neuromancer alebo Kantos Hyperionu zo svojich replikantov a AI ľudí nerobia. Plne si uvedomujú to čo som napísal vyššie. Ak teda tieto entity v sebe nemajú duch boží, neriadia sa žiadnou morálkou, neprahnou za telesnosťou a ich veci nie sú vecami ľúdí. Ako vlastne vyzerá ich samotná existencie, atribúty, ktoré ich definujú, ako dopadne ich stret s nami, o čo im vlastne ide, aká je ich "teológia", ak nie sú z boha, sú z diabla ? Boja sa jediného boha existujúceho mimo priestor a čas ? Obe tieto knihy /a mnoho ďalšich/ sa v tom s chuťou vŕtajú a ponúkajú pohľady z druhej strany. Extrémna inakosť, cynicky mrazivé. Do tohto boja sa Bladerunner 2049 nezapojil, je to iba rozprávka o Pinocchiovi s otvoreným koncom.

22/06/19

Procesorový výkon PS4/PS5 a "intel inside"


Na vianoce roku 2013 sa tu dovalila Playstation 4 s CPU na báze architektúry AMD Jaguar s pracovnou rýchlosťou 1.6GHz. Málo štavy. O tri roky neskôr prišla PS4 PRO so stále tým istým CPU, len trošku rýchlejším - 2.13GHz. Intel svoje vlastné osemjadro predstavil asi pol roka po tej základnej PS4ke, v lete 2014. Super špičkový model Intel® Core™ i7-5960X processor Extreme Edition /8c,16t, základná rýchlosť 3.0GHz, boost 3.5GHz, obrovská 20 megová L3 keška/. Určený primárne pre serióznu prácu. Cenovka od 1000 dolárov vyššie, TDP do 150 watt, prakticky žral to čo celá PS4 v bežnej hre.

jedno jaguar jadro je tak malé, že na plochu PS4 APU ich hravo vopcháte aj 32 !!

AMD Jaguar, nikdy to žiadne tajomstvo nebolo, je tragicky nevýkonné CPU,  v danej dobre ale AMD nič lepšie pre herné APU naponúkalo. Žiadna alternatíva, jediná možnosť. Teraz postavím toho šmejda zoči voči tej i7-5960X beštii. Konkrétne beriem AMD-Athlon-5350-APU-R3 s jaguarom na 2.1GHz a benchmark ukazuje, že ho intel poráža komfortne a aj o stovky percenta, ukazujem hlavne na singel core výkon.

PS5 dostane Zen2 CPU, kompletne nová vec, čo je tiež 8c/16t CPU ako ten intel 5960ka, pracovnú frekvenciu v prípade konzoly odhadujem do 3.2GHz, má to oproti intelu 2 krát väčšiu L1/L2 cache a obrovskú 32 megovú L3 kešku, TDP bude iste do 60 watt, skôr okolo 50ky /do termálneho budgetu 5960ky ho teda naskladáte tri krát, wow/. Cena nie je podstatná, bude to malý zlomok tej intel tisícovky. Vysoko pravdepodobne PS5 Zen2ka dokáže per jadro a megahertz ten intel poraziť. Technická - ten Jaguar v PS4ke, ak chňapnete po jaguar dvojadre v AMD Sempron 2650 APU, vás bude stáť tuším cca 25 dolárov. To aby ste boli zorientovaný aj v cenových reláciach.

PS5 CPU oproti PS4 CPU beží na dvojnásobnej rýchlosti,  minimálne o 100% vyšší IPC /inštrukcie za sekundu/ výkon na jadro a megahertz, 8 versus 16 threadov, AVX inštrukcie /cough 512 cough/, oveľa vyšší FPU výkon, omnoho väčšie kešky, rýchlejší prístup do RAM atď. atď. Triezvy odhad mi hovorí, že to bude mať celkový výkon cca 4 až 5 krát lepší než to čo máte v základnej PS4ke dnes. Vzhľadom na stagnáciu v hertz rýchlosti /už veľmi dlho sa medián motá okolo 3.5-4.0Ghz/ je to solídny nárast výkonu a PS5 bude mať lepšie CPU ako ten tisicdolárový intel, ktorý je ešte aj dnes a dlho bude parádný procák aj pre gamesy. Pri multiplat hrách, ktoré museli brať ohľad na pomalý Jaguar sa totiž omoho výkonnejšie "PC CPU" ledva pretáčali.

A takto som si sám nahral na smeč, či nás teda v ďalšej generácií čaká viac 60fps a menej sub 30fps hier ? V otázke zároveň nájdete aj odpoveď. Je veľmi ťažké herne vyťažiť 8c/16t Zen2 na 100%. Vaša hra by musela byť niečo extrémne, bezprecedentné unikátne čo v teréne čistokrvnej PS2 hrateľnosti v 99% dnešných a blízko pripravovaných hier je málo pravdepodobné. Bottleneck /úzke miesto/ teda naďalej ostane na tričku GPU. Heretic demo na Unity engine ponúka pravú "next gen" grafiku a na PS5ke v tejto filmovej IQ /!!/ kvalite pôjdete okamžite na 30fps /VRR-variable refresh rate do toho zatiaľ zaťahovať nebudem/. GPU výkonu zjavne nie je nikdy dosť, CPU naopak prebýva, lebo "PS2 hry". Well, well.

19/06/19

Abakus


Herné objekty zložené z polygónov a pokryté textúrami sú hnusné zlo. Neinteraktívne, rigidné, zaberajúce veľa pamäte, zahlcujúce zbernice. Niet grafika, ktorý by vám povedal niečo iné. Ako ich však nahradiť ? Matematikou. Škola vás určite naučila, že všetky zvuky, mechanické vlnenie, sa dajú rozložiť na sústavu sinusoid. Komplexné rovnice=komplexný zvuk. Vietnamsky syntetizátor z blšáku. Rovnakým spôsobom vieme matematicky zachytiť "optickú" informáciu. Bod, pixel, tvar, svetlo, animáciu, odraz, lom. Totalný binárny Matrix.

V roku 2013 Inigo Quilez a Pol Jeremias založili stránky ShaderToy.com /pomalá srágora v okne, beží to via WebGLS ale na ilustráciu to musí stačiť/, ktorá slúži ako hub pre produkciu, vývoj, experimentovanie, zdieľanie informácii o procedurálnej "non polygón, non bitmap textúra" generovanej grafike a zvuku. Čistá matematická funkcia. Shader SIMD jednotky vašej GPU do boja.


Nič z toho čo vidíte v tom videu vyššie nemá spoločné s grafickými technikami, ktoré používame celé desaťročia. Objekty nie sú zložené z tisícok polygónov, niet tam jedinej textúry /ani problémy s UV mapping, klasickým boj s projekciou 2D obrazku na zakrivený pobvrch/. Animácia, deformácie, ten raytracing, reflexie a tiene. Všetko bez toho aby ste na to mali v VRAM vyhradené gigabajty priestoru. Pritom narozdiel od polygon-raster klasiky nad tým máte absolútnu "parametrickú" invenčnú slobodu. Skúste do štandardného mesh objektu /polygóny+textúra/ umelecky či deštrukčne zasahovať robením dier, ohýbanim, splývanim objektov, zvetravaním, odsekávanim. Tvrdo narazíte.

Ten lesík je prostý 24KB súbor /kód a dáta/, niet tam 20 mega textúr /a mipmáp/, 2 mega modelov /a ich LODov/, megabajt animácie, bez požiadavky na aspoň 2-4-8 giga VRAM v 1080p/4K. Nič z toho. Nižšie zas máte dioráma: krajinka, pyramída, stena, oblaky a hmlu v pár riadkoch kódu. Tak jednoduché to je. V stredoveku, pri pomalých počítačoch bolo rozumné uložiť objekt polygónový mesh a ocapať ho iks textúrami,  "vypočítať" sa to v reálnom čase ešte nedalo. Dnes máme k dispozícií 1000-10 000-100 000 krát a dostávate možnosť voľby.


 
// terrain float f;f = 0.50000000f*noise2f( 1.0f*x, 1.0f*z);f += 0.25000000f*noise2f( 2.0f*x, 2.0f*z);f += 0.12500000f*noise2f( 4.0f*x, 4.0f*z);f += 0.06250000f*noise2f( 8.0f*x, 8.0f*z);f += 0.03125000f*noise2f( 16.0f*x, 16.0f*z);f += 0.01562500f*noise2f( 32.0f*x, 32.0f*z);f += 0.00781250f*noise2f( 64.0f*x, 64.0f*z);f += 0.00390625f*noise2f(128.0f*x, 128.0f*z);f = 0.5f+0.5f*f;f = f*f*(3.0f-2.0f*f);f = f*f*(3.0f-2.0f*f);f = -2.5f + 1.5f*f;
// chinese wall float cx = x-1.5f*noise2f( 2.0f*x, 2.0f*z);float cz = z+1.5f*noise2f( 2.0f*x, 2.0f*z);float di = fabsf(cx+cz);if( di
// pyramid float g;z -= 2.0f;float rx = x*0.9f-z*0.2f;float rz = x*0.2f+z*0.9f;g = 0.25f - fabsf(rx*1.65f) - fabsf(rz*1.65f);g = ((int)(g*10.0f))/10.0f; // stairsif( fabsf(rx+rz) // select terrain or pyramid if( g>f ) f=g;return f;}}
 // void fog ( float *rgb, float t, const float *rayDir){float fog = (1.0f-m2xf(-2.5f*rayDir[1]*t) ) / rayDir[1];collerp(rgb, fog*0.01f, rgb, fogColor);} 

Často tu spomínam rôzne nové princípy modelovania objektov, ich umiestnenie v priestore, súradnicové systémy. Ako prekonať drakonické obmedzenie kombinácie polygon-textúra. Jedeným z nádejných adeptov je SDF /signed distance function-field/. Funkcia ktorá nám okrem  iného určí najkratšiu vzdialenosť istého bodu od určeného povrchu aj počas jeho pohybu. Funkcia pre guľu so stredom v jej centra a polomerom jedna je :



15/06/19

Tip na víťaza


Dvakrát do tej istej rieky nevstúpiš. Banálne porekadlo a pritom životne dôležitá rada pre konateľa každej firmy. Vyhrať a potvrdiť víťazstvo. Myslíte si, že niekto predpovedal ZX Spectrum jeho ohromný úspech alebo že Amiga 500 je vlastne bodka za spoločnosťou Commodore. Nebol zdrvujúci úspech nováčika PSone nepekným prekvapením pre SEGA a Nintendo ? Búrlivé časy, keď sa s vami zahráva šťastena a po jednom úspešnom cykle nemáte istotu, že príde ešte jeden a ďalší alebo už je čas založiť papier do tlačiarne s návrhom na osobný bankrot.

Rieka meandruje, výška hladiny vody sa mení, brod sa posúva. Neustále čelíte výzvam. Konzola má byť lacná, spoľahlivá /RROD/, programatorsky prístupná, vstriecna voči third party vývojárom, kvalitné first party hry. To by sme mali. Čo ďalej ? Božinku, online infraštruktúra, subskripčné modely, refresh HW uprostred generačného cyklu. Už mi dáte pokoj ? Nie.

Virtuálna konzola ala Google Stadia. Streaming hry z datacentra, streaming hry z konzoly do blízkeho okolia. Komplexný a globálny systém dostupnosti vášho konta, hernej knižnice kdekoľvek po svete. Ďalšie náklady, investície. Nielenže neustále máte reagovať na prichádzajúce „hrozby“. Správne ich máte predvídať aspoň 3 až 5 rokov dopredu. Prognózy, vízie, strategické rozhodnutia. Phil Spencere bol šokovaný tým, že Google Stadia je minimálne o 12 až 18 mesiacov pred ich vlastnou alternatívou xCloud.


Tabuľku som si požičal od jedného z armády analytikov, ktorý skúšajú odhadnúť, kto by to mohol vyhrať v nadchádajúcej generácii a prečo. Veľa zelenej je super, veľa červenej nie je super. Tencet vám nič nehovorí, po kliknutí na odkaz zistíte že je to čínsky gigant väčší ako SONY, Google a Amazon dokopy a má pod palcom všetko od hier, herného HW, sociálnych sieti, AI. Proste všetko. Bob s nami.

Kritéria, ktoré si analytik vybral: súčasná členská základňa, množstvo predplatiteľov, "hry ktoré musíte mať", adherencia third party vývojarov ku vašej platorme, sentiment a nadupané datacentrá. Až na posledný bod je SONY all-green, navyše otvorene rokuje s MS o tom, že sa priživí na ich AZURE /cloudová platforma/, takže je všetko poriešené a SONY to jasne vyhraje.

Vidím to skôr na Pyrrhovo víťazstvo a práve tie datacentrá vidím ako nášlapnú mínu. Rozhodne predpokladám, že ešte dlho bude hrať prim lokálna, fyzický prítomná konzola s doplnkovým šírením mediálneho obsahu do okolia a nemusia to byť len hry /PS Remote, PS5 ako server, viď strana č.5: H265 HEVC kódovanie až do 4K60 v reálnom čase/. PS Now sa sa tu zatiaľ iba motká a živorí.

Všetky tie "predpoklady" vyššie sú na môj vkus príliš relatívne, volatilné, "málo isté".  Spoliehať sa na sentiment, že SONY hry budú vždy komerčne úspešné, neodolateľné, že MS alebo čiňan nekúpi "silou" vývojára z tretej strany /Tencent spoluvlastní Fornite a PUBG !!, má podiely v Epic, Activsion Blizzard, Ubisoft a jeho obdoba služby STEAM je samozrejme raz tak veľká/, že niekto nepotiahne do boja s dumping cenami pri službách ako MS Game Pass. Množstvo zákerných obchodníckych techník. V láske a v obchode je všetko dovolené.

Nintendo stále ešte môže stavať na sentimente a na tých zopár IP čo má. Online služby, celé to moderné sociálne, cloudové rošambo ide úplne mimo nich, jej základňa to toleruje. SONY je však jediné z toho zvyšku čo tie "datacentrá" nemá, a je odkázaná na milosť konkurenčných hráčov. Vojak sa stará, voják sa má. Silný, pekný, nezávislý. SONY je závislé na AZURE. Taktické viťazstvo SONY je možné ale strategicky to nevidím ružovo, nepredpokladám, že SONY začne investovať v miliardách a bude poučné sledovať ako vyriešia tento najnovší problém.