Сегменты OpenGL на glGenVertexArrays

Segfault OpenGL или SDL, когда он достигает самого первого оператора в классе. Я понятия не имею, что вызывает это.

class RenderEngine {
    GLuint vertexArrayId;
    GLfloat[] vertexBufferData = [
        -1.0f, -1.0f, 0.0f,
            1.0f, -1.0f, 0.0f,
            0.0f, 1.0f, 0.0f
    ];
    GLuint vertexBufferId;
    public this() {
        glGenVertexArrays(1, &vertexArrayId); // SEGMENTATION FAULT / RETURN -11
        glBindVertexArray(vertexArrayId);
        glGenBuffers(1, &vertexBufferId);
        glBindBuffer(GL_ARRAY_BUFFER, vertexBufferId);
        glBufferData(GL_ARRAY_BUFFER, vertexBufferData.length * GLfloat.sizeof, vertexBufferData.ptr, GL_STATIC_DRAW);
    }

    public void render() {
        glEnableVertexAttribArray(0);
        glBindBuffer(GL_ARRAY_BUFFER, vertexBufferId);
        glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, cast(void*) 0);
        glDrawArrays(GL_TRIANGLES, 0, 3);
        glDisableVertexAttribArray(0);

    }
}

Ответы на вопрос(1)

Ваш ответ на вопрос