Che aspetto hanno gli ombreggiatori GLSL di vertice, frammento e geometria di default per la versione # 330?Come sono gli shader GLSL predefiniti? per la versione 330
Userò #version 330
GLSL versione 3.30 NVIDIA tramite compilatore Cg, perché è quello che supporta la mia scheda grafica.
Con gli shader di default, intendo shader che fanno esattamente la stessa cosa che farebbe la scheda grafica quando il programma shader è disattivato.
Non riesco a trovare un buon esempio per #version 330
. Stato googling tutto il giorno. Non sono sicuro se il termine shader predefinito è chiamato qualcos'altro come banale o di base e se è per questo motivo non riesco a trovarlo.
Qualsiasi suggerimento per un libro con la versione 330 o collegamento a un facile tutorial per principianti con la versione 330 sarebbe ottimo.
esempio di vertex banale #version 110, fa la trasformazione predefinita vertice
#version 110
void main()
{
gl_Position = gl_ProjectionMatrix * gl_ModelViewMatrix * gl_Vertex;
}
esempio di uno shader frammento banale #version 110, si trasforma in colore rosso
#version 110
void main()
{
gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
}
Nel senso più tecnico, non è possibile disattivare lo shader nel nucleo GL 3.3, poiché la capacità di eseguire il rendering senza shader è stata rimossa in [contesti OpenGL core] (http://www.opengl.org/wiki/Core_And_Compatibility_in_Contexts) . Il Wiki di OpenGL mantiene un [elenco di esercitazioni basate su shader] (http://www.opengl.org/wiki/Getting_started#Tutorials_and_How_To_Guides) (uno dei quali è mio), ma nessuno di essi ha shader che si mappano direttamente su cosa fisso -funzionalità farebbe Questo è probabilmente il * peggiore * modo di apprendere comunque la programmazione basata sullo shader. –