Hello
I have put Horde3D inside a wxWidgets canvas and context. When the canvas is resized, I tell Horde3D to resize using:
Code:
h3dSetNodeParamI(FCam, H3DCamera::ViewportXI, 0);
h3dSetNodeParamI(FCam, H3DCamera::ViewportYI, 0);
h3dSetNodeParamI(FCam, H3DCamera::ViewportWidthI, width);
h3dSetNodeParamI(FCam, H3DCamera::ViewportHeightI, height);
h3dSetupCameraView(FCam, 45.0f, static_cast<float>(width)/height, 0.1f, 1000.0f);
h3dResizePipelineBuffers(FPipelineRes, width, height);
where FCam is the camera resource and FPipelineRes is the pipeline resource. This works on resize when the window is set up but when I resize the window later on, I the Horde3D drawing region does not resize. If I step into h3dResizePipelineBuffers, I can see that is calls pipeResObj->resize( width, height );, which in turn calls createRenderTargets().
The canvas and parent window is reporting the correct size but I have a bounding box that the content is drawn inside. If I do not call glClear at the beginning of the paint routine, I get all manner of buffer rubbish drawn outside the bounding box region.
My code is pretty much identical to
http://www.horde3d.org/docs/html/_tutorial.html., merged with the Qt5 code on the wiki.
Does anyone have any tips?