diff options
| author | Yong He <yonghe@outlook.com> | 2022-01-19 10:15:30 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-01-19 10:15:30 -0800 |
| commit | 3b41c818a46cb7761e5a5f2878ceb76d9aef1a20 (patch) | |
| tree | e3b35bc62586c41f532232259981b249f0d4fa30 /tools/gfx/d3d/d3d-util.cpp | |
| parent | 7dc5857173e3fb5884736e5de91f6b4b1cef3ef3 (diff) | |
Fixes to GFX. (#2083)
* Fix binding null resource views in d3d12.
* Fix array render target view creation.
* Add support for more primitive topologies.
Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'tools/gfx/d3d/d3d-util.cpp')
| -rw-r--r-- | tools/gfx/d3d/d3d-util.cpp | 32 |
1 files changed, 28 insertions, 4 deletions
diff --git a/tools/gfx/d3d/d3d-util.cpp b/tools/gfx/d3d/d3d-util.cpp index 860649be4..5d7aa4dd8 100644 --- a/tools/gfx/d3d/d3d-util.cpp +++ b/tools/gfx/d3d/d3d-util.cpp @@ -18,12 +18,36 @@ using namespace Slang; switch (topology) { case PrimitiveTopology::TriangleList: - { - return D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST; - } + return D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST; + case PrimitiveTopology::TriangleStrip: + return D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP; + case PrimitiveTopology::LineList: + return D3D_PRIMITIVE_TOPOLOGY_LINELIST; + case PrimitiveTopology::LineStrip: + return D3D_PRIMITIVE_TOPOLOGY_LINESTRIP; + case PrimitiveTopology::PointList: + return D3D_PRIMITIVE_TOPOLOGY_POINTLIST; default: break; } - return D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED; + return D3D_PRIMITIVE_TOPOLOGY_UNDEFINED; +} + +D3D12_PRIMITIVE_TOPOLOGY_TYPE D3DUtil::getPrimitiveType(PrimitiveTopology topology) +{ + switch (topology) + { + case PrimitiveTopology::TriangleList: + case PrimitiveTopology::TriangleStrip: + return D3D12_PRIMITIVE_TOPOLOGY_TYPE_TRIANGLE; + case PrimitiveTopology::LineList: + case PrimitiveTopology::LineStrip: + return D3D12_PRIMITIVE_TOPOLOGY_TYPE_LINE; + case PrimitiveTopology::PointList: + return D3D12_PRIMITIVE_TOPOLOGY_TYPE_POINT; + default: + break; + } + return D3D12_PRIMITIVE_TOPOLOGY_TYPE_UNDEFINED; } D3D12_PRIMITIVE_TOPOLOGY_TYPE D3DUtil::getPrimitiveType(PrimitiveType type) |
