Using OpenGL ES 3.0


Im hoping to use some instanced rendering and potentially transform feedback in an iOS project and I understand I need to define CINDER_GL_ES_3 and rebuild Cinder to override the 2.0 default on iOS. Where is the best practice to actually put this though, just above the other defines in Platform.h? in the Probably a basic question but wanted to get it right as I couldn’t find a clear answer online.

Also if anyone knows any limitations of using ES 3.0 with Cinder / warnings before I jump in they would be much appreciated.


If you didn’t want to modify cinder.xcodeproj yourself, you can use xcodebuild and OTHERCFLAGS, as explained here. But otherwise, yea just adding #define CINDER_GL_ES_3 to the top of cinder/gl/platform.h will work.

ES3 works very well on iOS, I think we’ve even discussed making it the default as it’s quite a few generations of iDevices back now that don’t support it.

Thanks Rich.

I will use platform.h for now but hopefully will also learn a bit more about build settings / flags soon (particularly with CMake on the way etc) it seems to be the way forward.