tst_qrhi: Exercise a readonly storage buffer in the simple test

...not only in the tessellation-related ones (that are skipped
with D3D).

The checked-in .qsb file is generated with a patched shadertools
that fixes a bug regarding readonly storage buffers and HLSL.

Change-Id: Iafbad4e81875d7b4f877435b9b1e6078019d52ac
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
This commit is contained in:
Laszlo Agocs 2023-10-21 20:48:22 +02:00
parent 92167f0119
commit 7c3779006d
3 changed files with 2 additions and 2 deletions

View File

@ -2,7 +2,7 @@
layout (local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
layout (binding = 0, std430) buffer toGpu
layout (binding = 0, std430) readonly buffer toGpu
{
float _float;
vec2 _vec2;

View File

@ -6348,7 +6348,7 @@ void tst_QRhi::storageBuffer()
u->uploadStaticBuffer(fromGpuBuffer.data(), 0, blocks["fromGpu"].knownSize, QByteArray(blocks["fromGpu"].knownSize, 0).constData());
QScopedPointer<QRhiShaderResourceBindings> srb(rhi->newShaderResourceBindings());
srb->setBindings({QRhiShaderResourceBinding::bufferLoadStore(blocks["toGpu"].binding, QRhiShaderResourceBinding::ComputeStage, toGpuBuffer.data()),
srb->setBindings({QRhiShaderResourceBinding::bufferLoad(blocks["toGpu"].binding, QRhiShaderResourceBinding::ComputeStage, toGpuBuffer.data()),
QRhiShaderResourceBinding::bufferLoadStore(blocks["fromGpu"].binding, QRhiShaderResourceBinding::ComputeStage, fromGpuBuffer.data())});
QVERIFY(srb->create());