苹果自成一套的体系可以尽情展示自家的技术水准,但是也会给一些程序开发带来挑战,比如OpenGL在Windows及Linux系统下都支持的很好,而OS X系统上就不行,好在Geeks3D的大神们本着Geek的折腾精神终于成功在OS X系统运行了OpenGL程序。 这还得感谢他买了15寸的Retnia版Macbook Pro,过去的几个月一直在研究OS X 10.8系统上的OpenGL支持问题,现在总算有点眉目了。 Macbook Pro提供了三种OpenGL渲染方法:两种硬件渲染,一种软件渲染,作者第一次用的将是软件渲染,而硬件渲染的基础主要是Intel HD 4000核显以及1GB显存的NVIDIA GT 650M独显。 OS X 10.8系统支持OpenGL 2.1和OpenGL 3.2 Core核心文件,但是不支持完整的OpenGL 3.2。作者在调试自己的3D库文件时发现Retina版MBP电脑上的OpenGL扩展指令与苹果OpenGL兼容列表上列出的都是一样的。 OSX 10.8 OpenGL Core Caps (GL 3.2) 至于OpenGL 3.2核心文件,软件渲染器支持15条扩展指令,HD 4000核显支持13条而GT 650M支持16条。如果你想在OS X 10.6系统下支持OpenGL 3.2则是不可能的,只能在10.7(Lion)以及10.8(Moutain Lion)系统上才可以。 在Windows系统上用于连接OpenGL与应用的API被称为WGL,Linux系统上叫做XGL,而在OS X系统上有四个API,分别是CGL、AGL、NSOpenGL以及GLX,其中CGL是API的基础,其他API都要依赖这个API。 上面牵扯的理论知识太多了,来看看作者的一个实际成果吧——GLSL Hacker,这Geexlab工具跨平台支持的OS X版本。 还有一个API是NSOpenGL,来源于Cocoa框架,后者是一个OS X系统下64位的窗口系统。 截图显示的是GT 650M显卡的GPUTest拷机测试,GPUTest测试广泛应用在了Furmark、Tessmark这样的测试软件中,现在则用在OS X平台上。 作者表示在第一次接触OS X平台上OpenGL的表现还是很积极的,由于吸收了Objective-C语言的优点,它很容易就能在Cocoa窗口中进行OpenGL编程,作者在 OSX 10.7及10.8系统的HD 4000、GT 650M、GeForce 320M、HD 4870、HD 6750M显卡上都做了体验,它的GLSL Shader都可以立即工作。 不太方便的则是glext.h文件,他的代码依赖于从OpenGL.org上下载的官方glext.h文件,但是使用苹果的glext.h文件就不能编译通过。 最后,作者期望的看到在OS X上使用曲面细分功能,这需要OpenGL 4,还需要苹果的进一步支持。 注意:联系我时,请一定说明是从【S】看到的信息,谢谢。 |
联系电话: 联系 QQ: 打电话给我、或者加QQ好友时,请一定说明来自(三亚上门维修电脑)谢谢您! 三亚上门维修电脑 | 编辑:admin