Я хочу вызвать процедуру рендеринга без вызова PaintGL, причина в том, что я пытаюсь визуализировать многопроходный эффект, используя современные процедуры реализации Qt OpenGL, поэтому псевдокод должен быть примерно таким:
for i=0 i<npasses i++
glwidget->renderlayer i
glwidget->repaint //this calls PaintGL
Проблема в том, что если я вызываю renderlayer из функции PaintGL, все сходит с ума, и он рисуется по всему моему приложению, а не по моему glwidget (который наследуется от QOpenGLWidget), с другой стороны, функция renderlayer в порядке, поскольку вызывается только изнутри PaintGL. работает так, как ожидалось.
Любой совет по этому поводу?
заранее спасибо
renderlayer
необходимо убедиться, что правильный контекст OpenGL активен/текущий и что вашQOpenGLFramebufferObject
привязан к этому контексту. - person G.M.   schedule 11.03.2017