2017-11-01 1 views
0

So gibt es zwei PCs mit Windows 8.1 x64. First hat Qt 5.7 SDK installiert, das zweite nicht. Auf dem ersten PC des folgenden C++ QT5 Code funktioniert erfolgreich:Qt OpenGL Framebuffer erstellt an einem PC, schlägt aber an einem anderen

int big_width = 1392; 
int big_height = 1040; 
int small_width = 696; 
int small_height = 520; 
format.setSamples(4); 
format.setAttachment(QGLFramebufferObject::Depth); 

framebuffer_big = new QGLFramebufferObject(big_width, big_height, format); 
framebuffer_small = new QGLFramebufferObject(small_width, small_height, format); 

Und am zweiten PC ich folgende in Windows-Konsole gucke:

[qglframebufferobject.cpp line 549] GL Error: 1280 
QGLFramebufferObject: Framebuffer incomplete attachment. 
QGLFramebufferObject: Framebuffer incomplete attachment. 
QGLFramebufferObject: Framebuffer incomplete attachment. 
[qglframebufferobject.cpp line 549] GL Error: 1280 
QGLFramebufferObject: Framebuffer incomplete attachment. 
QGLFramebufferObject: Framebuffer incomplete attachment. 
QGLFramebufferObject: Framebuffer incomplete attachment. 

So verbessern ich Video-Treiber auf dem zweiten PC und es hatte keine Wirkung. Und natürlich werden einige erforderliche DLLs zur Verfügung gestellt.


Die Frage ist das: Wie die oben aufgeführten Fehler am zweiten PC zu beheben?

+0

Versuchen Sie in beiden Fällen, die von Ihnen verwendete openglVersion anzuzeigen. In der zweiten, was append, wenn Sie auch eine colorAttachment hinzufügen –

+0

@DrackoonD Ich versuchte 'qDebug() << QString :: fromStdString (Std :: String (reinterpret_cast (glGetString (GL_VERSION)))); 'auf beiden PCs. Zuerst habe ich '" 4.5.0 NVIDIA 365.19 "'. Am zweiten PC gab es den Untergang des Programms: 'termiante nach dem Werfen einer Instanz von 'std :: logic_error' was(): basic_string :: _ M_construct null nicht gültig Diese Anwendung hat die Runtime auf ungewöhnliche Weise angefordert. Bitte kontaktieren Sie das Support-Team der Anwendung für weitere Informationen. Ich habe keine Ahnung, was ein Problem verursachen könnte. Irgendwelche Vorschläge? –

Antwort

0

Das Problem folgte: Ich habe Microsoft Windows RDP verwendet. Dadurch ist es unmöglich, normal Qt OpenGL-Anwendung zu starten. Es scheint, als ob Microsoft oder Digia es vermasselt haben!

Verwandte Themen