api - 除了 DirectX/OpenGL,是否还有更低级别的 API?

标签 api opengl directx

我听说 OpenGL 和 DirectX 调用实际上是由视频驱动程序转换为特定于卡的调用。我也知道有时一个新的视频驱动程序可以将视频游戏的性能提高 50%,而无需开发人员做任何事情。如果我想对显卡进行细粒度控制,这是否可以达到低于 DX/OpenGL 的水平? Nvidia/AMD 是否发布供应商特定的 API?

最佳答案

NVidia 将他们的 GPU 编程模型保密。没有机会低于 DirectX、OpenGL、CUDA 或 OpenCL。

AMD/ATI 开放了他们的文档,但这对于日常工作的程序员来说可能太低了:http://developer.amd.com/documentation/guides/pages/default.aspx#open_gpu

英特尔开源了他们的 Linux 驱动程序,并且有一些文档。

AMD 和 Intel 的 Linux 开源驱动程序都通过称为 DRI2/DRM 的低级 API;与 KMS 结合使用,也称为 Gallium。 MesaGL 位于 DRI 之上,所以在 Linux 中实际上有这样一个低于 OpenGL 级别的 API 到显卡。 MesaGL 是所谓的 DRI 状态跟踪器,据我所知,WINE 开发人员的 Direct3D-10(和 11?)状态跟踪器几乎完成了,因此在可预见的 future ,WINE 将支持原生 Direct3D。当然只能使用 DRI,所以不支持 NVidia GPU。

关于api - 除了 DirectX/OpenGL,是否还有更低级别的 API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6345538/

相关文章:

c# - 如何在 C# 类库中编写异步方法

c - opengl中处理光照和阴影的问题

opengl - GPU DirectX 与 OpenGL 支持

iPhone:在 UIView 之上分层透明 openGL View ?

visual-studio-2005 - 在 VS2005 中使用 Windows 7 和 DirectX SDK

c# - 直接视频缓冲区访问

php - Facebook 分享后执行功能

javascript - 使用 YouTube API 构建允许 YouTube 搜索的页面

javascript - Google Maps API Geocoder 获得正确的经度和纬度,但放置了错误的标记

c++ - 简单的 openGL 程序无法通过编译