Bienvenue, Invité. Merci de vous connecter ou de vous inscrire. Avez-vous oublié d'activer ?

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - lufen34

Pages: [1]
1
Général / Re : SFML - Opengl Impossible de charger une texture
« le: Août 23, 2016, 03:27:15 pm »
Hello !

Merci pour ta réponse ! Oui j'ai vue concernant le chargement à chaque frames haha je viens tout juste de le corriger !

Erf .. Jamais entendu parler de ces méthodes et des mipmaps :s je vais me renseigner et tenir au jus de mon avancement !

Merci beaucoup !

ps: ça marche toujours pas avec les deux param :(

2
Général / SFML - Opengl Impossible de charger une texture
« le: Août 23, 2016, 12:18:56 am »
Bonjour, après plusieurs recherche en ligne sur les forums, sites etc .... Je n'arrive toujours pas à appliquer ma texture sur mon Cube 3d.

Le fichier ce charge comme il faut, j'ai vérifié si le problème venez pas de la couche "alpha" grâce a un post sur Stack Overflow etc ... Mais je suis bloqué depuis 18h maintenant et ça me fatigue ^^'.

Voici ou j'en suis actuelement :

Engine::Engine() : m_isMovingUp(false), m_isMovingDown(false), m_isMovingLeft(false), m_isMovingRight(false), m_context(24, 8, 4, 3, 3), m_angleX(0), m_angleZ(0)
{
        //Window settings
        m_win.create(sf::VideoMode(800, 600), "SFML Event and with some OpenGL graphics", sf::Style::Default, m_context);
        m_win.setFramerateLimit(144);
       
        //Opengl settings
        glEnable(GL_TEXTURE_2D);
}

void Engine::render()
{
        glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
        glMatrixMode(GL_MODELVIEW);
        glLoadIdentity();
        glEnable(GL_DEPTH_TEST);
        m_cam.viewChange(3, 3, 3, 0, 0, 0, 0, 0, 1);
        m_cam.view();
        cube();
        glFlush();
        m_win.display();
}

void Engine::cube()
{
        glRotated(m_angleX, 1, 0, 0);
        glRotated(m_angleZ, 0, 0, 1);
        glMatrixMode(GL_MODELVIEW);
        glLoadIdentity();
        loadTexture("/Data/test.jpg");
        glBegin(GL_QUADS);
        //face Rouge
        //glColor3ub(255, 0, 0);
        glTexCoord2d(0, 1); glVertex3d(1, 1, 1);
        glTexCoord2d(0, 0); glVertex3d(1, 1, -1);
        glTexCoord2d(1, 0); glVertex3d(-1, 1, -1);
        glTexCoord2d(1, 1); glVertex3d(-1, 1, 1);
        glBindTexture(GL_TEXTURE_2D, 0);

        //face verte
        glColor3ub(0, 255, 0);
        glVertex3d(1, -1, 1);
        glVertex3d(1, -1, -1);
        glVertex3d(1, 1, -1);
        glVertex3d(1, 1, 1);

        //face bleu
        glColor3ub(0, 0, 255);
        glVertex3d(1, -1, 1);
        glVertex3d(-1, -1, 1);
        glVertex3d(-1, -1, -1);
        glVertex3d(1, -1, -1);

        //face jaune
        glColor3ub(255, 255, 0);
        glVertex3d(-1, 1, 1);
        glVertex3d(-1, 1, -1);
        glVertex3d(-1, -1, -1);
        glVertex3d(-1, -1, 1);

        //face cyan
        glColor3ub(0, 255, 255);
        glVertex3d(1, 1, -1);
        glVertex3d(1, -1, -1);
        glVertex3d(-1, -1, -1);
        glVertex3d(-1, 1, -1);
       
        //face magenta
        glColor3ub(255, 0, 255);
        glVertex3d(1, -1, 1);
        glVertex3d(1, 1, 1);
        glVertex3d(-1, 1, 1);
        glVertex3d(-1, -1, 1);

        glEnd();
        glFlush();
}

GLuint Engine::loadTexture(string file)
{
        if (!m_image.loadFromFile(file))
                EXIT_FAILURE;
        glGenTextures(1, &m_textureID);
        glBindTexture(GL_TEXTURE_2D, m_textureID);
        glTexImage2D(GL_TEXTURE_2D, 0, 4, m_image.getSize().x, m_image.getSize().y, 0, GL_RGBA, GL_UNSIGNED_BYTE, m_image.getPixelsPtr());

        return m_textureID;
}

Je suis ouvert à tout conseil, critique constructif !

Merci pour votre aide !

PS : J'ai déjà tester la technique du "sf::Texture::bind(&texture);" comme dans la doc :(

Pages: [1]