У меня есть два FBO, созданных с использованием QOpenGLFrameBufferObject
, которые представляют собой изображения с прозрачным фоном и несколькими строками и текстом поверх них. Я копирую первый fbo на второй, используя QOpenGLFramebufferObject :: blitFramebuffer , это приводит к тому, что содержимое первого fbo располагается поверх второго. Однако я хотел бы сохранить прозрачность первого fbo и наложить содержимое первого fbo поверх второго fbo (вместо того, чтобы стирать часть второго fbo и перерисовывать первый fbo поверх него). Оглядываясь вокруг, я думаю, что это могло бы быть возможно с glBlendFun c, но следующее на самом деле не дало желаемого результата.
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
// then blit fbo1 on top of fbo2
QOpenGLFramebufferObject::blitFramebuffer(fbo2, fbo1);
Как сохранить прозрачность ( смешивая их вместе) моих кадровых буферов, когда я их копирую?