diff --git a/rendering/framebufferobject.cpp b/rendering/framebufferobject.cpp index 222fc59aa..c88ad1406 100644 --- a/rendering/framebufferobject.cpp +++ b/rendering/framebufferobject.cpp @@ -61,8 +61,12 @@ void FramebufferObject::Create(QOpenGLContext *ctx, int width, int height) ctx->functions()->glBindTexture(GL_TEXTURE_2D, texture_); // allocate storage for texture - ctx->functions()->glTexImage2D( + /*ctx->functions()->glTexImage2D( GL_TEXTURE_2D, 0, GL_RGBA8, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr + );*/ + + ctx->functions()->glTexImage2D( + GL_TEXTURE_2D, 0, GL_RGBA32F, width, height, 0, GL_RGBA, GL_FLOAT, nullptr ); // set texture filtering to bilinear diff --git a/timeline/clip.cpp b/timeline/clip.cpp index 036fd99ca..240830155 100644 --- a/timeline/clip.cpp +++ b/timeline/clip.cpp @@ -572,10 +572,10 @@ bool Clip::Retrieve() // composition texture->setSize(cacher.media_width(), cacher.media_height()); - texture->setFormat(QOpenGLTexture::RGBA8_UNorm); + texture->setFormat(QOpenGLTexture::RGBA32F); texture->setMipLevels(texture->maximumMipLevels()); texture->setMinMagFilters(QOpenGLTexture::Linear, QOpenGLTexture::Linear); - texture->allocateStorage(QOpenGLTexture::RGBA, QOpenGLTexture::UInt8); + texture->allocateStorage(QOpenGLTexture::RGBA, QOpenGLTexture::Float32); } QOpenGLFunctions* f = QOpenGLContext::currentContext()->functions();