镇海淘宝网站建设,北京金创网站建设,百度网站后台管理系统,网络销售怎么干上篇文章我们创建了一个窗口#xff0c;看样子还不难#xff0c;我们继续玩DX12
引用一些文件
头文件
#include d3d12.h
#include dxgi1_4.h
#include wrl.h还有一些库
#pragma comment(lib, d3d12.lib)
#pragma comment(lib, 看样子还不难我们继续玩DX12
引用一些文件
头文件
#include d3d12.h
#include dxgi1_4.h
#include wrl.h还有一些库
#pragma comment(lib, d3d12.lib)
#pragma comment(lib, dxgi.lib)这个图是我最开始的理解哈哈不一定是对的笔者只是一个小萌新刚学DX和图形自己注意真实性
IDXGIFactory
仔细一看我发现居然有IDXGIFactory,IDXGIFactory1,2,3,4…嘶…很抽象我猜测是不同的API版本功能应该差不多
我们就用那个没数字的版本
这个东西有几个功能
能枚举我们显示器适配器还能用它创建一个SwapChain
IDXGIAdaptor
似乎这个就是显示器适配器也有IDXGIAdaptor1… (好烦躁啊怎么这么多我用哪个)
适配器是面向不同图形硬件的抽象概念描述了图形硬件(通常是显卡)的信息(如名称驱动等)是创建Device的必要参数
ID3D12Device
绘图设备是与适配器交互的重要接口它提供了大量交互适配器的低级操作 绘图设备这个东西里面
创建Fence创建资源堆创建提交的资源创建描述符堆…一大堆不列了
ID3D12CommandQueue
命令队列是存储较为低级绘制命令的队列从属于绘图设备一个绘图设备可以拥有多个命令队列队列里的命令按时序出队执行
就…理解成这个东西会把里面的命令按顺序输入到绘图设备吧
ID3D12CommandList
命令列表封装了较为高级的绘制命令通常需要向命令队列提交命令列表列表内的高级命令会被翻译为低级命令按顺序排入命令队列
DX12不让直接往Queue里丢命令只能先丢进List再把List丢进Queue
ID3D12CommandAllocator
命令分配器提供了创建命令列表的手段与命令列表一一对应并管理命令列表的资源
也就是说这个玩意是管着命令列表的然后能创建命令列表
IDXGISwapChain
这个东西…嗯…1234
大概原理就是把DX渲染的东西放进这个里面然后一次性输出到屏幕省得出现介于两个画面之间的情况。
ID3D12DescriptorHeap
描述符堆看样子是存东西的描述内存里一块空间是什么东西