-3

So today my boss said to me :"Learn Open GL as soon as you can, especially about how to make a model and how to implement designs in Open GL. And once you are done email me and I will give you an app for development".

So I am an iOS developer and know nothing about Open GL. I read online that Open GL is an API used for rendering graphics and there is a library of code that needs to be used. So my questions are:

  1. At the end my boss said I will be developing an app, and I am guessing he meant iOS app since that is what I know. So can you use Open GL with iOS?

  2. I read online that Open GL uses C or C++. And iOS apps are written in objective-c or Swift. So If I use OPEN GL in iOS apps, will there be two different languages?

Nicol Bolas
  • 449,505
  • 63
  • 781
  • 982
  • https://developer.apple.com/library/ios/documentation/3DDrawing/Conceptual/OpenGLES_ProgrammingGuide/DrawingWithOpenGLES/DrawingWithOpenGLES.html – beyowulf Feb 20 '16 at 22:36
  • 1
    Possible duplicate of [Learning OpenGLES 2.0 on iOS](http://stackoverflow.com/questions/8482327/learning-opengles-2-0-on-ios) – Andrew Feb 21 '16 at 03:23

3 Answers3

0

Yes, OpenGL is an API. You can interface with it from various languages, but it is decidedly "c-like". (It makes heavy use of pointers, pointer arithmetic, and memory buffers.

iOS supports OpenGL ES, a slimmed-down version of OpenGL designed for mobile devices and such. You'll want to learn OpenGL ES 2.0

OpenGL is a big, complex API with a HUGE learning curve. Expect to spend weeks studying before you really get it. I did, and my head just about exploded but I got it.

If you've studied 3D graphics and transformation matrices then you'll have an easier time of it.

You'll want to use GLKit, an iOS framework that provides ready-to-use view and view controller classes that make setup easier, plus lots of support functions that you need. I developed an app called Face Dancer that finds and morphs faces in still images or videos from the iPhone/iPad camera. It's OpenGL based, and is free on the app store if you want to check it out.

Duncan C
  • 128,072
  • 22
  • 173
  • 272
0

You will have better luck Googling, than posting here with such a general question. However, if you are a visual person and really need a step-by-step introduction to OpenGL, in general:

https://www.youtube.com/watch?v=6c1QYZAEP2M&list=PLRwVmtr-pp06qT6ckboaOhnm9FxmzHpbY

I've been developing with OpenGL for many years, but still found Jamie King's videos to be a great refresher for modern OpenGL. Since you are an iOS developer, you should go to the Apple site for OpenGL ES development:

https://developer.apple.com/library/ios/documentation/3DDrawing/Conceptual/OpenGLES_ProgrammingGuide/Introduction/Introduction.html

Personally, I'd start with Jamie King's vids, as he has a wealth of info for newer developers. Once you get going with some code and run into problems, that would be the best time to post on here.

Good luck, Harshil.Chokshi :^)

yapdog
  • 106
  • 4
0

(1) Yes, iOS supports OpenGL ES which is the variant of OpenGL canonically used for mobile devices.

(2) OpenGL is a C API. Objective-C (and C++ for that matter) is a superset of C so you can freely call into OpenGL from Objective-C.

user501138
  • 869
  • 2
  • 9
  • 16