CD3DX12_DESCRIPTOR_RANGE1

的baseShaderRegister

用来指定 t0 t1 b0 b1...的index

t0 srv

b0 constant buffer

u0 uav

这个的名字叫 hlsl bind slot

还有个index 叫 API bind slot

pCmdList->SetComputeRoot32BitConstant(0,seed); // 0 is the parameter index,--api bind slot

=============

Descriptor GPU资源的描述信息

Descriptor Heaps

Descriptor Tables

可以快速申请,因为只是标记(memory 地址)

CD3DX12_DESCRIPTOR_RANGE1 DescRange[6]; DescRange[0].Init(D3D12_DESCRIPTOR_RANGE_SRV,6,2); // t2-t7

DescRange[1].Init(D3D12_DESCRIPTOR_RANGE_UAV,4,0); // u0-u3

DescRange[2].Init(D3D12_DESCRIPTOR_RANGE_SAMPLER,2,0); // s0-s1

CD3DX12_ROOT_PARAMETER1 RP[7]; RP[0].InitAsConstants(3,2); // 3 constants at b2

RP[1].InitAsDescriptorTable(2,&DescRange[0]); // 2 ranges t2-t7 and u0-u3

CD3DX12_STATIC_SAMPLER StaticSamplers[1];

StaticSamplers[0].Init(3, D3D12_FILTER_ANISOTROPIC); // s3

CD3DX12_STATIC_SAMPLER StaticSamplers[1];

StaticSamplers[0].Init(3, D3D12_FILTER_ANISOTROPIC); // s3

CD3DX12_VERSIONED_ROOT_SIGNATURE_DESC RootSig(7,RP,1,StaticSamplers);

ID3DBlob* pSerializedRootSig;

CheckHR(D3D12SerializeVersionedRootSignature(&RootSig,pSerializedRootSig));

ID3D12RootSignature* pRootSignature;

hr = CheckHR(pDevice->CreateRootSignature( pSerializedRootSig->GetBufferPointer(),pSerializedRootSig->GetBufferSize(), __uuidof(ID3D12RootSignature), &pRootSignature));

Root Signaatures 包含 root constants, root descriptors,   descriptor tables 三种类型

是shader paramaters

REF:

https://docs.microsoft.com/en-us/windows/desktop/direct3d12/descriptor-tables-overview

https://docs.microsoft.com/en-us/windows/desktop/direct3d12/creating-a-root-signature

DX12的更多相关文章

  1. DX12龙书第6章习题

    1. { { , DXGI_FORMAT_R32G32B32_FLOAT, , , D3D12_INPUT_CLASSIFICATION_PER_VERTEX_DATA, }, { , DXGI_FO ...

  2. WITCH CHAPTER 0 [cry] 绝密开发中的史克威尔艾尼克斯的DX12技术演示全貌

    西川善司的[WITCH CHAPTER 0  cry]讲座 ~绝密开发中的史克威尔艾尼克斯的DX12技术演示全貌   注:日文原文地址: http://pc.watch.impress.co.jp/d ...

  3. 虚幻4以及DX12将允许开发者利用Xbox One的更多性能(转)

    GamingBolt 最近采访了 Epic Games 的总经理 Ray Davis,讨论了有关旗下虚幻引擎(Unreal Engine)的议题.在这次的访谈中,Ray 解释了关于使用 DirectX ...

  4. Dx12 occlusion query

    https://github.com/Microsoft/DirectX-Graphics-Samples/blob/master/Samples/Desktop/D3D12PredicationQu ...

  5. dx12 memory management

    https://msdn.microsoft.com/en-us/library/windows/desktop/dn508285(v=vs.85).aspx Map with D3D11_MAP_W ...

  6. DX12龙书 00 - 环境配置:通过 Visual Studio 2019 运行示例项目

    0x00 安装 Visual Studio 2019 安装 Visual Studio 2019 以及相关组件. 注:安装组件时带的 Windows 10 SDK 可以在 Individual com ...

  7. DX12 开debuggerlayer

    https://social.technet.microsoft.com/Forums/azure/en-US/ef10f8eb-fee0-4cde-bb01-52d1db2ea347/win10-1 ...

  8. DX12龙书 01 - 向量在几何学和数学中的表示以及运算定义

    0x00 向量 向量 ( vector ) 是一种兼具大小 ( magnitude ) 和方向的量. 0x01 几何表示 几何方法中用一条有向线段来表示一个向量,其中,线段长度代表向量的模,箭头的指向 ...

  9. DX12龙书 02 - DirectXMath 库中与向量有关的类和函数

    0x00 需要用到的头文件 #include <DirectXMath> #include <DirectXPackedVector.h> using namespace Di ...

随机推荐

  1. 线程同步工具 Semaphore类的基础使用

    推荐好文: 线程同步工具(一) 线程同步工具(二)控制并发访问多个资源 并发工具类(三)控制并发线程数的Semaphore 简介 Semaphore是基于计数的信号量,可以用来控制同时访问特定资源的线 ...

  2. ES6 一种新的数据结构--Map跟Objct的区别

    var map1=new Map(); var keys={key:'val'}; map1.set(keys,'content'); ==> {Object {key: "val&q ...

  3. Django内置信号

    阅读目录(Content) Django中内置的signal 自定义信号 1.定义信号 2.注册信号 3.触发信号 回到顶部(go to top) Django中内置的signal Django中提供 ...

  4. servlet学习记录:Servlet中的service()方法

    Servlet的生存时间是由init,service,destory方法构成,这里分析一下service这个方法 Servlet接口中定义了一个service()方法,而我们一般是使用HttpServ ...

  5. Python3发送qq邮件,测试通过

    import smtplib from email.mime.text import MIMEText # 收件人列表 mail_namelist = ["10402852@qq.com&q ...

  6. spring-web涉及jar包说明

    <!-- spring-context, spring-aop, spring-beans, spring-core, spring-expression --> <dependen ...

  7. [水煮 ASP.NET Web API2 方法论](12-1)创建 OData

    问题 怎样用在 Web API 中创建 OData 服务. 解决方案 对于我们来说,在 Web API 中使用 OData最简单的方式就是使用 ASP.NET 模板来创建Odata Controlle ...

  8. JavaScript备忘录-闭包(2)

    闭包的定义 闭包是指函数有自由独立的变量.换句话说,定义在闭包中的函数可以“记忆”它创建时候的环境. 闭包的浅显理解 function makeFunc() { var name = "Mo ...

  9. MS SQL Server迁移至Azure SQL(官方工具)

    前面,我有尝试过将MS SQL Server数据数据迁移至Azure SQL,请参考<MS SQL Server迁移至Azure SQL>,使用的是第三方工具,但现在官方更新了工具,我们尝 ...

  10. asp.net mvc 中使用NPOI导出excel

    版本信息:NPOI1.2.5(2.0以上的版本很多方法不清楚) 明确三点: path: mvc 部署网站的时候,我们肯定要拷贝的一个文件夹就mvc的UI层,有点可以肯定的是,你部署网站的路径不一定都是 ...