Changeset View
Changeset View
Standalone View
Standalone View
plugins/scenes/opengl/scene_opengl.cpp
Show First 20 Lines • Show All 658 Lines • ▼ Show 20 Line(s) | 656 | if (m_backend->perScreenRendering()) { | |||
---|---|---|---|---|---|
659 | for (int i = 0; i < screens()->count(); ++i) { | 659 | for (int i = 0; i < screens()->count(); ++i) { | ||
660 | const QRect &geo = screens()->geometry(i); | 660 | const QRect &geo = screens()->geometry(i); | ||
661 | QRegion update; | 661 | QRegion update; | ||
662 | QRegion valid; | 662 | QRegion valid; | ||
663 | // prepare rendering makes context current on the output | 663 | // prepare rendering makes context current on the output | ||
664 | QRegion repaint = m_backend->prepareRenderingForScreen(i); | 664 | QRegion repaint = m_backend->prepareRenderingForScreen(i); | ||
665 | GLVertexBuffer::setVirtualScreenGeometry(geo); | 665 | GLVertexBuffer::setVirtualScreenGeometry(geo); | ||
666 | GLRenderTarget::setVirtualScreenGeometry(geo); | 666 | GLRenderTarget::setVirtualScreenGeometry(geo); | ||
667 | GLVertexBuffer::setVirtualScreenScale(screens()->scale(i)); | ||||
667 | GLRenderTarget::setVirtualScreenScale(screens()->scale(i)); | 668 | GLRenderTarget::setVirtualScreenScale(screens()->scale(i)); | ||
668 | 669 | | |||
669 | const GLenum status = glGetGraphicsResetStatus(); | 670 | const GLenum status = glGetGraphicsResetStatus(); | ||
670 | if (status != GL_NO_ERROR) { | 671 | if (status != GL_NO_ERROR) { | ||
671 | handleGraphicsReset(status); | 672 | handleGraphicsReset(status); | ||
672 | return 0; | 673 | return 0; | ||
673 | } | 674 | } | ||
674 | 675 | | |||
Show All 14 Lines | 687 | } else { | |||
689 | 690 | | |||
690 | const GLenum status = glGetGraphicsResetStatus(); | 691 | const GLenum status = glGetGraphicsResetStatus(); | ||
691 | if (status != GL_NO_ERROR) { | 692 | if (status != GL_NO_ERROR) { | ||
692 | handleGraphicsReset(status); | 693 | handleGraphicsReset(status); | ||
693 | return 0; | 694 | return 0; | ||
694 | } | 695 | } | ||
695 | GLVertexBuffer::setVirtualScreenGeometry(screens()->geometry()); | 696 | GLVertexBuffer::setVirtualScreenGeometry(screens()->geometry()); | ||
696 | GLRenderTarget::setVirtualScreenGeometry(screens()->geometry()); | 697 | GLRenderTarget::setVirtualScreenGeometry(screens()->geometry()); | ||
698 | GLVertexBuffer::setVirtualScreenScale(1); | ||||
697 | GLRenderTarget::setVirtualScreenScale(1); | 699 | GLRenderTarget::setVirtualScreenScale(1); | ||
698 | 700 | | |||
699 | int mask = 0; | 701 | int mask = 0; | ||
700 | updateProjectionMatrix(); | 702 | updateProjectionMatrix(); | ||
701 | paintScreen(&mask, damage, repaint, &updateRegion, &validRegion, projectionMatrix()); // call generic implementation | 703 | paintScreen(&mask, damage, repaint, &updateRegion, &validRegion, projectionMatrix()); // call generic implementation | ||
702 | 704 | | |||
703 | if (!GLPlatform::instance()->isGLES()) { | 705 | if (!GLPlatform::instance()->isGLES()) { | ||
704 | const QSize &screenSize = screens()->size(); | 706 | const QSize &screenSize = screens()->size(); | ||
▲ Show 20 Lines • Show All 1756 Lines • Show Last 20 Lines |