
Il Chip R100:

La Radeon R100 è la prima generazione di chip grafici Radeon di ATI Technologies. La linea offre l'accelerazione 3D basata su Api Direct3D 7.0 e OpenGL 1.3, un notevole miglioramento nelle caratteristiche e prestazioni rispetto alla precedente architettura del chip Rage. I processori includono anche l'accelerazione 2D GUI, accelerazione video, e uscite video multiple.
Il primo prodotto dotato di chipset R100 fu il Radeon DDR, disponibile nella primavera del 2000 con 32 MB o 64 MB di ram, la card da 64 MB ha una velocità di clock leggermente più veloce con l'aggiunto delle uscite video-in e video-out, denominata VIVO. Queste carte sono state prodotte fino a metà del 2001, quando furono sostituite dalle Radeon 7500 (RV200).
Successivamente fu introdotto il Radeon SDR (con 32 MB di memoria SDRAM) per contrastare la scheda Nvidia, la GeForce 2 MX.
Sempre nel 2000 arrivò sul mercato la versione per OEM, la Radeon LE. Si tratta di una variante di funzionalità ridotte fatta da Athlon Micro. La scheda aveva un clock inferiore, fissato a 143 MHz per RAM e GPU, e manca di funzionalità Hyper Z.
Nel 2001 venne introdotta la Radeon 7200 dotata di memorie SDR.
Il Chip RV100:

Successivamente ATI introdusse una variante al fortunato chipset R100, denominato RV100, montato per la prima volta sulla Radeon VE, più tardi conosciuta come la Radeon 7000. RV100 ha un solo pixel-pipeline, nessun hardware T & L, una memoria con bus a 64-bit, e mancante di tecnologia HyperZ. Essa ha tuttavia aggiunto "Hydravision" supporto dual-monitor ed un RAMDAC integrato nel chipset. Dal punto di vista delle prestazioni 3D, RV100 aveva prestazioni leggermente minori rispetto alla controparte GeForce 2 MX.
Il Chip RV200:

La Radeon 7500 (RV200) si basa su un processo di nuova produzione a 150 nm. La maggiore densità e trucchetti vari per l'architettura ha permesso la GPU di funzionare a frequenze più elevate. Inoltre la scheda ha frequenza di clock e memorie operanti in asincrono. E 'stata la prima GPU ATI Direct3D 7-compliant per includere il supporto per doppio monitor (Hydravision). Radeon 7500 venne lanciato nella seconda metà del 2001, accanto alla Radeon 8500.
Le schede in sintesi:
Radeon 7500: si tratta di un chip video Radeon con frequenza di clock di 290 Mhz, ottenuta grazie al processo produttivo a 0.15 micron; la memoria, di tipo DDR, opera a 230 Mhz di clock. Questa scheda integra tutte le funzionalità del chip ATi Radeon e, pertanto, non è ottimizzata pienamente per il supporto alle API DirectX 8, al pari del resto del chip nVidia GeForce 2. La principale concorrente della scheda Radeon 7500 è rappresentata dal modello GeForce 3 Ti200, anche se i primi test comparativi hanno mostrato un sostanziale gap prestazionale a svantaggio della scheda ATi. Il costo della Radeon 7500 è di 399.000 lire IVA compresa.
Radeon 7200: questo è il nuovo nome dato da ATi alla scheda Radeon SDR, già in commercio; è basato su 64 Mbytes di memoria SDRAM, con bus memoria a 128bit; verrà venduto ad un prezzo di 249.000 lire IVA compresa.
Radeon 7000: questo, invece, è il nuovo nome dato alla scheda Radeon VE, già in commercio; ha una dotazione memoria di 32 Mbytes, di tipo DDR SDRAM con bus a 64bit; il chip non ha supporto T&L, funzionalità invece presente nel chip Radeon 7200, e verrà commercializzato ad un prezzo di 199.000 lire IVA compresa.
Caratteristiche tecniche a confronto:


L'architettura introdotta:

Hyper Z
Tutte le schede video più recenti soffrono una notevole limitazione nell'ottenimento dei più elevati frame rate assoluti, quello dato dalla bandwidth della memoria video; è infatti quest'ultima che rappresenta il vero collo di bottiglia alle prestazioni velocistiche nel momento in cui si utilizza una risoluzione elevata, soprattutto se accompagnata alla profondità colore di 32 bit. Oltre a questo, lo Z-Buffer, cioè la porzione di ram ove è conservata la posizione di un punto nello spazio 3D,è uno dei fattori che impegnano una considerevole porzione di bandwidth. Lo Z-buffer contiene le informazioni sulla profondità di un punto, ovvero sulla distanza rispetto all'osservatore; ogni valore dello Z-buffer è formato da un numero variabile di bit che ne determina la precisione, ad esempio, con uno Z-buffer a 16 bit ogni punto può avere 216 =65556 valori possibili di profondità. Uno Z-buffer a 32 bit quindi consente maggiore dettaglio e precisione ma produce una mole di dati decisamente più elevata, che va a sovraccaricare ulteriormente la bandwidth della ram, sulla quale già gravano i dati relativi alle textures.
Con la tecnologia Hyper Z, ATI intende appunto diminuire questa mole di dati, in modo da liberare bandwidth, che potrà esser quindi resa disponibile per svolgere più rapidamente le restanti operazioni. Questa tecnologia consiste in una particolare cache che effettua diversi tipi di compressione dei dati diretti allo Z-Buffer, e fa in modo che la maggior parte dei poligoni che non sono visibili all'osservatore (perché coperti da altri poligoni) vengano tralasciati nella fase di rendering, diminuendo abbastanza drasticamente la mole di dati da elaborare.
In una scena 3D il numero di poligoni coperti da altri può essere discretamente alto: immaginate ad esempio una scena di uno sparatutto 3D nella quale siano presenti numerose colonne e casse appoggiate sul terreno; tutte le superfici/oggetti coperti da essi non verranno renderizzati, risulta quindi ben intuibile un notevole risparmio di inutili calcoli. Secondo quanto dichiarato da ATI, questo significa un incremento percentuale, a livello pratico, della bandwidth in media del 20%, raggiungendo quindi il valore di 8Gb/sec circa. Oltre a questo anche il Fill rate crescerebbe, (anche se in linea teorica rimane ovviamente invariato) sino a ben 1,5GTexel/sec.
Bump Mapping introdotti:
ATI ha deciso di implementare nel chipset Radeon 256 il supporto a ben 3 diversi tipi di Bump Mapping: Emboss, Dot product 3 e Environment Mapped Bump Mapping.
L'apporto degli effetti di Bump Mapping si nota sopratutto nel fatto che i rilievi delle textures appaiono realistici da ogni punto di osservazione, mentre senza si ha una buona resa visiva soltanto quanto la texture è abbastanza distante rispetto all'osservatore. Il più semplice degli effetti supportati è l'Emboss, che non comporta un forte impatto sulle prestazioni, ma a sua volta è anche il meno realistico. Viene presa una height map texture, che viene privata delle fonti di luce, e con la sottrazione della prima con la seconda si ottiene quindi una texture chiamata Bump Map. Quest'ultima verrà poi combinata con la texture originale, completando quindi il processo.
Il secondo effetto è denominato "Dot product 3" e risulta decisamente più accurato del precedente, anche se richiede una determinata "bump map texture" che deve venir fornita per la realizzazione dell'effetto, e perciò richiede un supporto specifico da parte dei programmatori. Ad ogni pixel nella texture è attribuito un valore che indica l'inclinazione della superficie. Elaborando questi dati con la/e fonte/i di luce viene determinato in quale direzione deve venir riflessa la luce da ogni zona della superficie in questione. In questo modo la resa visiva apparirà decisamente più accurata e precisa rispetto al metodo precedente, che però non richiede particolare supporto da parte dei giochi.

Passiamo infine ad analizzare l'EMBM; l'effetto più complesso e dalla resa visiva migliore rispetto ai due precedenti. L'Emboss e il Dot Product3 infatti non sono per nulla adatti ad essere applicati su superfici brillanti o riflettenti come ad esempio metalli o liquidi. Essi inoltre hanno problemi aggiornando in tempo reale la height map, e perciò non sono adatti per effetti come ad esempio i movimenti dell'acqua o di un liquido qualsiasi. L' EMBM invece risolve questi problemi, al prezzo di della richiesta di un supporto specifico per tale effetto abbastanza laborioso.

In dettaglio, l'Environmental Mapped Bump Mapping permette di implementare quattro differenti tipologie di effetti:
- Surface bumps (incisioni, cortecce di alberi);
- Surface animations with reflections (increspature, onde del mare);
- Surface animations and morphing (fusioni, modifiche della pelle);
- Environment - atmosphere distortion (effetti di lente, luccichio del metallo).
Ognuno di questi tipi di effetti può essere implementato all'interno della scena 3D anche ricorrendo ad una geometria della scena più complessa; questo permette di avere maggiore dettaglio rispetto alla scena originaria ma non a livello di quanto ottenibile impiegando l'Environment Mapped Bump Mapping; questo almeno sino a quando il T&L o i processori non saranno abbastanza performanti da permettere l'utilizzo della prima soluzione.
L'idea alla base dell'Environment Mapped Bump Mapping è quella di avere una bump map contenente tutte le informazioni in merito alle variazioni, distorsioni oppure riflessioni di luce che intervengono sulla superficie alla quale viene applicata. I programmatori devono fornire la disponibilità di tre differenti textures perché possa essere applicato l'EMBM:
- texture di base (opzionale)
- bump map
- environment map
La environment map rappresenta quello che deve essere riflesso dalla superficie sulla quale è applicato l'EMBM; prima di applicare l'environmental map, viene applicata sulla superficie la bump map, così da generare le distorsioni e le variazioni della superficie (che sia quest'ultima semplice oppure con la texture di base applicata poco importa). Si ha così l'a resa finale dell'effetto, del quale è possibile vedere un esempio nell'immagine soprariportata. Il problema che si pone non è tanto quello riguardante l'impatto sulle prestazioni, che non dovrebbe essere eccessivo, in quanto l'utilizzo dell'EMBM avviene soltanto su alcune parti delle scene 3D, ma quello riguardante il supporto da parte degli sviluppatori dei giochi, che non appaiono molto orientati ad una complicazione così marcata nella creazione di ciò che riguarda la grafica di un gioco.
FSAA: Qualità d'immagine
Radeon DDR

GeForce 2 GTS

Voodoo5 5500
