void DeferredShadingMSAA::configurationCallback(NvGLConfiguration& config)
{ 
    config.depthBits = 0; 
    config.stencilBits = 8; 
    config.msaaSamples = 0;
    config.apiVer = NvGLAPIVersionGL4();
}
void DeferredShadingMSAA::initRendering(void)
{
    NvAssetLoaderAddSearchPath("gl4-kepler/DeferredShadingMSAA");
    NvAssetLoaderAddSearchPath("gl4-kepler/DeferredShadingMSAA/models");

    if(!requireMinAPIVersion(NvGLAPIVersionGL4(), true))
        return;

    // Require at least one of these multisample extensions
    if (!requireExtension("GL_NV_framebuffer_multisample", false))
    {
        if (!requireExtension("GL_ARB_multisample", true))
            return;
    }

    glBindFramebuffer(GL_FRAMEBUFFER, getMainFBO());

    BuildShaders();

    // As a demo, we'll use both methods of loading meshes, and time each of them,
    // to illustrate the differences
    NvStopWatch* pStopwatch = createStopWatch();

    pStopwatch->start();
    m_models[SPONZA_MODEL] = LoadModel("models/sponza.obj");
    pStopwatch->stop();
    float time = pStopwatch->getTime();
    LOGI("Standard Model Loading Complete: %f seconds", time);

    pStopwatch->start();
    m_modelsExt[SPONZA_MODEL] = LoadModelExt("models/sponza.obj");
    pStopwatch->stop();
    time = pStopwatch->getTime();
    LOGI("Extended Model Loading Complete: %f seconds", time);

    m_modelID = SPONZA_MODEL;

    glDisable(GL_CULL_FACE);
    glGenQueries(1, &m_queryId);

#if ENABLE_GPU_TIMERS
    for (uint32_t i = 0; i < TIMER_COUNT; ++i)
    {
        m_timers[i].init();
    }
#endif
}
void MultiDrawIndirect::configurationCallback(NvGLConfiguration& config)
{ 
    config.depthBits = 24; 
    config.stencilBits = 0; 
    config.apiVer = NvGLAPIVersionGL4();
}
예제 #4
0
void FXAA::configurationCallback(NvGLConfiguration& config)
{
    config.depthBits = 24;
    config.stencilBits = 0;
    config.apiVer = NvGLAPIVersionGL4();
}