Aggiungiamo attributi (per vertice!)
|
|
- Costantino Rosi
- 5 anni fa
- Visualizzazioni
Transcript
1 Prossimo passo: Aggiungiamo attributi (per vertice!) Roadmap: 1. includiamoli nel buffer 2. facciamoli prendere dal vetex puller 3. usiamoli nel vertex shader 4. (verranno inteprolati autmaticamente nel rast.) 5. usiamo la loro interpolaz nel fragment shader ES: attributo COLORE Se abbiamo, per ogni vertice: X,Y,Z (geometria = attributo di indice 0) R,G,B (attributo colore = attributo di indice 1) Vari modi per formattare dati: in un buffer interleaved: X0,Y0,Z0,R0,G0,B0, X1,Y1,Z1,R1,G1,B1, in buffer separati: X0,Y0,Z0, X1,Y1,Z1, R0,G0,B0, R1,G1,B1, oppure anche: X0,X1, Y0,Y1, Z0,Z1, R0,R1, G0,G1 etc segliamo questo Grafica computazionale - Es 01 1
2 Attributo colore Un secondo indice, per un altro attributo const positionattribindex = 0; const rgbattributeindex = 1; (globali, costanti) Aggiungiamo i dati es: un vertice blu, uno verde, uno rosso: var positions = [ 0.0, 0.0, 0.0,0.0,1.0, // 1st vertex 1.0, 0.0, 0.0,1.0,0.0, // 2nd vertex 0.0, 1.0, 1.0,0.0,0.0, // 3rd vertex ]; X0 Y0 R0 G0 B0 X1 Y1 R1 G1 B1 X2 Spieghiamo il formato dei buffer al Vertex Puller Attributo Posizione: n. elem = 2 (float) Buffer: X0 Y0 R0 G0 B0 X1 Y1 R1 G1 B1 X2 stride = 5 x 4 bytes stride gl.vertexattribpointer( positionattributeindex, 2, gl.float, false, 5*4, 0); Grafica computazionale - Es 01 2
3 Spieghiamo il formato dei buffer al Vertex Puller Attributo Colore: n. elem = 3 (floats) Buffer: X0 Y0 R0 G0 B0 X1 Y1 R1 G1 B1 X2 offset = 2 x 4 bytes stride = 5 x 4 bytes stride gl.vertexattribpointer( colorattributeindex, 3, gl.float, false, 5*4, 2*4); Negli shaders: prima attribute vec2 aposition; void main(void) { gl_position = vec4( aposition, 0.0, 1.0 ); } VERTEX Shader void main(void) { gl_fragcolor = vec4(0.0, 0.0, 1.0, 1.0); } FRAG Shad. Grafica computazionale - Es 01 3
4 Negli shaders: dopo L I N K attribute vec2 position; attribute vec3 basecolor; varying vec3 color; void main(void) { gl_position = vec4( position, 0.0, 1.0 ); color = basecolor ; } precision highp float; varying vec3 color; void main(void) { gl_fragcolor = vec4( color, 1.0); } VERTEX Shader FRAGMENT Shader Linguaggio GLSL: classi di allocazione attribute vec3 basecolor; varying vec3 color; attribute valore definito su ogni vertice nel vertex shader: INPUT (sola lettura) nel fragment shader: non usato varying valore che varia dentro la primitiva nel vertex shader: OUTPUT (sola scrittura) interpolato dal rasterizzatore nel fragment shader: INPUT (sola lettura) Grafica computazionale - Es 01 4
5 Linking di vertex e fragment shader Vertex Shader: input: gli attributes output: i varyings gl_position (vec4) LINK Fragment Shader: input: i varyings output: gl_fragcolor (vec4) gl_depth (float) (opzionale) Linguaggio GLSL: (per completezza) altre classi di allocazione const vec3 PINK_COLOR = vec3( 1.0, 0.5, 0.5 ); niente vec3 tmp ; const valore costante, noto a compilazione definito quando dichiarato (obbligatoriamente) risolto direttamente dal compilatore temporanea valore usa e getta, di lavoro var locale o globale lettura / scrittura nota: non sopravvive mai allo shader! (neanche se globale) Grafica computazionale - Es 01 5
6 Prossimo passo: Usiamo struttura mesh indexed Due tipi di buffer, detti: ARRAY_BUFFER array di vertici geometria + attributi, per vertice ELEMENT_ARRAY_BUFFER array di indici indici di vertice, per primitiva (element) connettività della mesh (l unico che usavamo prima) Prima mesh indicizzata: Un quad con diagonal split (4 vertici, 2 tris) V2 V3 var indices = [ 0,1,2, // 1st triangle 1,3,2, // 2nd triangle ]; V0 V1 Grafica computazionale - Es 01 6
7 Prepariamo il buffer di indici Un buffer ulteriore per la connettività della mesh Similmente agli altri buffer: var elbufferid = gl.createbuffer(); gl.bindbuffer(gl.element_array_buffer, elbufferid ); var indices = [ 0,1,2, // 1st triangle 1,3,2, // 2nd triangle ]; var indexdata = new Uint16Array( indices ); gl.bufferdata( gl.element_array_buffer, indexdata, gl.static_draw ); Dopo la bind, tutte le op su Element Array Buffer (rendering compreso) si riferiranno a questo buffer Disegnamo la mesh indicizzata gl.drawarrays( gl.triangles, 0, 3 ); mesh non indicizzata, quanti vertici (ogni 3 = un tri) gl.drawelements( gl.triangles, 6, gl.unsigned_short, 0 ); mesh indicizzata quanti indici di vertice (ogni 3 = un tri) tipo di ogni indice (short = 16 bit = 64K vertici max) da quale indice partire Grafica computazionale - Es 01 7
8 Piccole domande Come fai ad eseguire l altro diagonal split? (a dividere il quadrilatero diversamente nei due triangoli)? Vengono prodotti più o meno frammenti? Il risultato a schermo è indentico o differente? (pensa agli attributi nel punto in mezzo alla diagonale) Per una visione d insieme del codice, vedere l implementazione sul sito: Esercitaz 01 Consiglio: invece che utilizzare l implementazione fornita, scrivere la propria implementando uno ad uno tutti i passi come descritto qui, a partire dall esercitaz 00 Grafica computazionale - Es 01 8
9 WebGL pipeline con attributi e indexed Mesh: vertex buffer index buffer GPU-RAM vertex puller Input Vertex: XYZ (object space) + input attributes vertex shader Transformed Vertex: XYZW (clip space) + computed varying primitive assembler (& setup) Primitive: point (1xV) line (2xV) triangle (3xV) r r WebGL pipeline : rasterizer punti rasterizer lines rasterizer triangles Fragments: buffer pos (fixed, XY) + interpolated varying fragment shader Pixels: RGBa output combiner RGBa buffer to screen GPU-RAM Grafica computazionale - Es 01 9
Grafica Real-Time, Hardware Grafico e Linguaggi di Shading. Alessandro Martinelli
Grafica Real-Time, Hardware Grafico e Linguaggi di Shading Alessandro Martinelli Grafica Real Time Il concetto di 'Real Time' in ambito grafico ha una valenza molto particolare: Fino agli anni '80, solo
DettagliI Modelli 3D più comuni: Mesh poligonali
Modellazione 3D 3D Models for interactive applications Marco Tarini I Modelli 3D più comuni: Mesh poligonali Di triangoli, o mista (quadrilateri + triangoli) Struttura dati per modellare oggetti 3D GPU
DettagliGrafica al calcolatore - Computer Graphics
Grafica al calcolatore - Computer Graphics 8 Pipeline di rasterizzazione - 2 12/12/14 Grafica 2014 1 Riepilogo Operazioni geometriche Pixel processing 12/12/14 Grafica 2014 2 Rasterizzazione/scan connversion
DettagliANALISI E SVILUPPO DI SHADER GRAFICI IN LINGUAGGIO GLSL ANALYSIS AND DEVELOPMENT OF GRAPHICS SHADERS USING GLSL
UNIVERSITÀ DEGLI STUDI DI PARMA FACOLTÀ DI INGEGNERIA Corso di Laurea in Ingegneria Informatica ANALISI E SVILUPPO DI SHADER GRAFICI IN LINGUAGGIO GLSL ANALYSIS AND DEVELOPMENT OF GRAPHICS SHADERS USING
DettagliWebGL. Lezione 18: 15 Maggio 2014
WebGL Lezione 18: 15 Maggio 2014 Cronologia: Grafica 3D nell Hardware In principio (giurassico informatico) postazioni specializzate La Silicon Graphics si afferma come produttrice di workstation grafiche
DettagliComputer Graphics. 3D Rendering. Digital representation of 3D objects. Scena 3D rendering image. Geometry of a 3D object. 3D Model
Computer Graphics 3D Rendering Università dell Insubria Digital representation of 3D objects Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2014/15 Scena 3D rendering image
DettagliModelli per i materiali
Texture mapping 1 Modelli per i materiali Il realismo visivo può essere ottenuto mediante i modelli di illuminazione e dei materiali Per modellare i materiali si possono utilizzare delle immagini dette
DettagliIntroduzione alla GPGPU Corso di sviluppo Nvidia CUDATM. Davide Barbieri
Introduzione alla GPGPU Corso di sviluppo Nvidia CUDATM Davide Barbieri Contatti skype: davbar86 mail: davide.barbieri@ghostshark.it Panoramica corso Introduzione al mondo delle GPU Modello GPGPU Nvidia
DettagliHigh Dynamic Range Rendering in OpenGL
Università degli Studi di Trieste Corso di Laurea Specialistica in Ingegneria Informatica Elementi di Grafica Digitale High Dynamic Range Rendering in OpenGL Studente: Alberto Dotta - 81700080 Docente:
DettagliGrafica 3D per i beni culturali: 3D and rendering. Lezione 2: 23 Febbraio 2011
Grafica 3D per i beni culturali: 3D and rendering Lezione 2: 23 Febbraio 2011 1 Info pratiche Lezioni: Martedì 10.00-12.00 Lab H Mercoledì 12.00-14.00 (!) Lab M Ricevimento su appuntamento (vedi contatti)
DettagliPipeline di rendering. Pipeline di rendering. Outline. Grafica off-line vs Grafica real-time
Pipeline di rendering Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica per la Comunicazione a.a. 2013/2014 Outline Grafica off-line vs Grafica real-time
DettagliPipeline di rendering
Pipeline di rendering Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica per la Comunicazione a.a. 2012/2013 Outline Grafica off-line vs Grafica real-time
DettagliFondamenti di Grafica Tridimensionale
Fondamenti di Grafica Tridimensionale La Pipeline Grafica Marco Di Benedetto marco.dibenedetto@isti.cnr.it Visualizzazione dell Informazione noi siamo qui Informazione mondo reale (es: 3D scans) creazione
Dettagli1.1 Modello di un Processo di Rendering. Gestore delle Geometrie (Ricostruzione delle Geoemtrie e Clipping)
Capitolo 1 Esercizi sulla Pipeline di Rendering 1.1 Modello di un Processo di Rendering Componenti dell Architettura di Rendering: Processore Bus di Comunicazione Scheda Grafica Moduli della Pipeline di
DettagliTexture maps come assets
Texture mapping Ogni texel è Un colore RGB (color map, RGB map, diffuse map) Una normale (bump map, o normal map) Il coefficiente speculare (specular map) Un fattore di trasparenza (alpha map, o cutout
DettagliTipi di animazioni scripted
Tipi di animazioni scripted di oggetti composti di parti rigide anche con giunti: robot, macchine animazioni cinematiche / forward kinematics animations (mutamenti delle trasformaz di modellazione) di
DettagliLivello di approfondimento della lezione. Texture mapping di solito spiegato in corsi di CG di base
Texture mapping Davide Gadia, Daniele Marini Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica per la Comunicazione a.a. 2013/2014 Livello di approfondimento della lezione
DettagliModelli: formati, strutture dati, processing della mesh
Modelli: formati, strutture dati, processing della mesh Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica per la Comunicazione a.a. 2013/2014 Outline Modelli
DettagliComputer Graphics. Realtà Virtuale: il presente, il passato, 3D il Graphics futuro
Computer Graphics Immagine sul Raster Display Il RASTER è costituito da più SCAN LINES Ogni Scan Line è formata da più PIXEL La matrice di Pixel è memorizzata nel FRAME BUFFER Un unico frame buffer porterebbe
DettagliSVILUPPO DI UN GEOBROWSER 3D BASATO SU SHADER PER DISPOSITIVI IOS
Università di Trento SVILUPPO DI UN GEOBROWSER 3D BASATO SU SHADER PER DISPOSITIVI IOS Federico Devigili 113845 Relatore: Raffaele De Amicis Università di Tento Facoltà di scienze MM.FF.NN Corso di laurea
DettagliComputer Graphics. v 1. Rasterizer: lines (segmenti) la rasterizzazione from vertex to pixels. Rasterizzazione: lines (segmenti)
Computer Graphics Università dell Insubria Corso di Laurea in Informatica la rasterizzazione from vertex to pixels Rasterizer: lines (segmenti) Vertici (punti in R 3 ) computazioni per vertice Z Vertici
DettagliLa Pipeline Grafica. Vediamo come avviene il rendering, ovvero la visualizzazione di oggetti. Introduzione. La Pipeline Grafica.
La Pipeline Grafica Vediamo come avviene il rendering, ovvero la visualizzazione di oggetti. Introduzione La Pipeline Grafica Spazio vista Spazio 3D-screen Shading Rasterizzazione Rimozione delle facce
DettagliLinguaggio C. Fondamenti. Struttura di un programma.
Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C La nascita del linguaggio C fu dovuta all esigenza di disporre di un Linguaggio ad alto livello adatto alla realizzazione
DettagliAppunti del corso di Informatica 1. 6 Introduzione al linguaggio C
Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)
DettagliAppunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C
Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)
DettagliVRay Map: VRayEdgesTex
VRay Map: VRayEdgesTex INTRODUZIONE Uno dei classici impieghi della VRayEdgeTex consiste nella simulazione dell effetto filo di ferro, effetto simile a quello generato tramite l attivazione dell opzione
DettagliInformatica Teorica. Macchine a registri
Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire
DettagliGrafica e Geometria Computazionale
Grafica e Geometria Computazionale Andrea Torsello e Giuseppe Maggiore DAIS, CdL Informatica Via Torino, 155, Venezia Mestre Slides scaricabili da http://www.dsi.unive.it/~grafica/pls/slides.pdf Cos è
DettagliRendering. Visione Artificiale - 11 dicembre 2008. Agenda (1 di 2) - Rendering Real-Time e non Real Time. - Ambienti di moodellazione non Real Time
Rendering Visione Artificiale - 11 dicembre 2008 21/02/2008 Agenda (1 di 2) - Rendering Real-Time e non Real Time - Ambienti di moodellazione non Real Time 3D Studio MAX Maya Ambienti OpenSource: Blender
DettagliElaborazione e Visualizzazione di Modelli di Grandi Dimensioni di Terreni
Elaborazione e Visualizzazione di Modelli di Grandi Dimensioni di Terreni Elaborazione e Visualizzazione di Modelli di Grandi Dimensioni di Terreni E. Gobbetti F. Marton F. Bettio G. Pintore CRS4 Visual
DettagliINFORMATICA GRAFICA. 20 Aprile Introduzione a OpenGL. Michele Antolini michele.antolini@mail.polimi.it
Knowledge Aided Engineering Manufacturing and Related Technologies INFORMATICA GRAFICA 20 Aprile Introduzione a OpenGL michele.antolini@mail.polimi.it Computer graphics I programmi di grafica (non solo
DettagliUniversità di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.
Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record
DettagliProcedure di Basic Design. La logica della programmazione applicata alla didattica. IUAV Facoltà di Design e Arti Treviso, 09-10/12/2010
Procedure di basic design IUAV, Treviso 09-10/12/2010 Lorenzo Bravi 1 Procedure di Basic Design La logica della programmazione applicata alla didattica IUAV Facoltà di Design e Arti Treviso, 09-10/12/2010
DettagliLaboratorio di Programmazione Lezione 1. Cristian Del Fabbro
Laboratorio di Programmazione Lezione 1 Cristian Del Fabbro Reperibilità homepage corso: https://users.dimi.uniud.it/~cristian.delfabbro/teaching.php email: cristian.delfabbro@uniud.it telefono: 0432 558676
DettagliIl calcolatore. Architettura di un calcolatore (Hardware)
Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti
DettagliOpen Source 3D Engine. OpenGL Rendering System. Il Framework
Open Source 3D Engine OpenGL Rendering System Il Framework I moderni mezzi di programmazione, consentono a noi sviluppatori di utilizzare librerie avanzate e testate che si prestano eccellentemente allo
DettagliAlgebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono
DettagliProcesso di rendering
Processo di rendering Trasformazioni di vista Trasformazioni di vista Il processo di visione in tre dimensioni Le trasformazioni di proiezione 2 Rendering nello spazio 2D Il processo di rendering (visualizzazione)
DettagliGrafica Computazionale
Grafica Computazionale OpenGl + SDL Fabio Ganovelli fabio.ganovelli@isti.cnr.it a.a. 2005-2006 Storia Specifica di libreria per la scrittura di applicazioni di grafica 3D Cross-Language Cross-Platform
DettagliUnità Didattica 3 Linguaggio C. Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore.
Unità Didattica 3 Linguaggio C Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore. Funzioni Generalizzazione del concetto di funzione algebrica: legge che associa
DettagliNuove Hyundai Go! Brasil Limited Edition STANDARD POSE 4 fuoriclasse per la Coppa del Mondo.
Dettagli
Creare una funzione float square(float x). La funzione deve restituire il quadrato del parametro x.
Funzioni Esercizio 1 Creare una funzione float square(float x). La funzione deve restituire il quadrato del parametro x. Creare un altra funzione, di nome float cube(float x), che restituisce invece il
DettagliUNIVERSITÀ DEGLI STUDI DI SIENA
UNIVERSITÀ DEGLI STUDI DI SIENA FACOLTÀ DI INGEGNERIA Corso di Laurea Specialistica in Ingegneria Informatica, orientamento Robotica ed Automazione Tesi di Laurea Interazione Visuo-Aptica con Oggetti Deformabili
DettagliCapitolo 6 Interazione luce-materia
Capitolo 6 Interazione luce-materia Modelli di illuminazione Modello di illuminazione: formulazione matematica dell equazione del trasporto dell energia luminosa L equazione che risolve questo problema:
DettagliConcetti chiave. Struct. Variabili strutturate: il tipo struct Elementi di una struttura typedef e struct Array di strutture
Concetti chiave Struct Variabili strutturate: il tipo struct Elementi di una struttura typedef e struct Array di strutture Struct Per aggregare elementi di tipo diverso si utilizza una struttura. struct
DettagliL ambiente di simulazione SPIM
Architettura degli Elaboratori e delle Reti Lezione 14 L ambiente di simulazione SPIM Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 14 1/28
DettagliConcetto di Funzione e Procedura METODI in Java
Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile
DettagliIntroduzione al GPU Compu4ng con CUDA. Francesco Caruso francesco.caruso@polimi.it
Introduzione al GPU Compu4ng con CUDA Francesco Caruso francesco.caruso@polimi.it Contenu4 Come tu>o ebbe inizio: Evoluzione dell HW e del SW per la grafica GPU Compu4ng Introduzione a CUDA 5/13/11 Francesco
DettagliModellazione 3D della Via Lattea. in Unity
Modellazione 3D della Via Lattea Tutor accademici: Prof. Francesco Isgrò Prof. Giuseppe Longo in Unity Tutor aziendale: Dott. Massimo Brescia P. D Andrea Idea Realizzare una simulazione della Via Lattea:
DettagliGrafica al calcolatore - Computer Graphics
Grafica al calcolatore - Computer Graphics 7 Pipeline di rasterizzazione 23/11/13 Grafica 2013 1 Rasterization pipeline Sappiamo implementare ray casting (o ray tracing). Abbiamo tuttavia già visto che
DettagliIntroduzione Computer Graphics
Knowledge Aided Engineering Manufacturing and Related Technologies Dipartimento di Ingegneria Industriale Università di Parma Introduzione Computer Graphics Cosa e la computer graphics Computer Graphics
DettagliCWindow White Paper. Paolo Medici Dipartimento di Ingegneria dell Informazione dell Università di Parma 10 dicembre 2010
CWindow White Paper Paolo Medici Dipartimento di Ingegneria dell Informazione dell Università di Parma 10 dicembre 2010 draft-0.2 per gold-4.3 e gold-4.4 È possibile trovare l ultima versione di questo
Dettagli3) Il seguente numerale A1F0 in base 16 a quale numero in base 10 corrisponde?
Leggete attentamente le domande del test e date la/le vostra/e risposta/e. 1) Per quanto tempo la memoria RAM di un personal computer conserva le informazioni? Finchè lo hard disk funziona in modo corretto
DettagliPARTE III MACCHINE A REGISTRI
PARTE III MACCHINE A REGISTRI Macchine a registri (RAM) Modelli di costo RAM e macchine di Turing Macchine a registri elementari 1 3.1 MACCHINE A REGISTRI (RAM: Random Access Machines) Introdotte da Shepherdson
DettagliEsonero del corso di Programmazione a Oggetti
Esonero del corso di Programmazione a Oggetti Roma, 1 dicembre 2005 Considerate le seguenti definizioni di classi e interfacce in Java: interface Fumetto{ void esclama(); void utile(); class Personaggio
DettagliIntroduzione a API e game engine per la programmazione grafica
Introduzione a API e game engine per la programmazione grafica OpenGL e WebGL Davide Gadia Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica per la Comunicazione a.a.
DettagliIl programma OCTAVE per l insegnamento dell algebra lineare nella Scuola Secondaria p. 1
Il programma OCTAVE per l insegnamento dell algebra lineare nella Scuola Secondaria R. Vitolo Dipartimento di Matematica Università di Lecce SaLUG! - Salento Linux User Group Il programma OCTAVE per l
DettagliUniversità degli Studi di Catania Corso di Laurea Magistrale in Informatica Multimedia 2013/14. Cantarella Danilo. OpenCV Android
Università degli Studi di Catania Corso di Laurea Magistrale in Informatica Multimedia 2013/14 Cantarella Danilo Introduzione OpenCV (Open Source Computer Vision Library) è una libreria disponibile per
DettagliModelli 3D: come ottenerli
Come tutti gli asset, possible aquistarli Modellazione digitale manuale Lavoro dei modellatori digitali 2D concept artist 2D concepts / Sketches 3D modeller (modellatore digitale 3D) 3D low poly mesh 2015/2016
DettagliGrafica 3D Interattiva
Informatica Grafica ][ Marco Gribaudo marcog@di.unito.it Grafica 3D Interattiva sono una libreria di funzioni a basso livello per facilitare la scrittura di videogiochi e di applicazioni multimediali.
DettagliFasi di creazione di un programma
Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma
DettagliSistemi Web per il turismo - lezione 3 -
Sistemi Web per il turismo - lezione 3 - Software Si definisce software il complesso di comandi che fanno eseguire al computer delle operazioni. Il termine si contrappone ad hardware, che invece designa
DettagliAssembler di Spim. Assembler di SPIM. Struttura di un programma assembler. Direttive
Assembler di Spim Assembler di SPIM Il programma è organizzato in linee Ogni linea può contenere un commento che parte dal carattere # e si estende fino alla fine della linea Ogni linea che non sia bianca
DettagliIntroduzione. Costruzione di Interfacce Primi passi in OpenGL. Sierpinski Gasket. Sierpinski gasket. Event driven programming. Stuttura del programma
Introduzione Costruzione di Interfacce Primi passi in OpenGL cignoni@iei.pi.cnr.it http://vcg.iei.pi.cnr.it/~cignoni Abbiamo visto Cosa significa rendering L approccio object viewer Mettiamo in pratica
DettagliNonostante lo implementeremo in D3D10, l algoritmo è completamente indipendente dall API grafica usata. Per funzionare, questo richiede
Al giorno d oggi le ombre, nelle simulazioni 3D real time e non, sono diventate componenti fondamentali: nel corso del tempo si sono succedute una serie di tecniche per realizzarle in modo piu o meno realistico
Dettagli8 Microcontrollori PIC
8 Microcontrollori PIC 8.1 Descrizione generale Un microcontrollore è un dispositivo elettronico che opportunamente programmato è in grado di svolgere diverse funzioni in modo autonomo. Essenzialmente
Dettagli6^ parte : Acquisizione della temperatura con LM35. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)
6^ parte : Acquisizione della temperatura con LM35 Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) Esperienzan 5 Lo scopo è quello di far accendere due LED in base ad una soglia di temperatura
Dettagli3. La sintassi di Java
pag.9 3. La sintassi di Java 3.1 I tipi di dati statici In Java, come in Pascal, esistono tipi di dati statici predefiniti e sono i seguenti: byte 8 bit da -128 a 127 short 16 bit coincide con l integer
Dettagli10 - Programmare con gli Array
10 - Programmare con gli Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it
Dettaglivoid funzioneprova() { int x=2; cout<<"dentro la funzione x="<<x<<endl; }
FUNZIONI 57. Cosa servono le funzioni? A spezzare il programma in diverse parti relativamente indipendenti fra loro, ovvero interagenti sono attraverso i parametri di input ed IL VALORE di uscita. In questo
DettagliProfondità di Campo in Tempo Reale Stefano Maraspin (steve@qnet.it)
Università degli Studi di Udine - Corso di Grafica 3D Interattiva Anno Accademico 2006/07 - Docente dott. R. Ranon Profondità di Campo in Tempo Reale Stefano Maraspin (steve@qnet.it) 1) Introduzione 2)
DettagliLaboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 18 31/03/2014
Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 18 31/03/2014 Funzioni: Dichiarazione e Definizione La dichiarazione di una funzione serve a comunicare al compilatore quali sono
DettagliCLOUD AWS. #cloudaws. Community - Cloud AWS su Google+ Amazon Web Services. Servizio Amazon Elastic Transcoder
Community - Cloud AWS su Google+ Amazon Web Services Servizio Amazon Elastic Transcoder Oggi vedremo il servizio di Amazon Elastic Transcoder per la conversione video con struttura scalabile Hangout 12
DettagliElementi di programmazione Algoritmi Flow Chart, Fasi della programmazione Linguaggi Elementi di programmazione ad oggetti
Elementi di programmazione Algoritmi Flow Chart, Fasi della programmazione Linguaggi Elementi di programmazione ad oggetti ELEMENTI DI INFORMATICA UFC_05 1 Algoritmi Un algoritmo è una serie finita di
DettagliNomi e Ambiente. Nicola Fanizzi. Linguaggi di Programmazione [010194] 20 apr, 2016. Dipartimento di Informatica Università degli Studi di Bari
Nomi e Ambiente Nicola Fanizzi Dipartimento di Informatica Università degli Studi di Bari Linguaggi di Programmazione [010194] 20 apr, 2016 Sommario 1 Nomi Definizione Astrazione Elementare Progettazione
DettagliRappresentazione di oggetti 3D
Rappresentazione di oggetti 3D 1 Modellazione geometrica La modellazione geometrica riguarda le tecniche di rappresentazione di curve e superfici Surface modeling Rappresentazione della superficie di un
DettagliElementi di grafica raster
Elementi di grafica raster Le immagini Una immagine è una rappresentazione spaziale di un oggetto o di una scena Una immagine digitale è una rappresentazione di una scena anche 3D dopo il processo di acquisizione
DettagliTipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere
Tipi elementari, costanti 1 Tipi di dati VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori Tipi Semplici intero reale carattere Strutturati 2 1 Tipo intero Gli interi servono
DettagliProgramma Corso Game Design
Programma Corso Game Design Corso per diventare sviluppatore di videogames Game Development e Game designer - Miriamo a realizzare non solo un corso di design e programmazione ma anche a sviluppare nell
DettagliStruttura di un programma Java
Struttura di un programma Java Un programma in Java è un insieme di dichiarazioni di classi. Una classe non può contenere direttamente delle istruzioni, ma può contenere la dichiarazione di metodi, che
DettagliIntroduzione alla programmazione in C
Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale
DettagliPAES. Laurea Specialistica in Informatica. Analisi e sviluppo di un implementazione parallela dell AES per. architetture eterogenee multi/many-core
PAES Analisi e sviluppo di un implementazione parallela dell AES per architetture eterogenee multi/many-core Candidato Paolo Bernardi Relatore Osvaldo Gervasi Laurea Specialistica in Informatica Contesto
DettagliModelli di illuminazione avanzati
Modelli di illuminazione avanzati Davide Gadia, Daniele Marini Corso di Programmazione Grafica per il Tempo Reale Laurea Magistrale in Informatica per la Comunicazione a.a. 2013/2014 Outline Modelli BRDF
DettagliIL LASER SCANNER E IL TERRITORIO: applicazioni, metodologie operative, potenzialità del rilevamento con laser-scanner terrestre
INN.TEC. srl Consorzio per l Innovazione Tecnologica Università degli Studi di Brescia IL LASER SCANNER E IL TERRITORIO: applicazioni, metodologie operative, potenzialità del rilevamento con laser-scanner
Dettagli----------------------------------------------------------------
---------------------------------------------------------------- utilizzo frequente di chiamate a.. A differenza del Pascal, il C permette di operare con assegnamenti e confronti su dati di tipo diverso,
DettagliArchitettura di un Elaboratore
Architettura di un Elaboratore Fabio Massimo Zanzotto Ricapitoliamo puntate precedenti Cosa abbiamo a disposizione: Concetto di algoritmo (con eventuale parametrizzazione) Rappresentazione dell informazione
DettagliFondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009. Lab 02 Tipi semplici in C
Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009 Lab 02 Tipi semplici in C Obiettivo dell esercitazione Acquistare familiarità con i tipi di dato semplici supportati
DettagliLinguaggio Java. Robusto. Orientato agli oggetti. Protegge e gestisce dagli errori. Non permette costrutti pericolosi
Linguaggio Java Robusto Non permette costrutti pericolosi Eredità Multipla Gestione della Memoria Orientato agli oggetti Ogni cosa ha un tipo Ogni tipo è un oggetto (quasi) Protegge e gestisce dagli errori
DettagliUniamo VM e CACHE. Physically addressed. Physically Addressed. Prestazioni. Ci sono varie alternative architetturali. Sono quelle piu semplici
Uniamo VM e CACHE Physically addressed Ci sono varie alternative architetturali physically addressed virtually addressed virtually indexed Sono quelle piu semplici un dato puo essere in cache solo se e
DettagliIl software e la programmazione
Il software e la programmazione Concetti base sul software Elementi di programmazione Cenni sul linguaggio Pascal Che cosa è il software Determina ciò che un computer può fare Include istruzioni memorizzate
DettagliCORSO DI LAUREA IN INGEGNERIA.
CORSO DI LAUREA IN INGEGNERIA. FOGLIO DI ESERCIZI 4 GEOMETRIA E ALGEBRA LINEARE 2010/11 Esercizio 4.1 (2.2). Determinare l equazione parametrica e Cartesiana della retta dello spazio (a) Passante per i
DettagliIngegneria del Software
Ingegneria del Software Analisi Object Oriented ed Elementi di Programmazione OO Origini Le metodologie ad oggi nascono negli anni 70 ma si affermano solo nelgi anni 80 grazie alla nascita dei linguaggi
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliCorso di Grafica Computazionale
Corso di Grafica Computazionale Premesse Teoriche Docente: Massimiliano Corsini Laurea Specialistica in Ing. Informatica Università degli Studi di Siena Overview Premesse Teoriche Mini-ripasso geometria
DettagliIntroduzione al package ARENA
Introduzione al package ARENA Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev. 1.2 - Marzo 2003 ARENA Applicazione Windows che permette di creare modelli ed eseguire simulazioni del
Dettagli(1) - - (4) R4 = R7 * R7 (4) (2) (3) 5 - (4) rinviata perché in WAW con (3) 6 (3) e (4) ritirabili ma attendono il completamento di (2) (2) (3) (4)
Esercizio 1 (20%) Si assuma di avere una macchina con 10 registri ufficiali (da R0 a R9) e sufficienti registri segreti in grado di avviare 2 istruzioni per ciclo di clock. Tale macchina richiede 2 cicli
DettagliESERCIZIO 1 Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO
ESERCIZIO Riferimento: PROCESSORE PIPELINE e CAMPI REGISTRI INTER-STADIO Sono dati il seguente frammento di codice assemblatore che comincia all indirizzo indicato, e i valori iniziali specificati per
DettagliVon Neumann. John Von Neumann (1903-1957)
Linguaggio macchina Von Neumann John Von Neumann (1903-1957) Inventore dell EDVAC (Electronic Discrete Variables AutomaFc Computer), la prima macchina digitale programmabile tramite un soiware basata su
Dettagli400.090 VOLVO. Gearbox Models G7 - G8. Date 5/2012 File VOLC007.PDF
400.090 VOLVO Gearbox Models - 5/2012 File VOLC00.PDF Adattabile a : Suitable To : VOLVO 1 Modelli Cambio/ Gearbox Models - Oil Pump Repair Kit 51 48 Sealant + Front & Rear Oil Seals Const 5 6 4 14 29
DettagliGrafica computazionale
Grafica computazionale Lezione 4 (slide parzialmente basate su Computer Graphics - MIT Opencourseware Grafica Computazionale - Massimiliano Corsini Università di Siena) 1 Textures Riviste Abbiamo visto
Dettagli