-
Notifications
You must be signed in to change notification settings - Fork 2
Home
These tutorials are written in Swift and OpenGL using the Xcode integrated development environment (IDE) available on MacOS. While Swift and OpenGL are available for programming off of the Mac platform, Xcode is available only on MacOS. There will be portions of the tutorials that are dedicated to setup code in Xcode, but the OpenGL content is applicable to all platforms.
Graphics programming can be really tough to learn. There are a lot of books on the topic, but having personally read a few of them myself, I often still had great difficulty getting the sample code to run on my Mac. Online tutorials are better in this regard, but platform specific code still requires translation to Swift which another hole for bugs to make their way into. With Swift, we also have Protocol Oriented Programming which provides a modern set of tools for abstraction.
It should be noted that the version of OpenGL used through these tutorials is 3.3 Core because it both incorporates the "modern OpenGL pipeline" with programmable shaders, and it available on a wider audience of computers. OpenGL 4.2 is the newest version of OpenGL supported on the Mac platform, while 4.6 is the most recent version of OpenGL available (as of this writing). It is possible that support for 4.2 will be provided in these tutorials at a later date, but at this time, there is no plan to do so.
I will be using the most up to date version of Swift as early as possible. As such, each tutorial, may see changes to it with the release of a new version of Swift.
The learning curve for OpenGL can be steep, but through these tutorials, I hope to help you overcome that threshold. Should there be any topic that's needs correction, updating, or improvement, I encourage you to open up an issue that these matters may be addressed. Thank you for helping me make these tutorials better!
Useful OpenGL References: