ZEDIUM-Off / MiniRT

0 stars 0 forks source link

Faisabilité d'implémentation de gl_get_shaderiv, gl_get_shader_info_log pour la vérification d'initialisation des fragment shaders #4

Closed unkn0wn107 closed 7 months ago

unkn0wn107 commented 8 months ago

Ce serait bien de pouvoir faire ça :

    // Check the compile status
    GLint compiled;
    gl_get_shaderiv(shader, GL_COMPILE_STATUS, &compiled);
    if (!compiled)
    {
        GLint infoLen = 0;
        gl_get_shaderiv(shader, GL_INFO_LOG_LENGTH, &infoLen);
        if (infoLen > 1)
        {
            char *infoLog = malloc(sizeof(char) * infoLen);
            gl_get_shader_info_log(shader, infoLen, NULL, infoLog);
            fprintf(stderr, "Error compiling shader:\n%s\n", infoLog);
            free(infoLog);
        }
        gl_delete_shader(shader);
        return;
    }

Tu penses que c'est difficile / envisageable d'implémenter ces fonctions là ?

Juste sur leur scope minimal : GL_COMPILE_STATUS, GL_INFO_LOG_LENGTH et GL_FRAGMENT_SHADER

gl_delete_shader(shader); a déjà une méthode implémentée ?

ZEDIUM-Off commented 8 months ago

je suis pas sur de l'utilitee

ZEDIUM-Off commented 7 months ago

clock_t last_time = 0;

int render(t_rt* rt) { clock_t now = clock(); rt->loop++; // gl_polygon_mode(&rt->glx, GL_FRONT, GL_FILL); // gl_polygon_mode(&rt->glx, GL_BACK, GL_LINE); if ((now - last_time) / CLOCKS_PER_SEC >= 1) { printf("loop/sec: %u\n", rt->loop); last_time = now; rt->loop = 0; } return (CONTINUE); }