Textures et couleurs

Re: Textures et couleurs

by Eliott Adrien Rene Mea -
Number of replies: 0

Voici mes deux fonctions,elles ne font pas partie de mon projet car sont juste un moyen de relier texture et couleurs (je ne me servirais donc pas de la classe triangle et j'ai modifié ma méthode dessinePlan) :


void VueOpenGL::dessinePlan (QMatrix4x4 const& point_de_vue){
    prog.setUniformValue("vue_modele", matrice_vue * point_de_vue);
    prog.setUniformValue("textureId", 0);
    QOpenGLFunctions *glFuncs = QOpenGLContext::currentContext()->functions();
    glFuncs->glActiveTexture(GL_TEXTURE0);
    glBindTexture(GL_TEXTURE_2D, texture);
    prog.setUniformValue("couleur_texture", QVector4D(1,1,1,1));
    glBegin(GL_QUADS);
    prog.setAttributeValue(CoordonneeTextureId, 0.0, 0.0);
        prog.setAttributeValue(SommetId,  1.0, 0.0, 1.0);
       .....
    glEnd();
}
void VueOpenGL::dessineTriangle (const QMatrix4x4& begin) {
     prog.setUniformValue("vue_modele", matrice_vue * begin);
        glBegin(GL_TRIANGLES);
        prog.setAttributeValue(CouleurId, 1.0, 0.0, 0.0); /// rouge
        prog.setAttributeValue(SommetId, +1.0 , +1.0, 0.0);
        .....
        glEnd();
} 

Et voici mon fragment_shader :
uniform sampler2D textureId;
varying vec2 ma_coordonnee_texture;
varying vec3 ma_couleur;
uniform vec4 modulation;
void main()
{
  gl_FragColor = texture2D(textureId, ma_coordonnee_texture)*modulation + vec4(ma_couleur, 1.0);
}
Je ne suis pas sur de comprendre pourquoi tu me conseilles de mettre une texture sur mon triangle avant de mettre ma
couleur mais je vais essayer. Merci pour ton aide :)