Rendering della scansione: Esplorare il realismo visivo attraverso le tecniche di rendering della scansione
Di Fouad Sabry
()
Info su questo ebook
Che cos'è il rendering della linea di scansione
Il rendering della linea di scansione è un algoritmo per la determinazione della superficie visibile, nella computer grafica 3D, che funziona riga per riga anziché su un poligono -per poligono o pixel per pixel. Tutti i poligoni da renderizzare vengono prima ordinati in base alla coordinata y superiore in cui appaiono per la prima volta, quindi ogni riga o linea di scansione dell'immagine viene calcolata utilizzando l'intersezione di una linea di scansione con i poligoni nella parte anteriore dell'elenco ordinato, mentre l'elenco ordinato viene aggiornato per scartare i poligoni non più visibili man mano che la linea di scansione attiva avanza lungo l'immagine.
Come trarrai vantaggio
( I) Approfondimenti e convalide sui seguenti argomenti:
Capitolo 1: Rendering della linea di scansione
Capitolo 2: Algoritmo di Painter
Capitolo 3: Rasterizzazione
Capitolo 4: Mappatura delle texture
Capitolo 5: Buffering Z
Capitolo 6: Pipeline grafica
Capitolo 7: Ritaglio (computer grafica)
Capitolo 8: Determinazione della superficie nascosta
Capitolo 9: Shader
Capitolo 10: Volume dell'ombra
(II) Rispondere alle domande più importanti del pubblico sul rendering scanline.
(III) Esempi reali dell'utilizzo del rendering scanline in molti campi.
A chi è rivolto questo libro
Professionisti, studenti universitari e laureati, appassionati, hobbisti e coloro che desiderano andare oltre le conoscenze o le informazioni di base per qualsiasi tipo di rendering di scanline.
Leggi altro di Fouad Sabry
Tecnologie Emergenti Nella Scienza Dei Materiali [Italian]
Correlato a Rendering della scansione
Titoli di questa serie (100)
Gruppo congiunto di esperti fotografici: Sfruttare la potenza dei dati visivi con lo standard JPEG Valutazione: 0 su 5 stelle0 valutazioniVisione artificiale subacquea: Esplorando le profondità della visione artificiale sotto le onde Valutazione: 0 su 5 stelle0 valutazioniModello di aspetto del colore: Comprendere la percezione e la rappresentazione nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniVisione computerizzata: Esplorare le profondità della visione artificiale Valutazione: 0 su 5 stelle0 valutazioniTrasformazione di Hough: Svelare la magia della trasformazione di Hough nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniTrasformata di Hadamard: Svelare il potere della trasformazione Hadamard nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniIstogramma dell'immagine: Svelare intuizioni visive, esplorare le profondità degli istogrammi delle immagini nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniCompressione delle immagini: Tecniche efficienti per l'ottimizzazione dei dati visivi Valutazione: 0 su 5 stelle0 valutazioniMappatura dei toni: Mappatura dei toni: prospettive illuminanti nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniDiffusione anisotropa: Miglioramento dell'analisi delle immagini attraverso la diffusione anisotropa Valutazione: 0 su 5 stelle0 valutazioniRiduzione del rumore: Miglioramento della chiarezza, tecniche avanzate per la riduzione del rumore nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniFiltro adattivo: Migliorare la visione artificiale attraverso il filtraggio adattivo Valutazione: 0 su 5 stelle0 valutazioniTrasformata del radon: Svelare modelli nascosti nei dati visivi Valutazione: 0 su 5 stelle0 valutazioniIstogramma dei gradienti orientati: Svelare il regno visivo: esplorare l'istogramma dei gradienti orientati nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniOmografia: Omografia: trasformazioni nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniVisione stereoscopica del computer: Esplorare la percezione della profondità nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniRilevamento dei bordi: Esplorare i confini nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniFunzione di corrispondenza dei colori: Comprendere la sensibilità spettrale nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniEqualizzazione dell'istogramma: Miglioramento del contrasto dell'immagine per una migliore percezione visiva Valutazione: 0 su 5 stelle0 valutazioniContorno attivo: Avanzamento della visione artificiale con tecniche di contorno attivo Valutazione: 0 su 5 stelle0 valutazioniRetinex: Svelare i segreti della visione computazionale con Retinex Valutazione: 0 su 5 stelle0 valutazioniSistema di gestione del colore: Ottimizzazione della percezione visiva negli ambienti digitali Valutazione: 0 su 5 stelle0 valutazioniRidipintura: Colmare le lacune nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniTrasformazione affine: Sbloccare le prospettive visive: esplorare la trasformazione affine nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniCorrezione gamma: Migliorare la chiarezza visiva nella visione artificiale: la tecnica di correzione gamma Valutazione: 0 su 5 stelle0 valutazioniModello del sistema visivo umano: Comprendere la percezione e l'elaborazione Valutazione: 0 su 5 stelle0 valutazioniModello a colori: Comprendere lo spettro della visione artificiale: esplorare i modelli di colore Valutazione: 0 su 5 stelle0 valutazioniMetodo di impostazione del livello: Avanzamento della visione artificiale, esplorazione del metodo dell'impostazione dei livelli Valutazione: 0 su 5 stelle0 valutazioniBanca filtri: Approfondimenti sulle tecniche del banco di filtri di Computer Vision Valutazione: 0 su 5 stelle0 valutazioniProfilo colore: Esplorare la percezione visiva e l'analisi nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioni
Ebook correlati
Rendering volumetrico: Esplorare il realismo visivo nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniDeterminazione della superficie nascosta: Svelare i segreti della visione artificiale Valutazione: 0 su 5 stelle0 valutazioniAlgoritmo di disegno di linee: Padroneggiare le tecniche per il rendering di immagini di precisione Valutazione: 0 su 5 stelle0 valutazioniGrafica raster: Comprendere i fondamenti della grafica raster nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniEditor di grafica vettoriale: Potenziare la creazione visiva con algoritmi avanzati Valutazione: 0 su 5 stelle0 valutazioniSuperficie procedurale: Esplorazione della generazione e dell'analisi delle texture nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniEditor di grafica raster: Trasformare le realtà visive: padroneggiare gli editor grafici raster nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniPartizionamento binario dello spazio: Esplorazione del partizionamento binario dello spazio: fondamenti e applicazioni nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniGrafica raster digitale: Svelare la potenza della grafica raster digitale nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniTexture Mapping: Esplorare la dimensionalità nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniShader: Esplorare i regni visivi con Shader: un viaggio nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniGrafica vettoriale: Padroneggiare la grafica vettoriale nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniGrafica di ray-tracing: Esplorazione del rendering fotorealistico nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniModellazione e rendering basati su immagini: Esplorare il realismo visivo: tecniche di visione artificiale Valutazione: 0 su 5 stelle0 valutazioniComputer grafica poligonale: Esplorando l'intersezione tra la computer grafica poligonale e la visione artificiale Valutazione: 0 su 5 stelle0 valutazioniRimozione delle linee nascoste: Svelare l'invisibile: i segreti della visione artificiale Valutazione: 0 su 5 stelle0 valutazioniAnti aliasing: Migliorare la chiarezza visiva nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniRendering di grafica computerizzata: Esplorare il realismo visivo: approfondimenti sulla computer grafica Valutazione: 0 su 5 stelle0 valutazioniIlluminazione globale: Visione avanzata: approfondimenti sull'illuminazione globale Valutazione: 0 su 5 stelle0 valutazioniMappatura dei rilievi: Bump Mapping: esplorazione della profondità nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniMappatura dei colori: Esplorare la percezione visiva e l'analisi nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniProfilo colore: Esplorare la percezione visiva e l'analisi nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniTagli del grafico di visione artificiale: Esplorazione dei tagli grafici nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniRegolazione del pacchetto: Ottimizzazione dei dati visivi per una ricostruzione precisa Valutazione: 0 su 5 stelle0 valutazioniAlgoritmo della linea di Bresenham: Rendering delle linee efficiente e pixel perfetto per la visione artificiale Valutazione: 0 su 5 stelle0 valutazioniComputer grafica di vertice: Esplorando l'intersezione tra la computer grafica di vertice e la visione artificiale Valutazione: 0 su 5 stelle0 valutazioniSistema di gestione del colore: Ottimizzazione della percezione visiva negli ambienti digitali Valutazione: 0 su 5 stelle0 valutazioniDisegno tecnico: Sbloccare la visione artificiale attraverso il disegno tecnico Valutazione: 0 su 5 stelle0 valutazioniModellazione geometrica: Esplorazione della modellazione geometrica nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioniStima del movimento: Progressi e applicazioni nella visione artificiale Valutazione: 0 su 5 stelle0 valutazioni
Intelligenza artificiale e semantica per voi
ANonniMus: Vecchi rivoluzionari contro giovani robot Valutazione: 0 su 5 stelle0 valutazioniSelf-Publishing del Futuro per Scrittori 2.0: Self-Publishing Facile Valutazione: 0 su 5 stelle0 valutazioniGuida Intelligenza Artificiale Valutazione: 0 su 5 stelle0 valutazioniIl Terzo Like Valutazione: 0 su 5 stelle0 valutazioni
Recensioni su Rendering della scansione
0 valutazioni0 recensioni
Anteprima del libro
Rendering della scansione - Fouad Sabry
Rendering della linea di scansione
Il rendering della linea di scansione (anche rendering della linea di scansione e rendering della linea di scansione) è un approccio per determinare le superfici visibili nella grafica computerizzata 3D che opera riga per riga anziché su una base poligono per poligono o pixel per pixel. Ogni riga o linea di scansione dell'immagine viene calcolata utilizzando l'intersezione di una linea di scansione con i poligoni nella parte anteriore dell'elenco ordinato, mentre l'elenco ordinato viene aggiornato per eliminare i poligoni non più visibili man mano che la linea di scansione corrente avanza lungo l'immagine.
Il vantaggio principale di questo metodo è che riduce la quantità di confronti tra gli spigoli ordinando i vertici lungo la normale del piano di scansione. Inoltre, non è essenziale tradurre le coordinate di tutti i vertici dalla memoria principale alla memoria di lavoro; Solo i vertici che formano i bordi che attraversano la linea di scansione corrente devono essere presenti nella memoria attiva e ogni vertice viene letto una sola volta. La memoria principale è spesso molto più lenta del collegamento tra l'unità di elaborazione centrale e la memoria cache; Pertanto, evitare di accedere nuovamente ai vertici nella memoria principale potrebbe comportare un'accelerazione significativa.
Questo tipo di algoritmo può essere facilmente unito a una varietà di altre tecniche grafiche, tra cui il modello di riflessione Phong e l'algoritmo Z-buffer.
I bordi dei poligoni proiettati vengono in genere inseriti in bucket, uno per linea di scansione; il rasterizzatore mantiene una tabella dei bordi attiva (AET). Le voci conservano i collegamenti di ordinamento, le coordinate X, le sfumature e i riferimenti ai poligoni associati. Per rasterizzare la linea di scansione successiva, gli spigoli irrilevanti vengono eliminati e i nuovi spigoli del bucket Y della linea di scansione corrente vengono posizionati in ordine di coordinate X. Nelle voci della tabella degli spigoli attiva, X e altri parametri vengono aumentati. Le voci per le tabelle di spigoli attive vengono mantenute in un elenco ordinato a X, causando una modifica quando due spigoli si intersecano. Dopo l'aggiornamento degli spigoli, la tabella degli spigoli attiva viene attraversata in ordine X per generare solo le campate visibili, mantenendo una tabella delle campate attiva ordinata in Z e inserendo ed eliminando le superfici quando gli spigoli vengono incrociati.
Un ibrido di questo e Z-buffering elimina l'ordinamento attivo della tabella dei bordi e rasterizza una linea di scansione alla volta in un buffer Z, mantenendo le estensioni poligonali attive da una linea di scansione all'altra.
In una seconda forma, un buffer ID viene rasterizzato in una fase intermedia, consentendo ai pixel visibili risultanti di avere la loro ombreggiatura ritardata.
Nel 1967, Wylie, Romney, Evans ed Erdahl probabilmente pubblicarono per la prima volta la tecnica di rendering della linea di scansione. Il gruppo grafico di Ivan Sutherland presso l'Università dello Utah e la società Evans & Sutherland di Salt Lake City hanno svolto gran parte del lavoro iniziale su queste tecnologie.
La prima linea di generatori di immagini (IG) ESIG di Evans & Sutherland utilizzava l'approccio nell'hardware al volo
per generare immagini una linea raster alla volta senza un framebuffer, eliminando così la necessità di una costosa memoria all'epoca. Le varianti successive utilizzavano una strategia mista.
Il Nintendo DS è l'hardware più recente in grado di eseguire il rendering di scene 3D in questo modo, con la possibilità di memorizzare nella cache la grafica rasterizzata in VRAM.
L'hardware sprite onnipresente nelle console per videogiochi degli anni '80 è un tipo rudimentale di rendering scanline.
L'approccio è stato utilizzato per il rendering software dell'ambiente circostante nel motore originale di Quake (ma gli oggetti in movimento erano bufferizzati con lo Z). La prioritizzazione dello scenario statico si basava sull'ordinamento derivato da BSP. Ha mostrato una superiorità rispetto ai metodi di Z-buffer/type painter nella gestione di scene con costose operazioni sui pixel e un'elevata complessità di profondità (ad esempio, mappatura delle texture corretta per la prospettiva senza assistenza hardware). Questa pratica ha preceduto l'ampia adozione delle GPU basate su buffer Z, che sono attualmente prevalenti sui PC.
Durante lo sviluppo della PlayStation 3, Sony ha sperimentato con renderizzatori software scanline su un secondo processore Cell prima di optare per una configurazione standard CPU/GPU.
Allo stesso modo, nel rendering affiancato (in particolare il processore PowerVR 3D), le primitive vengono ordinate nello spazio dello schermo e renderizzate una tessera alla volta nella memoria rapida su chip. Nello spirito del rendering della linea di scansione hardware, il Dreamcast aveva una modalità per rasterizzare una riga di tessere alla volta per la scansione raster diretta, eliminando la necessità di un framebuffer completo.
Alcuni rasterizzatori software utilizzano lo span buffering
(o coverage buffering
), in cui un elenco di intervalli ordinati e ritagliati viene memorizzato in bucket di scanline. Una serie di primitive verrebbe applicata a questa struttura dati prima di rasterizzare solo i pixel visibili.
Il vantaggio principale del rendering della linea di scansione rispetto allo Z-buffering è che il numero di volte in cui i pixel visibili vengono elaborati è mantenuto al minimo assoluto, che è sempre uno se non vengono applicati effetti di trasparenza, il che è vantaggioso in caso di alta risoluzione o costosi calcoli di ombreggiatura.
Miglioramenti simili possono essere ottenuti negli attuali sistemi Z-buffer utilizzando l'ordinamento grezzo fronte-retro (che si avvicina al metodo dei pittori inversi
), lo Z-reject precoce (in combinazione con la Z gerarchica) e le meno frequenti tecniche di rendering differito disponibili su GPU programmabili.
Gli approcci scanline che operano sul raster hanno lo svantaggio di non gestire correttamente il sovraccarico.
Non si ritiene che la tecnica sia scalabile in modo efficace all'aumentare del numero di primitive.