Exemple #1
0
    Scene::Scene(std::shared_ptr<NUGL::ShaderProgram> screenProgram,
            std::shared_ptr<NUGL::ShaderProgram> screenAlphaProgram,
            glm::ivec2 windowSize, glm::ivec2 framebufferSize)
            : camera(std::make_unique<PlayerCamera>()) {
        shadowMapSize = 2048;
        reflectionMapSize = 512;

        this->windowSize = windowSize;
        this->framebufferSize = framebufferSize;

        prepareFramebuffer(windowSize);
        prepareShadowMapFramebuffer(shadowMapSize);
        prepareReflectionFramebuffer(reflectionMapSize);
        prepareGBuffer(windowSize);

        screen = std::make_unique<utility::PostprocessingScreen>(screenProgram, screenAlphaProgram);
    }
void SSShadowMapDemo::renderPre()
{
	prepareGBuffer();
}