正文内容 评论(0

3D API的现在和未来
2001-08-20 15:24:00  出处:快科技 作者:Rookie 编辑:Rookie     评论(0)点击可以复制本篇文章的标题和链接

Quake之父John Carmack在/_论坛上发表了自己对3D API的看法:

"我仍在开发任何和OpenGL相关的程序,我还试图开发在mac,linux和windows三个平台都能运行的游戏,但是

我在这里想理性地谈一谈人们有关API的争论:

D3D已经真实地不能再真实了,MS每次发布一个版本的Direct3D,功能和性能都有很大提高。DX8已经是一个非常好的API了。一些人可能有不同意见,但是DX8只有一些小问题。反MS的力量总是盯住MS早期的问题不妨,而并不关注现在DX版本的提高。我在5年前对DX的观点已经不再成立。

我确实一直认为如果MS能投入OpenGL怀抱,并致力于OpenGL发展情况可能会更好一点儿。因为开发一个全新的API确实要

花很多时间,但是现在DX功能确实已经接近OGL。

显然Mac市场是一个变数而Linux市场则不是游戏开发人员追逐的目标。我对Linux平台游戏的移植多是出于美好的愿望,但从来没有想过盈利。从经济的角度来看,一个游戏开发人员如果忽视除Windows以外的操作系统,那么不会有好的市场回应。

一些人总是以老皇历的观点来看到API,如果你不在乎软件仿真的话,那么硬件可以给你这些功能,你可以通过API实现这些功能。如果你试图在TNT上使用Vertex程序或者映射包络图,DX8当然不可能奇迹般地工作。DX8的所谓硬件独立性看上去有些愚蠢,因为MS似乎更喜欢支持ATI的新硬件,如果真正公平地说,应该是D3D-GF3或D3D-R200而不是DX8和DX8.1。

所有Nvidia的新功能在成为新的Direct3D之前,首先是作为OpenGL扩展出现的。

而OpenGL扩展直到最近才出现分歧,所有的厂商都希望尽可能支持所有的扩展,而如果他们有独特功能的话,他们就开发自己的扩展,象寄存器累加器。当前OpenGL扩展混乱的状态令我困惑,我真的希望ATI可以接受Nvidia的扩展。否则我们的工作量实在太大。

不同显卡产品在高性能环境下表现的不确定性是一个危险的信号。但是如果你坚持所有的硬件性能都一样,又可能阻碍厂商取得显著的进步。如果产品的规格和实际性能有很大出入的话,那么对于我们是个沉重的负担。D3D开发因此会非常痛苦。

我们正在迅速进入图形编程的黄金年代。当前,API的显卡的功能非常复杂多变,今后两年后可能还会需要最原始的功能来判断复杂的操作,这样可能会影响性能。

从这一点来说,高水平的API确实非常重要,虽然对这个API到底是什么样子如何还存在一些争议,但这个模型将和C类似。正如任何CPU都可以编译C程序一样,用未来API开发的任何显卡都可以运行任何Shader。一些硬件厂商可以很在乎开发自己独有的功能,但是关键是如果这个功能你有他没有就无法成为主流功能,因此从技术角度来看,API的发展大方向是无可避免的。厂商最后竞争的筹码是性能和价格。

这正是图灵计算机思想的灵魂,即使OpenGL 2.0和DX10不能适应同一个Shader定义语言,但在功能上实际是等效的,而且可以自动转换。

至于一些细节,象纹理规格和内容管理,可能不同API还有不同,但一个图形程序员的核心日常工作基本上应该不会存在分歧。"

相信大家应该看出Carmack认为未来将会出现统一的API,而各个显卡如果遵守标准API规格的话,在功能上应该不存在区别,否则游戏开发人员很难做。各个显卡所不同的是性能和价格...

hmm,很难想象,厂商以后不能在功能上大做文章,大肆鼓噪的场面将不复存在,显卡江湖的腥风血雨要少很多了,以后我们只能看到Nvidia说它的显卡性能为X G pixels/s,而ATI说它的显卡性能是X G pixels/s,我们是不是应该建立一个价格体系,多少pixel值多少钱?有趣,有趣...

更令人感兴趣的是,Nvnews说Nvidia计划开发一个新的API自立门户,这个API可以充分发挥Nvidia产品的性能,而nvidia也不用受制于Microsoft或OpenGL ARB。举个简单的例子来说,GeForce4可能会受限于DirectX 9而无法发挥性能,而nvidia还要等待MS增加新的功能,这显然是对硬件性能的荒废而且浪费了宝贵的时间,因此nvidia希望开发自己的API,而无须等待MS。

通过开发自己的API,nvdia可以向开发人员提供所有硬件功能,当然,他们的芯片仍然支持DirectX和OpenGL的功能。

Nvidia会走这条路吗?ATI是否也有同样的计划?我想实际上他们应该早就有这种想法了,但是属于nvdia或者ATI的API

会出现吗?其实Nvidia和ATI如果开发专有API,是逆势而行,Carmack说的很明白,API统一是大势所趋...

所以我认为如果nvidia即使开发自己的API,也是短期行为,正如3dfx的Glide,初期也是风风光光,但是后来却日渐衰落直到消失,所以长远来看,3D API必将统一,你们认为呢?

【本文结束】如需转载请务必注明出处:快科技

责任编辑:

  • 支持打赏
  • 支持0

  • 反对

  • 打赏

文章价值打分

当前文章打分0 分,共有0人打分
  • 分享好友:
  • |
本文收录在
#快讯

  • 热门文章
  • 换一波

  • 好物推荐
  • 换一波

  • 关注我们

  • 微博

    微博:快科技官方

    快科技官方微博
  • 今日头条

    今日头条:快科技

    带来硬件软件、手机数码最快资讯!
  • 抖音

    抖音:kkjcn

    科技快讯、手机开箱、产品体验、应用推荐...