Tuesday, February 4, 2014

At the last Swipe Conference I presented two talks on OpenGL ES for iOS developers. I have now published these presentation videos for anyone to watch. I hope they might be useful resources for the iOS community.The first presentation, "Part 1: Learning to draw", was aimed at OpenGL noobs. I introduced the basics of OpenGL programming, rendering triangles, applying colours and lighting, and animating vertices. All using GLKit, which was introduced in iOS 5. I also very briefly introduced OpenGL ES 2.0 shader programming and then used all the concepts to dissect Xcode's iOS OpenGL template project.The second presentation, "Part 2: Rendering a masterpiece", covered more interesting rendering effects that GLKit makes very easy, such as textures, skyboxes and reflection maps. I demonstrated the tools that Apple provide for debugging, analysing and profiling OpenGL applications. I ended with a practical demonstration of some fancy custom storyboard segue transitions using OpenGL ES.Even though the presentations were given in late 2012, all the material is still very relevant as the talks focussed on OpenGL ES 2.0 and GLKit, still the primary OpenGL technologies in iOS today. Recently, iOS 7 introduced support for OpenGL ES 3. However, OpenGL ES 3 requires the very latest hardware and so in practice you probably won't be adopting OpenGL ES 3 immediately or, if you do, will need an OpenGL ES 2.0 fallback path anyway.You can watch the videos on YouTube:

This is the second talk of two about OpenGL ES and GLKit, aimed at iOS developers. This talk covers rendering effects in OpenGL using GLKit, looking at the OpenGL debugging and profiling tools that ship with Xcode, and demonstrating how OpenGL can be used for some fancy segue transitions. Presented at Swipe Conference 2012 by Chris Miles.In more detail, this talk covers:* Rendering textured triangles using GLKTextureLoader and GLKBaseEffect;* Creating cubemaps using GLKTextureLoader;* Rendering skyboxes using GLKSkyboxEffect;* Rendering reflection map effects using GLKReflectionMapEffect;* Demonstration of the Xcode OpenGL ES frame debugger;* Demonstration of the OpenGL ES Driver and Analyzer instruments;* Demonstration of the OpenGL ES Performance Detective;* Performance recommendations specific to OpenGL ES on iOS devices;* Demonstration of some fancy custom storyboard segue transitions using OpenGL ESThe slides from the talk are available at https://speakerdeck.com/chrismiles/opengl-es-with-ios-5-part-2-rendering-a-masterpiece or http://chrismiles.info/presentations/SwipeConf-2012-OpenGL-ES-iOS5/Swipe-2012-OpenGL-ES-iOS5-Part2.pdf [PDF]The demo apps used in the talk are all released open source.SwipeOpenGLTriangles demonstrates rendering textured triangles -- https://github.com/chrismiles/SwipeOpenGLTrianglesSwipe3D demonstrates GLKSkyboxEffect, GLKReflectionMapEffect, cubemap textures and indexed vertices -- https://github.com/chrismiles/Swipe3DFancySegue shows how to build custom segue transitions using OpenGL -- https://github.com/chrismiles/FancySegue

I want to thank the Swipe Conference organisers for allowing me to edit and publish the videos myself.