Warning: mysql_query(): Access denied for user ''@'localhost' (using password: NO) in /data/vhosts/pralevis.com/httpdocs/wordpress/wp-content/plugins/gwolle-gb/functions/gwolle_gb_get_settings.func.php on line 26

Warning: mysql_query(): A link to the server could not be established in /data/vhosts/pralevis.com/httpdocs/wordpress/wp-content/plugins/gwolle-gb/functions/gwolle_gb_get_settings.func.php on line 26

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /data/vhosts/pralevis.com/httpdocs/wordpress/wp-content/plugins/gwolle-gb/functions/gwolle_gb_get_settings.func.php on line 27

Warning: mysql_query(): Access denied for user ''@'localhost' (using password: NO) in /data/vhosts/pralevis.com/httpdocs/wordpress/wp-content/plugins/gwolle-gb/functions/gwolle_gb_get_settings.func.php on line 26

Warning: mysql_query(): A link to the server could not be established in /data/vhosts/pralevis.com/httpdocs/wordpress/wp-content/plugins/gwolle-gb/functions/gwolle_gb_get_settings.func.php on line 26

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /data/vhosts/pralevis.com/httpdocs/wordpress/wp-content/plugins/gwolle-gb/functions/gwolle_gb_get_settings.func.php on line 27
Webgl :Andrea Pra Levis

Archive for the ‘ Webgl ’ Category

Salve a tutti!
Ricapitoliamo un pò il nostro operato: per il momento siamo capaci di disegnare figure e di assegnare ad esso dei colori base. Al momento però la nostra scena è piuttosto statica: a parte qualche variazione di colore proposto nell’esercizio, tutto rimane fisso ed invariato, come porvi rimedio?

ESEMPIO TRE: DISEGNARE UN POLIGONO IN MOVIMENTO

Per dare l’idea di movimento , l’idea più intuitiva che viene in mente è di ridisegnare ogni tot secondi il nostro poligono leggermente spostato rispetto al frame precedente, se l’intera operazione viene eseguita con con una velocità abbastanza ragionevole, il nostro occhio ci farà risultare il tutto con un momento continuo.
Per tale ragione dovremmo modificare sia la funzione DrawScene(), sia introdurre una nuova funzione che chiameremo Animation().Nel nostro esempio dovremmo disegnare un triangolo colorato che ruota su se stesso in senso antiorario.

Read the rest of this entry

Salve a tutti! Salutiamo il nuovo anno pubblicando il nuovo ciclo di Articoli, incentrati sull’uso dei colori, delle basi dell’animazione e sulle texture.Buona lettura.

ESEMPIO DUE: DISEGNARE UN POLIGONO COLORATO

Dopo aver terminato il nostro primo esempio, potremmo rimanere un pò  delusi circa la banalità della figura, ci vorrebbe un pò più di COLORE! ( perdonate la freddura ma ogni tanto bisogna smorzare i toni :) ). Forse qualcuno avrà notato che  quando definiamo il fragment shader,invochiamo la suddetta chiamata:

gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);

Cosa significano quei 4 numeri? Praticamente servono a codificare  il colore bianco usando il cosiddetto modello RGBA. In pratica, quei valori da 0.0(assenza) a 1.0( massimo), indicano l’intensità di questi quattro componenti ,necessari a formare un colore desiderato. I primi tre corrispondono ai tre colori primari, il quarto indica invece la trasparenza.

Read the rest of this entry

Salve a tutti!
Ora Analizzeremo l’ultima della funzioni di Inizializzazione:
Function: InitBuffer
I compiti della funzione:
1. Creare i Buffer
2. Riempire essi con i valori di partenza
Qua riportiamo il codice della funzione nel nostro esempio:
var triangleVertexPositionBuffer;
function initBuffers() {
triangleVertexPositionBuffer = gl.createBuffer();
gl.bindBuffer(gl.ARRAY_BUFFER, triangleVertexPositionBuffer);
var vertices = [
0.0,  1.0,  0.0,
-1.0, -1.0,  0.0,
1.0, -1.0,  0.0
];
gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(vertices), gl.STATIC_DRAW);
triangleVertexPositionBuffer.itemSize = 3;
triangleVertexPositionBuffer.numItems = 3;
}

Read the rest of this entry

In questo articolo analizzeremo due argomenti molto importanti del webgl: gli Shader e le prime due Funzioni di Inizializzazione.

Queste ultime vengono eseguite solo una volta allo start del progetto e hanno lo scopo di creare,caricare e inizializzare valori, strutture e file che verranno utilizzati durante l’esecuzione dell’applicazione. Elenchiamole brevemente:

-InitGL()
-InitShader()
-InitBuffer()

Ora spiegheremo gli obiettivi di ogni funzione,  traslasciando momentaneamente alcuni elementi che al momento risulterebbero troppo “pesanti da digerire”.

Read the rest of this entry

Salve a tutti! Questa sarà la prima di una serie di articoli sul mondo del WEBGL. Tale materiale non ha la pretesa di essere esaustivo su tale argomento ne di farvi apprendere tutti i concetti che ci stanno dietro: tramite piccoli esempi invece cercheremo di darvi un infarinatura e di darvi qualche concetto per interfacciarvi in un successivo momento su questo ambiente in costante evoluzione.
Premetto che tale documento non sarà esente da imprecisazioni o da dichiarazioni passibili di critica o parzialmente errate ma l’obbiettivo rimane quello di far apprendere una certa dimestichezza anche ad utenti con pochie nozioni, indi sarò costretto a passarci sopra.

Prima di iniziare, controlliamo di possedere i requisiti minimi:

Read the rest of this entry