void MovingColoredTriangle::initialize()
{
    // Récupération des fonctions d'OpenGL 4.3
    m_funcs = m_context->versionFunctions<QOpenGLFunctions_4_3_Core>();

    if ( ! m_funcs )
    {
        qFatal("Requires OpenGL >= 4.3");
        exit(1);
    }

    m_funcs->initializeOpenGLFunctions();

    // Initialisation du système de logging
    connect(m_logger, SIGNAL(messageLogged(QOpenGLDebugMessage)), this, SLOT(onMessageLogged(QOpenGLDebugMessage)), Qt::DirectConnection);

    if(m_logger->initialize())
        m_logger->enableMessages();

    // Charge, compile et link le Vertex et Fragment Shader
    prepareShaders();

    // Création du Vertex Array Object
    m_vao->create();
    m_vao->bind();
}
Exemplo n.º 2
0
void GLWidget::initializeGL(){
    printGLString();

    glClearColor(0.0,0.0,0.0,0.0);
    glEnable(GL_DEPTH_TEST);
    glEnable(GL_CULL_FACE);

    prepareShaders();
    objTest->initBuffers();
}
Exemplo n.º 3
0
bool SimplePixelNode::init()
{
    assert(Node::init());

    if (_programState == nullptr) {
        prepareVertexData();
        prepareShaders();
    }

    return true;
}
Exemplo n.º 4
0
bool BattleLowNode::init()
{
    assert(BattleNode::init());

    if (_programState == nullptr) {
        prepareVertexData();
        prepareShaders();
    }

    return true;
}
bool ShadowCover::init()
{
    assert(Node::init());

    if (_programState == nullptr) {
        prepareVertexData();
        prepareShaders();
    }

    _textureShadow = Director::getInstance()->getTextureCache()->addImage("images/shadow_cover.png");

    return true;
}
Exemplo n.º 6
0
bool BattleHighNode::init()
{
    assert(BattleNode::init());

    if (_programState == nullptr) {
        prepareVertexData();
        prepareShaders();
    }

    _textureBeAttacked = Director::getInstance()->getTextureCache()->addImage("images/high_be_attacked.png");
    _textureBeCured = Director::getInstance()->getTextureCache()->addImage("images/high_be_cured.png");

    for (int i = 0; i < DDConfig::NUM_LIGHT; i++) {
        _lights[i] = {0,0,0,0};
        _lightsColor[i] = {1,1,1,1};
    }

    return true;
}
Exemplo n.º 7
0
void VizWidget::initializeGL()
{
    glClearColor(0.0, 0.0, 0.0, 0.0);
    glEnable(GL_DEPTH_TEST);
    frameCount = 0;

    // Prepare a complete shader program...
    if ( !prepareShaders(vertShader, fragShader) )
        return;
    // Bind the shader program so that we can associate variables from
    // our application to the shaders
    if ( !shaderProgram.bind() )
    {
        qWarning() << "Could not bind shader program to context";
        return;
    }

    // Make the background quad and bind it to the vertex buffer
    GLfloat vertices[] = {-1, -1, 0, //bottom left corner
                          -1,  1, 0, //top left corner
                           1,  1, 0, //top right corner
                           1, -1, 0}; // bottom right corner

    vertexBuffer.create();
    vertexBuffer.setUsagePattern( QOpenGLBuffer::StaticDraw );
    if ( !vertexBuffer.bind() )
    {
        qWarning() << "Could not bind vertex buffer to the context";
        return;
    }
    vertexBuffer.allocate(vertices, 3 * 4 * sizeof( float ));
    shaderProgram.setAttributeBuffer("vertex", GL_FLOAT, 0, 3);
    shaderProgram.enableAttributeArray("vertex");


    // Setup the fft buffer
    fftBuffer.create();
    fftBuffer.bind(shaderProgram.programId(), "fftBlock");
    fftBuffer.allocate(FFT_SIZE);
}