This shows you the differences between two versions of the page.
spg:laboratoare:01 [2023/10/03 14:24] anca.morar [Geometry Shader] |
spg:laboratoare:01 [2023/10/03 15:02] (current) anca.morar [Cerințe laborator] |
||
---|---|---|---|
Line 105: | Line 105: | ||
</code> | </code> | ||
- | * De asemenea există și intrare implicită la geometry shader, numită ''gl_in'', din care ne interesează ''gl_Position'': <code glsl> | + | * De asemenea, există și intrare implicită la geometry shader, numită ''gl_in'', din care ne interesează ''gl_Position'': <code glsl> |
in gl_PerVertex | in gl_PerVertex | ||
{ | { | ||
Line 121: | Line 121: | ||
Pentru fiecare vârf emis din geometry shader se pot asocia coordonate textură, normală, culoare, asociate vârfului (setate înainte de fiecare apel ''EmitVertex()''). | Pentru fiecare vârf emis din geometry shader se pot asocia coordonate textură, normală, culoare, asociate vârfului (setate înainte de fiecare apel ''EmitVertex()''). | ||
Acestea trebuie declarate ca variabile de ieșire. | Acestea trebuie declarate ca variabile de ieșire. | ||
- | După cum se poate observa, valoarea lui ''geom_texcoord'' este actualizată înainte de fiecare apel ''EmitVertex()'': | + | După cum se poate observa, valoarea lui ''geom_texcoord'' este actualizată înainte de fiecare apel ''EmitVertex()'':<code glsl> |
- | + | ||
- | <code glsl> | + | |
gl_Position = gl_in[0].gl_Position; | gl_Position = gl_in[0].gl_Position; | ||
geom_texcoord = vert_texcoord[0]; | geom_texcoord = vert_texcoord[0]; | ||
Line 129: | Line 127: | ||
</code> | </code> | ||
+ | Într-un geometry shader se pot emite mai multe primitive (comanda ''EmitVertex()'' se poate da o dată sau de mai multe ori). | ||
==== Cerințe laborator ==== | ==== Cerințe laborator ==== | ||
Line 143: | Line 142: | ||
- | {{:spg:laboratoare:bambusi_pe_coloane.jpg?500| }} | + | {{:spg:laboratoare:bambusi_pe_coloane.jpg?650| }} |
- | {{:spg:laboratoare:shrink.png?500| }} | + | |
+ | {{:spg:laboratoare:lab1_scalare.png?650| }} | ||
+ | |||
+ | {{:spg:laboratoare:efect_scalare.png?650| }} | ||