direct 3d
编程指南包含如何使用Direct3D 11可编程管道科学地为游戏和桌面应用程序创建实时3d图形的信息。
- 计算着色器
- 动态渲染链接
- 多线程
- 曲面细分
- 功能的完整列表
计算着色器
计算着色器允许在GPU上面并行处理,计算着色器是为通用数据并行处理操作而设计的可编程着色器。它在处理输入输出的方式上和其他可编程着色器(顶点、像素、几何体)相似。计算着色器集成到Direct3D中,可以通过Direct3D设备访问。计算着色器可以通过Direct3D设备直接与图形着色器共享内存资源,然而,它并不直接连接到其他着色器阶段。
计算着色器是为大众市场应用程序设计的,当API(及其相关软件堆栈)和cpu之间的转换成本将消耗太多开销时,这些应用程序将以交互速率执行计算。
一个计算着色器有它自己的状态集。计算着色器不一定强制1-1映射到输入记录(如顶点着色器)或输出记录(如像素着色器)。图形着色器的一些特性得到了支持,但是为了添加新的特定于计算的特性,已经删除了其他特性。
为了支持特定于计算的特性,有几种新的资源类型可用,比如读/写缓冲区、纹理和结构化缓冲区。
有关更多信息,请参见计算着色器概述。
动态渲染链接
渲染系统在管理着色器时需要处理各种各样的复杂性,同时提供优化着色器代码的最大可能机会。当您考虑到需要跨广泛的可用硬件配置支持呈现场景中的各种不同材料时,这将成为一个更大的挑战。为了解决这些挑战,着色器开发人员通常采用两种通用方法中的一种。要么创建功能齐全的“超级着色器”,以牺牲一些性能的灵活性,或专门为每个几何流创建单独的着色器,材料类型或轻型组合所需。
超级着色器通过使用不同的预处理器定义重新编译相同的着色器来处理这个组合问题,而后一种方法使用了蛮力开发人员的能力来达到相同的目的。对于现在必须在游戏和资产管道中管理数千种不同着色器排列的开发人员来说,着色器排列激增常常是一个问题。
Direct3D 11和着色器模型5引入了面向对象的语言构造,并提供了着色器链接的运行时支持,以帮助开发人员处理这些开发问题。
有关更多信息,请参见动态链接。
多线程
由于场景图遍历、对象排序和物理模拟等代价高昂的活动,许多图形应用程序都是cpu绑定的。与此同时,多核系统正变得越来越普遍。因此,Direct3D 11改进了它的多线程支持,以支持多个CPU线程和D3D11图形api之间的有效交互。
Direct3D 11支持以下功能来支持多线程:
- 在单独的线程中创建并发对象——使对象创建入口点成为自由线程,使得许多线程能够同时执行对象创建。例如,应用程序现在可以在一个线程上编译着色器或加载纹理,而在另一个线程上执行渲染。
- 在多个线程上创建命令列表——命令列表是一个记录的图形命令序列。使用Direct3D 11,可以在多个CPU线程上创建命令列表,从而支持在多个线程上并行遍历场景数据库或物理处理,从而释放主呈现线程,将命令缓冲区分配给硬件。
有关更多信息,请参见多线程。
曲面细分
曲面细分可以用来渲染单个模型的不同层次的细节,生成更精确的几何模型,这取决于场景所需的细节级别。在细节级别允许较低的几何模型的场景中,这一点非常重要,因为这会减少在呈现过程中消耗的内存带宽。
在Direct3D中,GPU上实现了曲面细分,从粗糙的(不太详细的)输入块计算更平滑的曲面。每个(四面或三角形)贴片面被细分为更小的三角形面,以便更好地逼近所需的表面。
有关在图形管道中实现曲面细分的信息,请参阅曲面细分概述。
功能的完整列表
这是Direct3D 11中功能的完整列表。
- Direct3D 11可以通过在创建设备时指定一个特性级别在底层硬件上运行。
- 曲面细分
- 壳着色器
- 域着色器
- 多线程
- 多线程 资源/着色器/对象创建
- 多线程显示队列创建
- 着色器特性
- 可寻址资源——纹理、常量缓冲区和采样器
- 其他资源类型,如读/写缓冲区和纹理
- 子程序
- 计算着色器-----一种着色器,设计用于加速计算,通过在几个软件线程或线程组之间划分问题空间,并在着色器寄存器之间共享数据,以显著减少输入着色器所需的数据量,可以显著加快计算速度。计算着色器可以显著改进的算法包括后处理、动画、物理和人工智能
- 几何着色器
- 实例化----允许几何体着色器输出最多1024个顶点,或者实例和最多1024个顶点的任意组合(每个顶点最多32个实例)。
- 像素着色器
- 覆盖范围作为PS输入
- 可编程插值输入-能够评估像素内的属性,在任何地方的多采样网格
- 质心的定义
- 纹理
- 大内存支持
- 流输出的改进
-
只读深度或模板视图
-
着色器模型5(shader Model 5)
相关阅读
A5创业网(公众号:iadmin5)11月14日讯,各大电商平台双11的活动都已经告一段落了,但是双12却要来临了,很多网友喜欢在电商搞活动的时候
今年双十一红包额度更大,奖品超级给力,是去年的4倍,总奖池数量过2亿。在2017年11月1日至11日双11支付宝将在不同的时间段,分发5W、7W
色情推动技术 – 成人网站的用户体验比 Youtube
[核心提示] Youtube 姗姗来迟的逐帧预览视频功能导致用户吐槽其播放器体验不如成人网站。事实上成人网站不仅满足着人类原始和基
1、限幅滤波法(又称程序判断滤波法)A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值
1130 - Host XXX is not allowed to connect to this
1.在用Navicat配置远程连接Mysql数据库时遇到如下报错信息,这是由于Mysql配置了不支持远程连接引起的。 2.在安装Mysql数据库的主