# Using OpenGL ES 3.0

**URL:** <https://discourse.libcinder.org/t/using-opengl-es-3-0/251>\
**Category:** Using Cinder\
**Created:** [September 5, 2016, 12:57pm UTC](https://discourse.libcinder.org/t/using-opengl-es-3-0/251 "2016-09-05T12:57:58Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![felixfaire](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.libcinder.org/felixfaire/32/168_2.png) [@felixfaire](https://discourse.libcinder.org/u/felixfaire)\
**Post date:** [September 5, 2016, 12:57pm UTC](https://discourse.libcinder.org/t/using-opengl-es-3-0/251/1 "2016-09-05T12:57:59Z")

</div>

Hey.

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 [fullbuild.sh](http://fullbuild.sh)? 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.

Thanks

---

<div class="post-metadata">

**Author:** ![rich.e](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.libcinder.org/rich.e/32/1025_2.png) [@rich.e](https://discourse.libcinder.org/u/rich.e)\
**Post date:** [September 5, 2016, 1:24pm UTC](https://discourse.libcinder.org/t/using-opengl-es-3-0/251/2 "2016-09-05T13:24:03Z")

</div>

If you didn’t want to modify cinder.xcodeproj yourself, you can use xcodebuild and `OTHERCFLAGS`, as explained [here](http://stackoverflow.com/questions/18106510/passing-compiler-flags-through-xcodebuild). 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.

---

<div class="post-metadata">

**Author:** ![felixfaire](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.libcinder.org/felixfaire/32/168_2.png) [@felixfaire](https://discourse.libcinder.org/u/felixfaire)\
**Post date:** [September 5, 2016, 1:37pm UTC](https://discourse.libcinder.org/t/using-opengl-es-3-0/251/3 "2016-09-05T13:37:29Z")

</div>

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.

Cheers.

[http://felixfaire.com/](http://felixfaire.com/)
