Hi

Qt 3D source code has an example of how to use render capture in the manual 
tests.

However this is probably not the right way to do it as 1/ it would require 
another FBO on top of the one QOpenGLWidget uses already; 2/ it transfers the 
image to the CPU which is not needed here.

Think the way to do it is to do something similar to what is done for Scene3D:
- setup Qt 3D engine to be in manual mode (rather than using the simulation 
loop)
  by calling QAspectEngine::setRunMode(QAspectEngine::Manual)
- use QOpenGLWidget and in the paintGL method call QAspectEngine::processFrame()
  to have Qt 3D draw

There’s of course lots of other stuff to setup. Might need a dummy offscreen 
surface to handle sizing, handling of the context, and a fair amount more.

Mike

> On 1 Sep 2020, at 16:51, Florian Blume <florian.bl...@tu-berlin.de> wrote:
> 
> Hi,
> 
> I'm trying to implement a Qt3D widget since createWindowContainer is not
> suitable for me (always draws the Qt3DWindow on top of everything).
> I've already asked a Stackverflow question
> (https://stackoverflow.com/questions/63686309/use-qt3d-offscreen-rendered-texture-in-opengl)
> because I ran into
> several issues trying to display an offscreen texture that I render to
> with Qt3D in a QOpenGLWidget (it simply doesn't display anything).
> 
> Has anyone some other solution regarding a Qt3D widget?
> 
> Best regards,
> Florian
> _______________________________________________
> Interest mailing list
> Interest@qt-project.org
> https://lists.qt-project.org/listinfo/interest

—
Mike Krus | mike.k...@kdab.com | Senior Software Engineer
KDAB (UK) Ltd., a KDAB Group company
Tel: UK Office +44 1625 809908   Mobile +44 7833 491941
KDAB - The Qt Experts, C++, OpenGL Experts


Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
Interest mailing list
Interest@qt-project.org
https://lists.qt-project.org/listinfo/interest

Reply via email to