Question

Je cherche http://www.swiftless.com/tutorials/glsl/ 3_glcolor.html qui a le code suivant:

void main() {
// Set the output color of our current pixel
gl_FragColor = gl_Color;}

J'ai essayé d'utiliser gl_Color sur mon WebGL. Je suis une erreur qui est gl_Color identificateur non déclaré.

Qu'est-ce que je fait de mal?

Merci d'avance pour votre aide.

Était-ce utile?

La solution

WebGL utilise Open GL ES 2.0 comme base, par conséquent, vous devez utiliser GLSL ES 1.0 pour les shaders. GLSL ES ne dispose pas d'un gl_Color, et donc vous devrez réécrire ce shader.

Autres conseils

Je pense que vous essayez de compiler le code GLSL en utilisant un compilateur régulier C.

On dirait qu'il est censé être le code C, mais il est en fait la source de GLSL -. Deisgned être compilé par le compilateur OpenGL GLSL, pas votre compilateur machine C

Le fragment shader a une variable définie avant 'gl_Color' qui est la sortie du vertex shader.

L'échantillon de référence vous a le code dans un fichier shader.frag, qui est référencé par shader.init (). La bibliothèque OpenGL gèrera la compilation en instructions GPU pour votre machine. Mettez le code dans ce fichier, et nous espérons que l'exemple fonctionnera:)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top