1-初识DXGI与D3D

news/2024/10/22 12:20:12/

1 D3D(Direct3D)

简介:显卡,又叫做3D加速卡。当我们希望调用显卡中的3D加速功能来进行某些优化时,无法直接通过操作系统或者应用程序调用显卡,而是通过系统提供的API。D3D就是其中一种API,另外还有OPENGL。
Feature Level: D3D11以后支持,是D3D11的必备概念。因为D3D11的不同功能对于硬件的最低要求是不尽相同的,所以通过引入feature level对D3D11的功能进行了划分。这使得D3D11可以在D3D10甚至D3D9的硬件上运行。具体版本对应的功能如下图所示:




  关于 D3D9,它是 D3D 系列中唯一支持 Windows XP 的版本,所以依然存在。然而值得一提的是,XP 下的 OpenGL 驱动也在不断更新,OpenGL 同样可以带给 XP 原本只有 D3D10 和 D3D11 的 GPU 能力,而且没有性能损失。
CheckFormatSupport: D3D10 本身不支持 ARGB 颜色格式。但是根据 D3D11 的描述: ARGB 对 feature level 9_x 和 11_0 是必须支持,对于 feature level 10_x 是可选支持。用 CheckFormatSupport 可以检查某个格式是否支持, 或者直接通过 feature level检查格式的支持情况。
  另外, D3D11 还增加了 CheckFeatureSupport 函数, 用来检查 multithread、 double、 atomic、 compute shader 4.x 是肉支持。
Compute Shader: compute shader又叫做 DirectCompute, 在 D3D11 的 GPU 上是 5.0 版本, 在 D3D10.x 的 GPU 上 是简化的 4.x 版本(不支持RWTexture, 无法写入 texture)。在 D3D11 下, 可以把 texture 和 buffer 作为输入、 texture 作为输出, 从而实现从 texture 到 texture 的流水线。

题外话:
  从 CS 转回图形流水线的时候, 在 N卡 上都会出现明显的几毫秒延迟,而在 A卡 上不会出现这个问题。

Multi-threaded: D3D11 加入了显示的多线程支持, 它把接口分成了两部分:
  1- 负责建立资源的函数属于 ID3D11Device, 它是线程安全的, 在必要情况下会自动加锁。
  2- 剩下的部分都属于 ID3D11DeviceContext, 没有线程安全, 需要上层代码处理。

顺带一提:
  高性能地使用多线程事需要驱动支持的,虽然 GPU 一般都有多个指令单元, 但是驱动通常不开放多线程的功能。所以得通过软件实现命令列表, 这使得性能并无提高反而降低。

2 DXGI(DirectX Graphics Infrastructure)

简介: DirectX 图形基础架构,提供了对图形硬件进行底层管理的功能,与 D3D 的i图形功能独立。DXGI 可以说是提供了一个底层的通用框架用来支持未来的硬件。DXGI 的目的是沟通核心模式驱动和系统硬件。
主要功能: 枚举显示硬件设备,将渲染好的帧呈现到输出设备,调整显示设备参数,全屏模式的切换等。


http://www.ppmy.cn/news/152354.html

相关文章

不定积分及简单例题

文章目录 一 基本概念二 公式与积分法2.1 基本公式2.2 换元积分凑微分法换元积分法 2.3 分部积分 三 三角有理函数3.1 有理函数积分3.2 反三角求导3.3 万能公式3.4 三角函数 四 基本题型4.1 概念4.2 换元积分法4.3 分部积分4.2 有理与三角函数 五 接力题典5.1 入门5.2 基础5.3 …

[转载]关于如何选择5D2和6D的忠告

【选择5D3的言论】 尽管佳能使用了1位数命名,但我认为6D与5D2并不是一个档次的,亲。理由如下: 一、众所周知,无论佳能还是尼康,日本照相机在刚刚推出时的价位偏高,假以时日,日后一定是会降价的&…

D2D

D2D: Device-to-Device即是设备到设备的通信。 1.认识D2D 基于蜂窝网络的D2D通信,或称为邻近服务(Proximity Service,ProSe),是指用户数据可不会经过网络中转直接在终端之间传输。D2D通信与传统的通信架构有显著区别&#xff0c…

e^x的导数仍为e^x

elimn→∞(11n)n dexdxexdx−exdxexedx−1dx 即证: edx−1dx1 令: tedx−1 ,可得 dxln(t1) 故 edx−1dxtln(t1)1ln(1t)1t 由 e 的定义式可得edx−1dx=1 也即 dexdxex 故得证

重积分的计算与理解

主要分为二重积分和三重积分。 二重积分 二重积分的基本思想是变成两次积分。物理意义已知面密度f,算质量 即首先把y方向的每一根线段计算出质量(相当于把y的线捏起来了),然后算x 主要方法如下: 计算 ∬ D f ( x , y ) \iint \limits_Df(x,y) D∬​f(x…

不定积分——类似1/(1+e^x)的积分

1. ∫ 0 1 1 1 e x d x \int_{0}^{1}\frac{1}{1e^x}{\mathrm d}x ∫01​1ex1​dx 解: 由于: 1 1 e x e − x e − x 1 \LARGE\frac{1}{1e^x}\frac{e^{-x}}{e^{-x}1} 1ex1​e−x1e−x​ 故: ∫ 0 1 1 1 e x d x ∫ 0 1 e − x e − x …

连续随机向量的概率密度函数f(x1,...,xn)可以表示为n个相互独立函数g(x1)...g(xn)之积则其各个分量Xi相互独立推导过程中的关于C1...Cn=1的问题

在陈希孺老先生的概率统计教材中,关于连续随机变量的独立性有如下定理和推导过程: 老猿对C1…Cn1想了半天都没想出来原因,干脆放弃了,今天又仔细思考了一下,终于明白是个很简单的问题,下面列一下推导过程&a…

C#,生信软件实践(06)——DNA数据库GenBank文件的详解介绍及解释器之完整C#源代码

1 GenBank 1.1 NCBI——美国国家生物技术信息中心(美国国立生物技术信息中心) NCBI(美国国立生物技术信息中心)是在NIH的国立医学图书馆(NLM)的一个分支。它的使命包括四项任务:1. 建立关于分…