Ejemplo n.º 1
0
void WebGLProgram::cacheInfoIfNeeded()
{
    if (m_infoValid)
        return;

    if (!object())
        return;

    blink::WebGraphicsContext3D* context = getAWebGraphicsContext3D();
    if (!context)
        return;
    GLint linkStatus = 0;
    context->getProgramiv(object(), GL_LINK_STATUS, &linkStatus);
    m_linkStatus = linkStatus;
    if (m_linkStatus)
        cacheActiveAttribLocations(context);
    m_infoValid = true;
}
Ejemplo n.º 2
0
void WebGLObject::deleteObject(blink::WebGraphicsContext3D* context3d)
{
    m_deleted = true;
    if (!m_object)
        return;

    if (!hasGroupOrContext())
        return;

    if (!m_attachmentCount) {
        if (!context3d)
            context3d = getAWebGraphicsContext3D();

        if (context3d)
            deleteObjectImpl(context3d, m_object);

        m_object = 0;
    }
}