Speed up OpenGL ES or OpenGL app development using GLKit.

Posts under GLKit tag

8 Posts

Post

Replies

Boosts

Views

Activity

Is the GLKit library Apple's?
Hi. My team is still using GLKit. I have no choice but to keep using it to support non-iOS products as well. (We don't have many developers.) While researching 'Privacy Manifest', I found out that the third party library needs to add 'PrivacyInfo'. I confirmed on Xcode that GLKit is Apple SDKs. Does this mean it's not a third party library? Is using GLKit not related to 'Privacy Manifest'?
1
0
987
Mar ’24
Issue running openGL via headless mac mini
I am currently trying to use EC2 mac instances to run a CI/CD pipeline which involves running tests with electron/selenium. In order to run these tests openGL needs to be available. Im currently getting there error on line 49 of https://chromium.googlesource.com/chromium/src/+/8f066ff5113bd9d348f0aaf7ac6adc1ca1d1cd31/ui/gl/init/gl_initializer_mac.cc. With the output on the instance giving: 2022-06-09 19:38:25.937 Electron[52243:188559] +[NSXPCSharedListener endpointForReply:withListenerName:]: an error occurred while attempting to obtain endpoint for listener 'ClientCallsAuxiliary': Connection interrupted [52245:0609/193826.555969:ERROR:gl_initializer_mac.cc(65)] Error choosing pixel format. [52245:0609/193826.556035:ERROR:gl_initializer_mac.cc(193)] GLSurfaceCGL::InitializeOneOff failed. [52245:0609/193826.664827:ERROR:viz_main_impl.cc(188)] Exiting GPU process due to errors during initialization The root cause of this is there is no display connected to the mac mini. Using vnc to screen share with the host (which creates a display) fixes allows openGL to work as expected. Unfortunately this is not a solution/workaround for my use case as I will need to restart/reboot these instances after each run. I have tested this multiple times and after rebooting the instance the display is no longer present. (I have verified the displays being recognized / not being recognized with displayplacer list) Is there any way to make the mac mini host think that it has a display without relying on physical workarounds (I dont have physical access to the machine) or use software like BetterDummy that I can't run in a script.
1
1
1.9k
Jan ’23
The iPhone doesn't support 32-bit float textures?
I create a 32-bit floating point texture withCVOpenGLESTextureCacheCreateTextureFromImage(kCFAllocatorDefault, ..., ..., NULL, GL_TEXTURE_2D, GL_RGBA, ..., ..., GL_BGRA, GL_FLOAT, 0, ...);orglTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, 128, 128, 0, GL_RGBA, GL_FLOAT, ...);send the texture to a vertex shader and read the output with transform feedback. For some reason the data is truncaed to 16-bit half floats.For example,Input: 0.001000, 0.000100, 0.000010, 0.000001 Output: 0.000999, 0.000100, 0.000000, 0.000000This only happens on my iPhone 6s, not on the iPad.Does the iPhone not support 32-bit floating point textures in OpenGL?
1
0
1.9k
Oct ’22
Running MapLibre Open GL project on Apple Silicon device has better Simulator performance on `x86_64` than `arm64`.
Also submitted as https://feedbackassistant.apple.com/feedback/10763106 Tracked in MapLibre (with screenshots & videos) under https://github.com/maplibre/maplibre-gl-native-distribution/issues/7 Background The MapLibre project provides iOS binaries for both x86_64 & arm64 which allows for Simulator development on either Intel or Apple Silicon architectures. MapLibre is an Open GL project, and we are aware of the requirement of Metal. When using the Mapbox.xcframework for a 3rd party map project, there are several issues when targeting the iOS Simulator for arm64. Issues MapLibre targeting arm64 iOS Simulators 14.5 & 16.0 have a drawing error that is eventually fixed when the map is at steady state. MapLibre targeting arm64 iOS Simulators 15.4 & 15.5 have a drawing error, followed by an exception when moving the map. Questions Why does setting EXCLUDED_ARCHS, and force targeting x86_64 seem to be the accepted workaround for Simulators on Apple Silicon? EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64 What changed from iOS Simulator 14.5 to 15.5 and to 16.0? Why so many log warnings for 'cyclone' is not a recognized processor for this target (ignoring processor)? These are fixed when targeting x86_64. Test environment macOS Ventura 13.0 Beta (22A5295i). Occurs on Big Sur on M1 Apple Silicon, too. Xcode Version 14.0 beta 3 (14A5270f). Occurs with Xcode 13.4, too. M1 Apple Silicon No issue when running on iOS Devices Mapbox.xcframework lipo information lipo -info Mapbox.xcframework/ios-arm64_armv7/Mapbox.framework/Mapbox Architectures in the fat file: Mapbox.xcframework/ios-arm64_armv7/Mapbox.framework/Mapbox are: armv7 arm64 lipo -info Mapbox.xcframework/ios-arm64_i386_x86_64-simulator/Mapbox.framework/Mapbox Architectures in the fat file: Mapbox.xcframework/ios-arm64_i386_x86_64-simulator/Mapbox.framework/Mapbox are: x86_64 i386 arm64 arm64 Simulator throws many not recognized processor warnings. 'cyclone' is not a recognized processor for this target (ignoring processor)
6
3
2k
Jul ’22
how can i show two OpenGL view on ios?
I created two caeagllayers to display two independent OpenGL ES views, mainview and childview, which inherit UIView and override layerClass. First, mainview runs CAEAGLLayer in the main thread, creates an eaglcontext, and uses cadisplaylink to refresh the view. CAEAGLLayer opaque = true for mainview. The second childview is overlaid on the mainview. In a custom sub thread, create a caeagllayer and eaglcontext, then initialize the operation, and use cadisplaylink to refresh the view. The whole process can run well on IOS simulator, but some exceptions will be displayed on real iphone11: If childview's CAEAGLLayer opaque = true, after childview is created, I must touch the iPhone 11 screen before i can see OpenGLES, and then the interface displays normally. If CAEAGLLayer opaque = false in childview, I can see the OpenGL view displayed without touch the screen, but there will be transparency problems in the interface display. If the translucent texture is displayed in childview, I can see the view displayed on mainview. I hope I have clearly described the problem, so how can I modify it? Thanks for any insights, examples, or suggestions。
0
0
714
Aug ’21
Is the GLKit library Apple's?
Hi. My team is still using GLKit. I have no choice but to keep using it to support non-iOS products as well. (We don't have many developers.) While researching 'Privacy Manifest', I found out that the third party library needs to add 'PrivacyInfo'. I confirmed on Xcode that GLKit is Apple SDKs. Does this mean it's not a third party library? Is using GLKit not related to 'Privacy Manifest'?
Replies
1
Boosts
0
Views
987
Activity
Mar ’24
Can I still release app using opengl es2?
I know opengl is marked as deprecated since ios12 but I have an old project using it and I want to update some feature of it then release the update version. So I'm wondering if I can still release an app using opengl to app store currently? (I know it's better to shift to MetalKit but for some reason I want to cut the cost if I can. )
Replies
2
Boosts
0
Views
1.5k
Activity
Mar ’24
iOS Anti-aliasing issue April 2023
We recently observed antialiasing issues on iOS devices since this week. Works fine on desktop and Android. Refer to screenshots below. Is there a specific flag we need to enable/disable to fix this? we are using babylonjs as 3d renderer it work on webgl
Replies
2
Boosts
1
Views
1.9k
Activity
Jun ’23
Issue running openGL via headless mac mini
I am currently trying to use EC2 mac instances to run a CI/CD pipeline which involves running tests with electron/selenium. In order to run these tests openGL needs to be available. Im currently getting there error on line 49 of https://chromium.googlesource.com/chromium/src/+/8f066ff5113bd9d348f0aaf7ac6adc1ca1d1cd31/ui/gl/init/gl_initializer_mac.cc. With the output on the instance giving: 2022-06-09 19:38:25.937 Electron[52243:188559] +[NSXPCSharedListener endpointForReply:withListenerName:]: an error occurred while attempting to obtain endpoint for listener 'ClientCallsAuxiliary': Connection interrupted [52245:0609/193826.555969:ERROR:gl_initializer_mac.cc(65)] Error choosing pixel format. [52245:0609/193826.556035:ERROR:gl_initializer_mac.cc(193)] GLSurfaceCGL::InitializeOneOff failed. [52245:0609/193826.664827:ERROR:viz_main_impl.cc(188)] Exiting GPU process due to errors during initialization The root cause of this is there is no display connected to the mac mini. Using vnc to screen share with the host (which creates a display) fixes allows openGL to work as expected. Unfortunately this is not a solution/workaround for my use case as I will need to restart/reboot these instances after each run. I have tested this multiple times and after rebooting the instance the display is no longer present. (I have verified the displays being recognized / not being recognized with displayplacer list) Is there any way to make the mac mini host think that it has a display without relying on physical workarounds (I dont have physical access to the machine) or use software like BetterDummy that I can't run in a script.
Replies
1
Boosts
1
Views
1.9k
Activity
Jan ’23
The iPhone doesn't support 32-bit float textures?
I create a 32-bit floating point texture withCVOpenGLESTextureCacheCreateTextureFromImage(kCFAllocatorDefault, ..., ..., NULL, GL_TEXTURE_2D, GL_RGBA, ..., ..., GL_BGRA, GL_FLOAT, 0, ...);orglTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, 128, 128, 0, GL_RGBA, GL_FLOAT, ...);send the texture to a vertex shader and read the output with transform feedback. For some reason the data is truncaed to 16-bit half floats.For example,Input: 0.001000, 0.000100, 0.000010, 0.000001 Output: 0.000999, 0.000100, 0.000000, 0.000000This only happens on my iPhone 6s, not on the iPad.Does the iPhone not support 32-bit floating point textures in OpenGL?
Replies
1
Boosts
0
Views
1.9k
Activity
Oct ’22
Running MapLibre Open GL project on Apple Silicon device has better Simulator performance on `x86_64` than `arm64`.
Also submitted as https://feedbackassistant.apple.com/feedback/10763106 Tracked in MapLibre (with screenshots & videos) under https://github.com/maplibre/maplibre-gl-native-distribution/issues/7 Background The MapLibre project provides iOS binaries for both x86_64 & arm64 which allows for Simulator development on either Intel or Apple Silicon architectures. MapLibre is an Open GL project, and we are aware of the requirement of Metal. When using the Mapbox.xcframework for a 3rd party map project, there are several issues when targeting the iOS Simulator for arm64. Issues MapLibre targeting arm64 iOS Simulators 14.5 & 16.0 have a drawing error that is eventually fixed when the map is at steady state. MapLibre targeting arm64 iOS Simulators 15.4 & 15.5 have a drawing error, followed by an exception when moving the map. Questions Why does setting EXCLUDED_ARCHS, and force targeting x86_64 seem to be the accepted workaround for Simulators on Apple Silicon? EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64 What changed from iOS Simulator 14.5 to 15.5 and to 16.0? Why so many log warnings for 'cyclone' is not a recognized processor for this target (ignoring processor)? These are fixed when targeting x86_64. Test environment macOS Ventura 13.0 Beta (22A5295i). Occurs on Big Sur on M1 Apple Silicon, too. Xcode Version 14.0 beta 3 (14A5270f). Occurs with Xcode 13.4, too. M1 Apple Silicon No issue when running on iOS Devices Mapbox.xcframework lipo information lipo -info Mapbox.xcframework/ios-arm64_armv7/Mapbox.framework/Mapbox Architectures in the fat file: Mapbox.xcframework/ios-arm64_armv7/Mapbox.framework/Mapbox are: armv7 arm64 lipo -info Mapbox.xcframework/ios-arm64_i386_x86_64-simulator/Mapbox.framework/Mapbox Architectures in the fat file: Mapbox.xcframework/ios-arm64_i386_x86_64-simulator/Mapbox.framework/Mapbox are: x86_64 i386 arm64 arm64 Simulator throws many not recognized processor warnings. 'cyclone' is not a recognized processor for this target (ignoring processor)
Replies
6
Boosts
3
Views
2k
Activity
Jul ’22
OpenGL end of life date (support still in iOS 14?)
Hi,i would like to know if OpenGL will still be supported in iOS 14?This info is needed to plan the migration activities accordingly.Is there a link which could provide a concrete end of life date?
Replies
5
Boosts
0
Views
4.6k
Activity
Sep ’21
how can i show two OpenGL view on ios?
I created two caeagllayers to display two independent OpenGL ES views, mainview and childview, which inherit UIView and override layerClass. First, mainview runs CAEAGLLayer in the main thread, creates an eaglcontext, and uses cadisplaylink to refresh the view. CAEAGLLayer opaque = true for mainview. The second childview is overlaid on the mainview. In a custom sub thread, create a caeagllayer and eaglcontext, then initialize the operation, and use cadisplaylink to refresh the view. The whole process can run well on IOS simulator, but some exceptions will be displayed on real iphone11: If childview's CAEAGLLayer opaque = true, after childview is created, I must touch the iPhone 11 screen before i can see OpenGLES, and then the interface displays normally. If CAEAGLLayer opaque = false in childview, I can see the OpenGL view displayed without touch the screen, but there will be transparency problems in the interface display. If the translucent texture is displayed in childview, I can see the view displayed on mainview. I hope I have clearly described the problem, so how can I modify it? Thanks for any insights, examples, or suggestions。
Replies
0
Boosts
0
Views
714
Activity
Aug ’21