diff options
| author | skallweitNV <64953474+skallweitNV@users.noreply.github.com> | 2024-05-14 00:39:49 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-05-13 15:39:49 -0700 |
| commit | 9f23046138629f78995d54a7722ad6749bd84db9 (patch) | |
| tree | 25ac343566f896cae547046ac7e960441874ec00 /examples | |
| parent | 04d3dd51125182767d90c318895a6232ec4ee750 (diff) | |
[gfx] specify resource view buffer range in bytes (#4149)
* refactor gfx buffer range to use byte range
* create buffer view with zero struct stride for ClearUnorderedAccessViewUint/Float
* create buffer descriptors on demand
* avoid copying gfx.dll
---------
Co-authored-by: Yong He <yonghe@outlook.com>
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/autodiff-texture/main.cpp | 1 | ||||
| -rw-r--r-- | examples/ray-tracing-pipeline/main.cpp | 2 | ||||
| -rw-r--r-- | examples/ray-tracing/main.cpp | 2 |
3 files changed, 2 insertions, 3 deletions
diff --git a/examples/autodiff-texture/main.cpp b/examples/autodiff-texture/main.cpp index 7d1f809ee..0578f9d47 100644 --- a/examples/autodiff-texture/main.cpp +++ b/examples/autodiff-texture/main.cpp @@ -246,7 +246,6 @@ struct AutoDiffTexture : public WindowedAppBase { IResourceView::Desc desc = {}; desc.type = IResourceView::Type::UnorderedAccess; - desc.bufferElementSize = 0; return gDevice->createBufferView(buffer, nullptr, desc); } ComPtr<gfx::IResourceView> createUAV(ITextureResource* texture, int level) diff --git a/examples/ray-tracing-pipeline/main.cpp b/examples/ray-tracing-pipeline/main.cpp index 9e00ccf67..cc5549a2e 100644 --- a/examples/ray-tracing-pipeline/main.cpp +++ b/examples/ray-tracing-pipeline/main.cpp @@ -318,6 +318,7 @@ Slang::Result initialize() IBufferResource::Desc primitiveBufferDesc; primitiveBufferDesc.type = IResource::Type::Buffer; primitiveBufferDesc.sizeInBytes = kPrimitiveCount * sizeof(Primitive); + primitiveBufferDesc.elementSize = sizeof(Primitive); primitiveBufferDesc.defaultState = ResourceState::ShaderResource; gPrimitiveBuffer = gDevice->createBufferResource(primitiveBufferDesc, &kPrimitiveData[0]); if (!gPrimitiveBuffer) @@ -326,7 +327,6 @@ Slang::Result initialize() IResourceView::Desc primitiveSRVDesc = {}; primitiveSRVDesc.format = Format::Unknown; primitiveSRVDesc.type = IResourceView::Type::ShaderResource; - primitiveSRVDesc.bufferElementSize = sizeof(Primitive); gPrimitiveBufferSRV = gDevice->createBufferView(gPrimitiveBuffer, nullptr, primitiveSRVDesc); IBufferResource::Desc transformBufferDesc; diff --git a/examples/ray-tracing/main.cpp b/examples/ray-tracing/main.cpp index a12da707d..5fee3d1ae 100644 --- a/examples/ray-tracing/main.cpp +++ b/examples/ray-tracing/main.cpp @@ -309,6 +309,7 @@ Slang::Result initialize() IBufferResource::Desc primitiveBufferDesc; primitiveBufferDesc.type = IResource::Type::Buffer; primitiveBufferDesc.sizeInBytes = kPrimitiveCount * sizeof(Primitive); + primitiveBufferDesc.elementSize = sizeof(Primitive); primitiveBufferDesc.defaultState = ResourceState::ShaderResource; gPrimitiveBuffer = gDevice->createBufferResource(primitiveBufferDesc, &kPrimitiveData[0]); if (!gPrimitiveBuffer) @@ -317,7 +318,6 @@ Slang::Result initialize() IResourceView::Desc primitiveSRVDesc = {}; primitiveSRVDesc.format = Format::Unknown; primitiveSRVDesc.type = IResourceView::Type::ShaderResource; - primitiveSRVDesc.bufferElementSize = sizeof(Primitive); gPrimitiveBufferSRV = gDevice->createBufferView(gPrimitiveBuffer, nullptr, primitiveSRVDesc); IBufferResource::Desc transformBufferDesc; |
