{"action":"created","issue":{"url":"https://api.github.com/repos/c42f/displaz/issues/79","labels_url":"https://api.github.com/repos/c42f/displaz/issues/79/labels{/name}","comments_url":"https://api.github.com/repos/c42f/displaz/issues/79/comments","events_url":"https://api.github.com/repos/c42f/displaz/issues/79/events","html_url":"https://github.com/c42f/displaz/pull/79","id":111936446,"number":79,"title":"Support Mac OS X CoreProfile OpenGL 3.2 (incl. Qt5 upgrade)","user":{"login":"chrisidefix","id":382555,"avatar_url":"https://avatars.githubusercontent.com/u/382555?v=3","gravatar_id":"","url":"https://api.github.com/users/chrisidefix","html_url":"https://github.com/chrisidefix","followers_url":"https://api.github.com/users/chrisidefix/followers","following_url":"https://api.github.com/users/chrisidefix/following{/other_user}","gists_url":"https://api.github.com/users/chrisidefix/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisidefix/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisidefix/subscriptions","organizations_url":"https://api.github.com/users/chrisidefix/orgs","repos_url":"https://api.github.com/users/chrisidefix/repos","events_url":"https://api.github.com/users/chrisidefix/events{/privacy}","received_events_url":"https://api.github.com/users/chrisidefix/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":32,"created_at":"2015-10-17T01:23:12Z","updated_at":"2015-10-30T01:14:35Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/c42f/displaz/pulls/79","html_url":"https://github.com/c42f/displaz/pull/79","diff_url":"https://github.com/c42f/displaz/pull/79.diff","patch_url":"https://github.com/c42f/displaz/pull/79.patch"},"body":"If you find the time, please review and any feedback or request is welcome, of course.\r\n\r\n**What changed?**\r\n 1. By default `displaz` is now looking for **`Qt5`**.\r\n 1.1. *Non* of the *recent* `QOpenGL*` classes have been used intentionally, to allow support of earlier `Qt5` versions on systems, where it would be more difficult to obtain the latest release.\r\n 1.2. The option `DISPLAZ_USE_QT4` was added to `CMake` (`FALSE` by default) and has to be selected for systems, where you want to build against `Qt4`.\r\n\r\n 2. The **OpenGL** code was *mostly* restructured where necessary to run on a *Core Profile context 3.2*, which is the only one available for Mac OS X (OpenGL 3.0 or 3.1 can not be used and there is no support for a *Compatibility Profile*).\r\n\r\n 2.1. **GLSL Shaders** have been added for any render step, including the \"cursor\" and \"axes\" overlays. \r\n 2.2. Most of the vertex/index data is now setup in **`VAO`/`VBO`** fashion through the `initializeGL()` method and then rendered with `glDrawArrays`/`glDrawElements` from `paintGL()`.\r\n\r\n 3. I wouldn't recommend running `displaz` with `Qt4` on Mac OS X and there really is no need to do this. However, I did add some `Objective-C` code that is supposed to create a proper window with the right `CoreContext 3.2` for `QGLWidget`, in case you are wondering why this is there. For this to work `displaz` also needs to link against Apple specific frameworks (`Cocoa` and `Foundation`).\r\n\r\n**What remains?**\r\n 1. There is likely work left to be done for `HCloudView`. I deactivated the (unused) code in `drawBounds` for example. The `draw()` method likely needs to be adjusted, but I didn't have any dataset that I could have tested.\r\n 2. `CoreProfile 3.2` is now set as the default `QGLFormat` inside `guimain.cpp` and it should be decided, if - for non-Mac systems - this should be something else.\r\n 3. Some more clean-up in the code from my side.\r\n\r\nPS: Feel free to squash the commits and ask me anything!"},"comment":{"url":"https://api.github.com/repos/c42f/displaz/issues/comments/152372961","html_url":"https://github.com/c42f/displaz/pull/79#issuecomment-152372961","issue_url":"https://api.github.com/repos/c42f/displaz/issues/79","id":152372961,"user":{"login":"c42f","id":601473,"avatar_url":"https://avatars.githubusercontent.com/u/601473?v=3","gravatar_id":"","url":"https://api.github.com/users/c42f","html_url":"https://github.com/c42f","followers_url":"https://api.github.com/users/c42f/followers","following_url":"https://api.github.com/users/c42f/following{/other_user}","gists_url":"https://api.github.com/users/c42f/gists{/gist_id}","starred_url":"https://api.github.com/users/c42f/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/c42f/subscriptions","organizations_url":"https://api.github.com/users/c42f/orgs","repos_url":"https://api.github.com/users/c42f/repos","events_url":"https://api.github.com/users/c42f/events{/privacy}","received_events_url":"https://api.github.com/users/c42f/received_events","type":"User","site_admin":false},"created_at":"2015-10-30T01:14:35Z","updated_at":"2015-10-30T01:14:35Z","body":"Does it work with Qt5?  I'd be inclined to say the windows build is Qt5 only."}}