Skip to content

[OpenMW-CS] Migrate to use QOpenGLWidget (osgqopengl)

Nelsson Huotari requested to merge unelsson/openmw:osgqopengl_2 into master

This is a rework based on this https://github.com/OpenMW/openmw/pull/3031 which is based on osgQOpenGL stuff here https://github.com/openscenegraph/osgQt/ . I have modified the original OSGRenderer to use osgViewer::CompositeViewer instead of osgViewer::Viewer.

This seems to work, both in embedded widget mode and floating-widget -mode. I'm not aware of any regressions from updating from QGLWidget to QOpenGLWidget. The underlying code might not be mature to handle multiple views in the same screen (the advantage of using CompositeViewer), but I'm not aware if OpenMW-CS currently uses this feature anyway. I suggest the further work is split into other MRs, because it doesn't affect usability.

Review please! Note, there are some questions inside resolved threads too.

Buglist:

  • Resizing is wrong (and bug also occurs when opening new views?), causes also buggy rendering. -> Fixed by !434 (a3d6871b)
  • Extremely rarely: Flicker once in bottom half of the render widget, is it possible to reproduce?
  • Orbiting camera is very buggy The same bugginess is also in master (mCenter not setting properly during init / load cell)
Edited by Nelsson Huotari

Merge request reports

Loading