Differences

This shows you the differences between two versions of the page.

Link to this comparison view

egc:laboratoare:07 [2022/11/18 17:47]
andrei.lambru
egc:laboratoare:07 [2022/11/22 09:38] (current)
andrei.lambru
Line 23: Line 23:
  
 <code glsl> <code glsl>
-     vec3 culoare = emisiva + ambientala + difuza + speculara; # GLSL+     ​culoare = emisiva + ambientala + difuza + speculara; # GLSL
 </​code>​ </​code>​
  
Line 34: Line 34:
 Avem astfel: Avem astfel:
 <code glsl> ​ <code glsl> ​
-     vec3 emisiva = Ke; # GLSL+     ​emisiva = Ke; # GLSL
 </​code>​ </​code>​
 <note tip> <note tip>
Line 53: Line 53:
  
 <code glsl> <code glsl>
-     vec3 ambientala = Ka * culoareAmbientalaGlobala;​ # GLSL+     ​ambientala = Ka * culoareAmbientalaGlobala;​ # GLSL
 </​code>​ </​code>​
  
Line 72: Line 72:
 $difuza = K_d \cdot culoareLumina \cdot max(\vec{N}\cdot \vec{L}, 0)$ $difuza = K_d \cdot culoareLumina \cdot max(\vec{N}\cdot \vec{L}, 0)$
 <code glsl> <code glsl>
-     vec3 difuza = Kd * culoareLumina * max (dot(N,L), 0); # GLSL+     ​difuza = Kd * culoareLumina * max (dot(N,L), 0); # GLSL
 </​code>​ </​code>​
 <note tip> <note tip>
Line 105: Line 105:
 $speculara = K_s \cdot culoareLumina \cdot primesteLumina \cdot (max(\vec{V}\cdot \vec{R}, 0))^n$ $speculara = K_s \cdot culoareLumina \cdot primesteLumina \cdot (max(\vec{V}\cdot \vec{R}, 0))^n$
 <code glsl> <code glsl>
-     vec3 speculara = Ks * culoareLumina * primesteLumina * pow(max(dot(V,​ R), 0), n) # GLSL+     ​speculara = Ks * culoareLumina * primesteLumina * pow(max(dot(V,​ R), 0), n) # GLSL
 </​code>​ </​code>​
  
Line 134: Line 134:
 $speculara = K_s \cdot  culoareLumina \cdot  primesteLumina \cdot  (max(\vec{N}\cdot \vec{H}, 0)^n $ $speculara = K_s \cdot  culoareLumina \cdot  primesteLumina \cdot  (max(\vec{N}\cdot \vec{H}, 0)^n $
 <code glsl> <code glsl>
-     vec3 speculara = Ks * culoareLumina * primesteLumina * pow(max(dot(N,​ H), 0), n) # GLSL+     ​speculara = Ks * culoareLumina * primesteLumina * pow(max(dot(N,​ H), 0), n) # GLSL
 </​code>​ </​code>​
  
Line 141: Line 141:
 Atunci ​ când sursa de lumină punctiformă este suficient de îndepărtată de obiectele scenei vizualizate,​ vectorul $\vec{L}$ este același în orice punct. Sursa de lumină este numită în acest caz direcțională. Aplicând modelul pentru vizualizarea a două suprafețe paralele construite din același material, se va  obține o aceeași intensitate (unghiul dintre $\vec{L}$ și normală este același pentru cele două suprafețe). Dacă proiecțiile suprafețelor se suprapun în  imagine, ​ atunci ele nu se  vor  distinge. ​ Această situație apare deoarece în  model nu se ține cont de faptul că intensitatea luminii descrește proporțional cu inversul pătratului distanței de la sursa de lumină la obiect. Deci, obiectele mai îndepărtate de sursă sunt mai slab luminate. O posibilă corecție a  modelului, care poate fi aplicată pentru surse poziționale (la distanță finită de scenă) este: Atunci ​ când sursa de lumină punctiformă este suficient de îndepărtată de obiectele scenei vizualizate,​ vectorul $\vec{L}$ este același în orice punct. Sursa de lumină este numită în acest caz direcțională. Aplicând modelul pentru vizualizarea a două suprafețe paralele construite din același material, se va  obține o aceeași intensitate (unghiul dintre $\vec{L}$ și normală este același pentru cele două suprafețe). Dacă proiecțiile suprafețelor se suprapun în  imagine, ​ atunci ele nu se  vor  distinge. ​ Această situație apare deoarece în  model nu se ține cont de faptul că intensitatea luminii descrește proporțional cu inversul pătratului distanței de la sursa de lumină la obiect. Deci, obiectele mai îndepărtate de sursă sunt mai slab luminate. O posibilă corecție a  modelului, care poate fi aplicată pentru surse poziționale (la distanță finită de scenă) este:
 <code glsl> <code glsl>
-     vec3 culoareObiect = emisiva + ambientala + factorAtenuare * ( difuza + speculara ); # GLSL+     ​culoareObiect = emisiva + ambientala + factorAtenuare * ( difuza + speculara ); # GLSL
 </​code>​ </​code>​
  
egc/laboratoare/07.1668786474.txt.gz · Last modified: 2022/11/18 17:47 by andrei.lambru
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0