E X P

  • 编辑
  • 评论
  • 标题
  • 链接
  • 查错
  • 图文
  • 拼 命 加 载 中 ...   苹果自成一套的体系可以尽情展示自家的技术水准,但是也会给一些程序开发带来挑战,比如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)
      OSX 10.8 OpenGL Lagacy Caps (GL 2.1)
      OSX 10.7 OpenGL Core Caps (GL 3.2)
      OSX 10.7 OpenGL Legacy Caps (GL 2.1)
      OSX 10.6 OpenGL Caps (GL 1.4, GL 2.1)

      至于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,还需要苹果的进一步支持。

    ×
    热门文章
    1骨伽带来小乘风MX600 mini机箱:支持M-ATX背插,配双16cm风扇,首发299元起
    2振华LEADEX III金牌全模电源上市:持ATX 3.1和PCIe 5.1,首发659元起
    3海盗船TX1000电源评测:低调、高性能且设计纯粹的ATX 3.1产品
    4铭凡旗下原子侠X7 Ti迷你PC开售:搭载Ultra 9 185H+4英寸触摸屏,4899元起
    5振华ZILLION 850W/1050W电源开卖:金牌全模,支持ATX 3.1,活动价659元起
    6台积电CoWoS产能告急,无法满足AI GPU需求
    7苹果高层到访台积电,讨论2nm芯片订单
    8英特尔公布更多Lunar Lake细节:平台算力超100 TOPS,确认在今年Q3发布
    9三星正在准备3nm的Exynos芯片,打算2024H2量产
    欢迎参与评论,每一条合规评论都是对我们的褒奖。
    登录快速注册 后发表评论
    登录 后发表评论,若无帐号可 快速注册 ,请留意 评论奖罚说明