1

iOS では正常に動作しますが、apportable では動作しません。何か間違ったことをしたのかもしれません:

    GLsizei height = _glview.drawableHeight;
    GLsizei width = _glview.drawableWidth;

    if (pickingFramebuffer == 0) {
        glGenFramebuffers(1, &pickingFramebuffer);
    }

    glBindFramebuffer(GL_FRAMEBUFFER, pickingFramebuffer);

    if (pickingColorRenderbuffer == 0) {
        glGenRenderbuffers(1, &pickingColorRenderbuffer);
    }
    glBindRenderbuffer(GL_RENDERBUFFER, pickingColorRenderbuffer);

    glRenderbufferStorage(GL_RENDERBUFFER, GL_RGBA8, width, height);
    glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, pickingColorRenderbuffer);

    if (pickingDepthRenderbuffer == 0) {
        glGenRenderbuffers(1, &pickingDepthRenderbuffer);
    }
    glBindRenderbuffer(GL_RENDERBUFFER, pickingDepthRenderbuffer);
    glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT24, width, height);

    glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, pickingDepthRenderbuffer);

    GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
    if (status != GL_FRAMEBUFFER_COMPLETE) {
        NSLog(@"Framebuffer status: %x", (int)status);
    }

ログ:

Framebuffer status: GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT

どうもありがとう!

編集: 全員の関数とopenglディレクティブOESに追加すると、フレームバッファのステータスは0になります

編集 2: OK、それはバグですhttps://code.google.com/p/apportable/issues/detail?id=3

4

0 に答える 0