Bien le bonjour.
Pour changer la couleur d'un objet avec GLES il y a plusieurs solutions.
Par exemple on peut utiliser en changeant la couleur de chaque vertex à l'aide d'une variable et un "attributeur" :
Ex du shader :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 "precision mediump float ;" + "varying vec4 v_Color;" + "void main(){" + " gl_FragColor = v_Color ;" + "}");Ou encore faire un shader spécial :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 colorBuffer.position(0); GLES20.glVertexAttribPointer(a_Color, 4, GLES20.GL_FLOAT, false, 0, colorBuffer); GLES20.glEnableVertexAttribArray(a_Color);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 "void main(){" + " gl_FragColor = vec4(1.0,0.0,0.0,0.75);" + "}");
Mais peut on commander simplement a GLES de dessiner tout ce qui va suivre dans une couleur sans avoir a le faire avec un buffer pour chaque vertex, mais en maîtrisant tout de même la couleur ?
EX :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 "precision mediump float ;" + "varying vec4 v_Color;" + "void main(){" + " gl_FragColor = v_Color ;" + "}");J'ai tenté avec des ce que j'ai trouvé mais sans résultat savez vous si cela existe ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 GLES20.glsetColor(a_Color,1.0,0.0,0.0,0.75);
Merci
Partager