-
- Downloads
Redesigned macOS screensaver to support BOINC's updated graphics API
* Required to support macOS 10.13+ * Our graphics app acts as a Mach RPC server that passes IOSurfaces to registered clients * The BOINC screensaver acts as a Mach RPC server, rendering the IOSurface received * Patching the BOINC build to include the required files (missing in non-Xcode build) * Added MacIOSurfaceManager that sets up the Mach RPC server and controls the IOSurface textures * Integrated the MacIOSurfaceManager into our WindowManager * Note: we need to watch for upstream changes to macglutfix.m to retain compatibility References: * https://github.com/BOINC/boinc/pull/2149 * https://github.com/BOINC/boinc/blob/master/api/macglutfix.m * https://developer.apple.com/library/archive/samplecode/MultiGPUIOSurface/Introduction/Intro.html
Showing
- build.sh 5 additions, 1 deletionbuild.sh
- patches/boinc_mac_iosurface.patch 13 additions, 0 deletionspatches/boinc_mac_iosurface.patch
- src/framework/MacIOSurfaceManager.h 13 additions, 0 deletionssrc/framework/MacIOSurfaceManager.h
- src/framework/MacIOSurfaceManager.m 238 additions, 0 deletionssrc/framework/MacIOSurfaceManager.m
- src/framework/Makefile 9 additions, 0 deletionssrc/framework/Makefile
- src/framework/WindowManager.cpp 42 additions, 0 deletionssrc/framework/WindowManager.cpp
- src/starsphere/Makefile.macos 1 addition, 1 deletionsrc/starsphere/Makefile.macos
patches/boinc_mac_iosurface.patch
0 → 100644
src/framework/MacIOSurfaceManager.h
0 → 100644
src/framework/MacIOSurfaceManager.m
0 → 100644
Please register or sign in to comment