GTA 5 con grafica fotorealistica? Sì, merito di Intel e dell'intelligenza artificiale

GTA 5 con grafica fotorealistica? Sì, merito di Intel e dell'intelligenza artificiale

Intel, per ora solo a fini di studio, sta usando una rete neurale convoluzionale per cambiare i connotati a GTA V e renderne l'aspetto grafico più vicino a quello reale. Il risultato è molto interessante e l'approccio sembra potersi integrare con l'hardware e le tecnologie attuali.

di pubblicata il , alle 07:40 nel canale Videogames
Grand Theft AutoRockstar GamesIntelIntelligenza Artificiale
 
38 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
386DX4013 Maggio 2021, 14:03 #21
Originariamente inviato da: Techie
Stavo pensando a Battlezone (1980) e Mechwarrior 2 - Mercenaries (1996)

Pensavo pero' a titoli come Stunts (1990) o LHX (1990) o Test Drive 3 (1990). Ma sui primi textured certamente non potevano permettersi grandi cose senza l'aiuto di un hardware dedicato ma esempi appunto come Quake e Tomb Raider e come dimenticarsi Unreal o Half Life sono piuttosto validi anche senza accelerazione hardware. Certo non erano proprio i primi ok ma piu' o meno le tecnologie in gioco erano sempre le stesse. Ovviamente il vero salto lo permise la FPU del Pentium e l'arrivo di schede video PCI che anche senza feature dedicate al 3D aiutavano comunque in minimo nell'insieme.
radeon_snorky13 Maggio 2021, 14:25 #22
ok gta5...
provate a farlo con stunt car racer o un qualunque vg anni 90
a.peter13 Maggio 2021, 16:55 #23
Ray-Tacing è solo il nome figo da marketing adatto al mondo del gaming.
Nei software di modellazione 3D, o meglio (e soprattutto) nei software di rendering (talvolta sono il medesimo software) si chiama Illuminazione Globale.
Esistono diversi tipi di GI, più o meno random-precisi e di conseguenza più o meno pesanti.
Storicamente il fatto è che fino a tempi recenti fa, il rendering appunto, avveniva solo per CPU; negli ultimi anni invece sta facendo passi da gigante il rendering tramite GPU che spesso è più rapido, ma in realtà dipende, ma su sistemi più umani di solito permette una live view molto più rapida.
La cosa è che con la tecnica GI la CPU si fa il conto di moltissimi raggi-rimbalzi(che poi vanno a dare un risultato più realstico, ricordiamoci stiamo parlando di film, render architettonici e di prodotti, nonchè automotive), cosa non adatta per i videogiochi.
Ed è qui che arriva RT, hardware appositamente studiato per fare "solo" l'emissione di raggi e i loro rimbalzi, un numero comunque "irrisorio" di raggi, che però implementati a tecniche già esistenti nei videogiochi da una mano.
Di conseguenza per coloro che usano software di rendering 3d, tramite GPU (come potrebbe essere Octane o Redshift) avere i tensor core gli da una grossa mano nella live view, ma sostanzialmente sempre di Illuminazione globale si tratta, solo che si sfrutta l'aiuti di questi nuovi hw e sw.
386DX4013 Maggio 2021, 17:13 #24
Originariamente inviato da: a.peter
Ray-Tacing è solo il nome figo da marketing adatto al mondo del gaming.
Nei software di modellazione 3D, o meglio (e soprattutto) nei software di rendering (talvolta sono il medesimo software) si chiama Illuminazione Globale.
Esistono diversi tipi di GI, più o meno random-precisi e di conseguenza più o meno pesanti.
Storicamente il fatto è che fino a tempi recenti fa, il rendering appunto, avveniva solo per CPU; negli ultimi anni invece sta facendo passi da gigante il rendering tramite GPU che spesso è più rapido, ma in realtà dipende, ma su sistemi più umani di solito permette una live view molto più rapida.
La cosa è che con la tecnica GI la CPU si fa il conto di moltissimi raggi-rimbalzi(che poi vanno a dare un risultato più realstico, ricordiamoci stiamo parlando di film, render architettonici e di prodotti, nonchè automotive), cosa non adatta per i videogiochi.
Ed è qui che arriva RT, hardware appositamente studiato per fare "solo" l'emissione di raggi e i loro rimbalzi, un numero comunque "irrisorio" di raggi, che però implementati a tecniche già esistenti nei videogiochi da una mano.
Di conseguenza per coloro che usano software di rendering 3d, tramite GPU (come potrebbe essere Octane o Redshift) avere i tensor core gli da una grossa mano nella live view, ma sostanzialmente sempre di Illuminazione globale si tratta, solo che si sfrutta l'aiuti di questi nuovi hw e sw.


Infatti mi pareva di ricordare cosi' anche a me. Poi immagino che con le attuali architetture si possa fare anche altro assieme alla illuminazione globale, ma quella resta la tecnica di illuminazione che spazzerebbe via (se calcolata con la stessa complessità dei sw appunto suddetti, se in tempo reale) praticamente vent'anni di videogiochi che hanno cercato in ogni modo di simulare (anche bene) i risultati di un vero calcolo di illuminazione globale.
Se ne parlava gia' appunto quasi un ventennio fa. E i tempi di rendering su un Pentium 4 li ricordo tutti altro che tempo reale, potevi andare a mangiare e tornare che ancora stava calcolando il frame a 640x480 di una scena geometrica semplice.
CrapaDiLegno13 Maggio 2021, 17:20 #25
Originariamente inviato da: a.peter
Ray-Tacing è solo il nome figo da marketing adatto al mondo del gaming.
Nei software di modellazione 3D, o meglio (e soprattutto) nei software di rendering (talvolta sono il medesimo software) si chiama Illuminazione Globale.
Esistono diversi tipi di GI, più o meno random-precisi e di conseguenza più o meno pesanti.
Storicamente il fatto è che fino a tempi recenti fa, il rendering appunto, avveniva solo per CPU; negli ultimi anni invece sta facendo passi da gigante il rendering tramite GPU che spesso è più rapido, ma in realtà dipende, ma su sistemi più umani di solito permette una live view molto più rapida.
La cosa è che con la tecnica GI la CPU si fa il conto di moltissimi raggi-rimbalzi(che poi vanno a dare un risultato più realstico, ricordiamoci stiamo parlando di film, render architettonici e di prodotti, nonchè automotive), cosa non adatta per i videogiochi.
Ed è qui che arriva RT, hardware appositamente studiato per fare "solo" l'emissione di raggi e i loro rimbalzi, un numero comunque "irrisorio" di raggi, che però implementati a tecniche già esistenti nei videogiochi da una mano.
Di conseguenza per coloro che usano software di rendering 3d, tramite GPU (come potrebbe essere Octane o Redshift) avere i tensor core gli da una grossa mano nella live view, ma sostanzialmente sempre di Illuminazione globale si tratta, solo che si sfrutta l'aiuti di questi nuovi hw e sw.

No, assolutamente.
GI è una parte delle capacità del ray tracing, non è la sua caratteristica di base.
In un programma per modellare e renderizzare scende architettoniche magari basta per aumentare il realismo dell'immagine finale, ma ray tracing è molta altra roba.
Chiameresti Global Illumination l'algoritmo che ti permette di calcolare la rifrazione di una corpo trasparente?
Chiameresti Global Illumination l'algoritmo che permette di calcolare hightlights, riflessioni e ombre, caustiche e iridiscenze? Interferenze e anche DoF?

Global Illumination è la dicitura "povera" di qualcosa che è molto di più. Serve a voi architetti per non farvi andare il cervello in pappa con paroloni che vi spaventerebbero.
Da che è nato, si chiama Ray-tracing e ci sono programmi che lo calcolano prima di avere i programmi di modellazione e prima che il PC avesse anche più di 16 colori.
Infatti le applicazioni di modellazione sono nate su Amiga con Read4D e Imagine, poi LightWave e Cinema 4D. Ai tempi il PC non aveva ancora il mouse. E là si chiamava ray tracing.
sbaffo13 Maggio 2021, 18:02 #26
Originariamente inviato da: Pino90
no, è molto di più di un "color grader" avanzato. Vengono modificate focali, geometrie, riflessi, emissioni di luce etc.

Guarda le immagini qui: https://intel-isl.github.io/PhotorealismEnhancement/

Ad esempio sull'ultima si nota che l'erba cambia proprio geometria, la texture dell'asfalto è molto più realistica nella versione "IA" anche in fatto di rappresentazione delle buche etc.

Mah, a me sembra che l'asfalto sia semplicemente "piallato" cioè uniformato e ingrigito perdendo totalmente la sua "granularità" originale, come se lo avessero riasfaltato. (certo, hanno preso come modello immagini di città tedesche, se erano italiane altro che riasfalatato... )
Per quanto riguarda i reflessi sulla carrozzeria delle auto mi sembrano decisamente esagerati soprattutto nella quarta immagine, quella con le due auto sulla destra.

Diciamo che l'idea è buona, una AI object oriented che prenda gli oggetti dal processo di rendering per migliorarli e poi miscelarli col render, ma ha ancora molta strada da fare, giustamente essendo la prima prova.
Diciamo che hanno applicato l'idea del tile-rendering all'AI, modificandola in object AI-rendering.
Fos13 Maggio 2021, 18:14 #27
Originariamente inviato da: CrapaDiLegno
Dove è quello che sosteneva "per l'inferenza non serve HW dedicato, basta che le ALU sappiano elaborare INT4, quindi i tensor sono superflui?
Chissà, però in un topic ho visto uno che diceva che [I]"AMD non ha investito un solo transistor nel calcolo per l'AI visto che manca qualsiasi istruzione ottimizzata sia nelle sue CPU che nelle GPU"[/I]...
Per poi far finta di niente quando gli è stato sottolineato qualcosa di diverso.

Eccolo:
https://www.hwupgrade.it/forum/showthread.php?t=2940113

Non è che ti piace pensare che se i tensor non sono inutili lo sono tutti gli approcci diversi? Istruzioni ottimizzate non significa necessariamente co-processori, eh?

Ah, perché non mi posti il topic del tipo che citi, magari mi viene voglia di partecipare.
CrapaDiLegno13 Maggio 2021, 19:16 #28
Originariamente inviato da: Fos
Chissà, però in un topic ho visto uno che diceva che [I]"AMD non ha investito un solo transistor nel calcolo per l'AI visto che manca qualsiasi istruzione ottimizzata sia nelle sue CPU che nelle GPU"[/I]...
Per poi far finta di niente quando gli è stato sottolineato qualcosa di diverso.

Eccolo:
https://www.hwupgrade.it/forum/showthread.php?t=2940113

Non è che ti piace pensare che se i tensor non sono inutili lo sono tutti gli approcci diversi? Istruzioni ottimizzate non significa necessariamente co-processori, eh?

Ah, perché non mi posti il topic del tipo che citi, magari mi viene voglia di partecipare.


Si ho esagerato nel concetto, ti concedo che AMD ha investito questi 100 transistor per ALU per aggiungere 4 nuove istruzioni di calcolo con dimensioni inferiori a 16bit, ma non è avere qualcosa che sia usabile per l'inferenza delle IA.
Non è che "una approccio diverso è inutile", è semplicemente insufficiente per fare quello che si chiede.
Si potrà fare inferenza con RDNA2, sicuramente meglio che con RDN1 (che è concettualmente pari a roba del 2016), ma siamo come con l'RT: indietro e tanto. E finora non è stato dimostrato proprio nulla sotto questo punto di vista, esattamente come AMD non mostrava nulla delle "iperboliche" capacità di raytracing prima di RNA2 (e ora lo supporta giusto giusto e non ne fa certo un vanto, ma per i fanboy AMD avrebbe portato il raytracing anche alle schede più scrause senza perdita di performance perché bastavano le ALU e l'HW dedicato di NVidia era inutile).

Vedi qui che tempi di calcolo sono necessari con una 3090 e tutta la sua potenza di fuoco. Usare DirectML (le istruzioni di RDNA sono per supportare quella specifica funzionalità delle DX12) sulle ALU significa uccidere il resto dei calcoli grafici, questo lo sai vero?
Infatti a quanto pare AMD ha abbandonato l'idea di usare un sistema di inferenza come quello di Nvidia (o come sembra come quello che proporrà Intel) perché "non ja fa". O l'AI p la grafica. Usare l'AI per ridurre i tempi di calcolo grafici e poi rubare tempi di calcolo grafici con l'AI è un vero controsenso.

D'altronde il numero di transistor in RDNA2 è già davvero elevato solo per fare raster, aggiungere altra roba avrebbe portato la piastrella a diventare troppo grande (e troppo costosa per le console, dove una ha pure scelto di non usare tutto l'arsenale disponibile già senza metterci roba in più.

Il risultato netto è che AMD nell'AI è indietro almeno 2 generazioni rispetto ad Nvidia. Vedremo rispetto a Intel cosa riuscirà a fare, ma credo poco.
Come con il ray tracing (e parecchia altra roba anche in passato) aspettiamo la generazione successiva che sarà quella giusta. Se gli altri non fanno nulla nel frattempo...
Fos13 Maggio 2021, 19:52 #29
Prima non le aveva, ora è come se non le avesse. Beh, un passo alla volta...

Quanta potenza serva e per fare cosa ancora si deve vedere bene.
Anche col RT si diceva che l'integrazione avrebbe saturato il resto; Ora pare chiaro che in confronto a non avere i RA c'è una bella differenza, no?
O dobbiamo fare la prova con un'improbabile compatilbilità per bellezza di RDNA-1?

Quindi, come sopra, è difficile capire quanto e come quei calcoli saturino il resto, mentre e facile pensare che AMD insieme a MS (che potrebbe aver spinto per usufruirne su XSX) non abbiano pensato alla possibilità per sprecare spazio...

Per altro, anche solo per ipotizzare un'inutilità per congestione, bisognerebbe conoscere profondamente l'implementazione, a quale stadio avviene, quanto e come toglie ecc... Altrimenti parliamo tanto per tifoseria speranzosa nelle inutilità altrui. Con i commenti esagerati è quella l'impressione che dai, eh, e con i 100 transistor stai seguendo la stessa strada.

Col RT non sarebbe proprio la stessa cosa, tanto per evitare repliche sul pelo fuori dal piatto. Ad esempio, non è detto che se in RDNA-2 ci fossero stati 2 RA per CU il fratello sarebbe stato uno sfaticato...

Dopo, se la vogliamo mettere sulle opinioni blande, si potrebbe anche dire che l'implementazione AMD alla integro finché posso spesso viene considerata più elegante, anche per il rapporto spesa/resa, ma appunto sarebbe un modo di vederla senza saperla più di tanto.

Per quanto ne sappiamo, domani Nvidia potrebbe virare verso l'approccio AMD e/o viceversa, quindi meglio non forzare troppo, dopo tocca tornare troppo indietro e seguendo una strana diversa.
Non so se mi spiego.
CrapaDiLegno13 Maggio 2021, 20:46 #30
Mi da che vuoi fare l'avvocato delle cause perse di forza? O solo il fanboy offeso?

Originariamente inviato da: Fos
Prima non le aveva, ora è come se non le avesse. Beh, un passo alla volta...

Forse ti è sfuggito, così di passaggio, che Nvidia quelle stesse istruzioni le ha messe dico, in Pascal, nel 2016. E guarda caso nessuna applicazione che sfrutta l'AI è mai stata sviluppata per Pascal.

Forse ti è sfuggito, che nonostante quelle istruzioni ad hoc Turing era 6 volte più veloce. Ora parliamo della generazione successiva di quella tecnologia che è quasi 2 volte ancora più veloce.

Ma tu parli di roba che non capisci solo per il gusto di difendere una multinazionale che è 2 generazioni complete dietro la concorrenza.
Praticamente RDNA2 ha le stesse capacità AI di Pascal. Solo 5 anni dopo.

Originariamente inviato da: Fos
Quanta potenza serva e per fare cosa ancora si deve vedere bene.
Anche col RT si diceva che l'integrazione avrebbe saturato il resto; Ora pare chiaro che in confronto a non avere i RA c'è una bella differenza, no?
O dobbiamo fare la prova con un'improbabile compatilbilità per bellezza di RDNA-1?

Eh?
Chi ha detto che l'integrazione avrebbe saturato cosa?
Fatto sta che non serve fare alcuna prova con RDNA-1 (che per vergogna totale AMD non rende compatibile con DXR). Basta vedere cosa fa Pascal con DXR rispetto a Turing e capire che i core RT a qualcosa servono perché le prestazioni sono decisamente migliori che senza.
Potenza dell'HW dedicato vs roba buttala là tanto per dire "anche noi abbiamo il supporto".

Originariamente inviato da: Fos
Quindi, come sopra, è difficile capire quanto e come quei calcoli saturino il resto, mentre e facile pensare che AMD insieme a MS (che potrebbe aver spinto per usufruirne su XSX) non abbiano pensato alla possibilità per sprecare spazio...

Per altro, anche solo per ipotizzare un'inutilità per congestione, bisognerebbe conoscere profondamente l'implementazione, a quale stadio avviene, quanto e come toglie ecc... Altrimenti parliamo tanto per tifoseria speranzosa nelle inutilità altrui. Con i commenti esagerati è quella l'impressione che dai, eh, e con i 100 transistor stai seguendo la stessa strada.

Col RT non sarebbe proprio la stessa cosa, tanto per evitare repliche sul pelo fuori dal piatto. Ad esempio, non è detto che se in RDNA-2 ci fossero stati 2 RA per CU il fratello sarebbe stato uno sfaticato...

1, 2, 10, 100 unità frega nulla. Quello che conta sono i risultati e AMD è indietro con l'RT con la patchatura dell'ultimo minuto di una architettura che non era pensata per tale funzionalità. E i risultati sono abbastanza scarsi.
Là dove l'RT è usato per davvero (e non nei giochi sponsorizzati AMD che dicono di usarlo e poi lo fanno su 100 pixel e basta) le prestazioni delle GPU AMD cala a picco. E come non bastasse, mancano di tutto l'occorrente per riprendersi tramite qualche algoritmo di ricostruzione delle immagini.


Originariamente inviato da: Fos
Dopo, se la vogliamo mettere sulle opinioni blande, si potrebbe anche dire che l'implementazione AMD alla integro finché posso spesso viene considerata più elegante, anche per il rapporto spesa/resa, ma appunto sarebbe un modo di vederla senza saperla più di tanto.

Per quanto ne sappiamo, domani Nvidia potrebbe virare verso l'approccio AMD e/o viceversa, quindi meglio non forzare troppo, dopo tocca tornare troppo indietro e seguendo una strana diversa.
Non so se mi spiego.

Ma che vuoi provare con queste frasi monche che non dicono nulla?
Che AMD con un RT indietro più di una generazione e un supporto alla AI indietro di 2 sta facendo un buon lavoro perché "integra più che può"?
Integra cosa? La solita roba vecchia di 5 anni rispetto alla concorrenza?
Dove stanno tutte le funzioni avanzate che oggi si potrebbero usare e invece persegue la strada di propinare le stesse identiche cose del 2012 solo più veloci?

AMD oggi di buono ha solo il PP (che è di TSMC e lei paga caro) ed è stata costretta a integrare il minimo possibile (non tutto quello che può altrimenti le venivano piastrelle invece che die e i costi sarebbero stati ingestibili.
Non so se hai visto quanto guadagna AMD con il PP a 7nm... la vedo dura con quello a 5nm e tutto quello che ancora deve integrare... e magari senza il vantaggio del clock rispetto alla concorrenza che ha questo giro.

Ah, per concludere, finora chi ha inseguito e copiato alla grande è stata proprio AMD a partire da GCN e tutte le non-funzionalità che ha abbandonato con il VLIW per abbracciare l'architettura moderna delle SIMD già proposta da Nvidia 6 anni prima. E il tile rendering 4 anni dopo. E le istruzioni per l'IA (che poi non servono a niente fatte così come già visto) 5 anni dopo. E le unità RT 2 anni dopo. Chissà, magari tra 4 anni proporrà l'equivalente dei tensor core anche lei così che si potrà pensare di usare l'AI può proficuamente con tutti i giochi. 6 anni dopo la concorrenza.
Ma sì, aspettiamo (o solo speriamo per orgoglio?) che Nvidia viri verso la filosofia usata da AMD... prima però deve farsi superare e poi può copiare anche lei alla grande e nel frattempo fermare i progresso monopolizzando lo sviluppo dei giochi cone la fornitura dell'HW.. chissà se veramente avverrà il contrario, con console basate su HW Nvidia e quest'ultima che propone roba di 4 o 5 anni prima che tanto vende lo stesso visto che i giochi sul suo HW gireranno comunque bene.

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^