diff options
author | Adrian Jeakins <jeakinsadrian@gmail.com> | 2018-12-05 22:27:04 +0000 |
---|---|---|
committer | Adrian Jeakins <jeakinsadrian@gmail.com> | 2018-12-05 22:27:04 +0000 |
commit | 38f80b10486bb7f10873d327564bfe075cabe54d (patch) | |
tree | c0723511dfb1041a2ccb8fbcb4231b54e8f94d31 /gui | |
parent | a6315833d3ca7eac414b8496d8ff12a7f30a4145 (diff) | |
download | nextpnr-38f80b10486bb7f10873d327564bfe075cabe54d.tar.gz nextpnr-38f80b10486bb7f10873d327564bfe075cabe54d.tar.bz2 nextpnr-38f80b10486bb7f10873d327564bfe075cabe54d.zip |
Fix device view not showing anything on macOS.
* Fix line shader when running under the core profile and make version match those elsewhere.
* Make surface format version match the openGL functions we are using.
Diffstat (limited to 'gui')
-rw-r--r-- | gui/application.cc | 4 | ||||
-rw-r--r-- | gui/lineshader.h | 13 |
2 files changed, 11 insertions, 6 deletions
diff --git a/gui/application.cc b/gui/application.cc index 7751e6f1..3cf8081d 100644 --- a/gui/application.cc +++ b/gui/application.cc @@ -42,6 +42,10 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv) QSurfaceFormat fmt; fmt.setSamples(10); fmt.setProfile(QSurfaceFormat::CoreProfile); + // macOS is very picky about this version matching + // the version of openGL used in ImGuiRenderer + fmt.setMajorVersion(3); + fmt.setMinorVersion(2); QSurfaceFormat::setDefaultFormat(fmt); #ifdef _WIN32 SetConsoleCtrlHandler((PHANDLER_ROUTINE)WinHandler, TRUE); diff --git a/gui/lineshader.h b/gui/lineshader.h index 98042051..74203261 100644 --- a/gui/lineshader.h +++ b/gui/lineshader.h @@ -172,10 +172,10 @@ class LineShader LineShader(QObject *parent) : parent_(parent), program_(nullptr) {} static constexpr const char *vertexShaderSource_ = - "#version 110\n" - "attribute highp vec2 position;\n" - "attribute highp vec2 normal;\n" - "attribute highp float miter;\n" + "#version 330\n" + "in highp vec2 position;\n" + "in highp vec2 normal;\n" + "in highp float miter;\n" "uniform highp float thickness;\n" "uniform highp mat4 projection;\n" "void main() {\n" @@ -183,10 +183,11 @@ class LineShader " gl_Position = projection * vec4(p, 0.0, 1.0);\n" "}\n"; - static constexpr const char *fragmentShaderSource_ = "#version 110\n" + static constexpr const char *fragmentShaderSource_ = "#version 330\n" "uniform lowp vec4 color;\n" + "out vec4 Out_Color;\n" "void main() {\n" - " gl_FragColor = color;\n" + " Out_Color = color;\n" "}\n"; // Must be called on initialization. |