该教程是为 Swift 版本 2 编写的,并且已经过时了一段时间。您需要该存储库中的库的唯一原因是因为它定义了一些使您的程序正确链接所必需的 OpenGL 函数加载器。我目前使用的是我破解的那个库的一个补丁版本,SGLOpenGL
让它在 Swift 3 下编译。我相信这是目前将 OpenGL 与 Swift 一起使用的唯一方法。您将不得不更正 SwiftUnsafePointer
并重写函数参数列表以使用(或删除)命名参数等,因为 Swift 3 是一个破坏源代码的版本。编译器通常会告诉你你必须做什么,这只是很多乏味的工作。
请注意,您不需要 Turnbull 的任何其他库即可将 OpenGL 与 Swift 结合使用。您可以轻松(“轻松”)为四元数、向量、矩阵、相机截头体等编写自己的Math
函数实现。Google 是您的朋友,因为这些例程中的大多数都是计算机图形学中经过充分研究的问题,并且有Web 上的大量伪代码和 C++ 实现可帮助您入门。
替换 PNG 库并非易事,但幸运的Image
是,已经存在一个原生 Swift PNG 解码器†</sup>,旨在与图形框架一起使用。MaxPNG
祝你好运!!!
†</sup> (披露,我是的作者MaxPNG
;我写它是因为几个月前我和你处于完全相同的位置。)