http://iphonedevelopment.blogspot.com/2010/11/opengl-es-20-for-ios-chapter-4.html