我现在有一点使用OpenGL的经验,我开始使用它,因为它说它是调用视频卡功能的唯一方法。 (除了DirectX - 我喜欢不到OpenGL)是否可以直接访问视频卡? (没有API)
对于编程(例如在C/C++中),OS提供了许多API,例如用于打印的函数。但是也可以通过使用汇编语言进行编码来绕过这些问题,并且调用更低级别的API(增加速度)或直接调用CPU。
所以我开始想知道为什么这不可能在视频卡上。为什么需要像OpenGL或DirectX这样的API?与这些进程是:
API-call >
OS calls video card (with complex opcodes, I think) >
video card responses (in complex binary format) >
OS decodes this format and responses to user (in expected API format)
我相信这应该会降低渲染过程的速度。
所以我的问题是:
有没有可能绕过任何图形API(在Windows下)并直接调用视频卡?
谢谢
丹尼斯
视频卡存储器和寄存器将隐藏在系统地址空间 - 无法直接访问它们。你可以期望的最好的方式是打电话给司机,但我不确定这是可能的。 – 2012-08-07 15:32:07
为什么需要?否则,你会一直陷入硬件特定的问题。在那里,做到了,不喜欢它。 – 2012-08-07 15:35:41
更好的问题是为什么人们会认为他们可以写出比供应商写的更好的图形驱动程序。 – 2012-08-07 19:01:01