From 6e5d85efb9fa5f647f7f0c7ef784a9fd09b29023 Mon Sep 17 00:00:00 2001 From: Tim Foley Date: Wed, 17 Mar 2021 12:55:30 -0700 Subject: Remove old code paths from render-test (#1760) * Remove old code paths from render-test Historically, the `render-test` tool was using three different code paths: * One based on `gfx` and manual (non-reflection-based) parameter setting, used for OpenGL, D3D11, D3D12, and Vulkan * One for CPU that used reflection-based parameter setting but shared no code with the first * One for CUDA that used reflection-based parameter setting and shared some, but not all, code with the CPU path Recently we've updated `render-test` to include a fourth option: * Using `gfx` and the "shader object" system it exposes for a unified reflection-based parameter-setting system taht works across OpenGL, D3D11, D3D12, Vulkan, CUDA, and CPU This change removes the first three options and leaves only the single unified path. A sa result, a bunch of code in `render-test` is no longer needed, and the codebase no longer relies on things like the `IDescriptorSet`-related APIs in `gfx`. Several existing tests had to be disabled to make this change possible. Those tests will need to be audited and either re-enabled once we fix issues in the shader object system, or permanently removed if they don't test stuff we intend to support in the long run (e.g., global-scope type parameters, which aren't a clear necessity). * fixup: CUDA detection logic --- tools/render-test/shader-input-layout.h | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) (limited to 'tools/render-test/shader-input-layout.h') diff --git a/tools/render-test/shader-input-layout.h b/tools/render-test/shader-input-layout.h index 253f065f6..01ef5c443 100644 --- a/tools/render-test/shader-input-layout.h +++ b/tools/render-test/shader-input-layout.h @@ -6,9 +6,6 @@ #include "source/core/slang-writer.h" - -#include "bind-location.h" - #include "slang-gfx.h" namespace renderer_test { @@ -127,23 +124,8 @@ public: void parse(Slang::RandomGenerator* rand, const char* source); - /// Adds to bind set resources as defined in entries. - /// Note: No actual resources are created on a device, these are just the 'Resource' structures that are held on the BindSet - /// For buffers, the Resources will be setup with the contents of the entry. - /// That if a resource is created that maps to an entry, the m_userData member of Resource will be set to it's index - static SlangResult addBindSetValues(const Slang::List& entries, const Slang::String& sourcePath, Slang::WriterHelper outError, BindRoot& bindRoot); - - /// Put into outBuffer the value buffers that were set via addbindSetValues (which will set m_userIndex to be the entries index) - static void getValueBuffers(const Slang::List& entries, const BindSet& bindSet, Slang::List& outBuffers); - /// Writes a binding, if bindRoot is set, will try to honor the underlying type when outputting. If not will dump as uint32_t hex. - static SlangResult writeBinding(BindRoot* bindRoot, const ShaderInputLayoutEntry& entry, const void* data, size_t sizeInBytes, Slang::WriterHelper writer); - - /// Write all bindings, using data from buffers - static SlangResult writeBindings(BindRoot* bindRoot, const ShaderInputLayout& layout, const Slang::List& buffers, Slang::WriterHelper writer); - - /// Write bindings from values in memory from buffers - static SlangResult writeBindings(BindRoot* bindRoot, const ShaderInputLayout& layout, const Slang::List& buffers, const Slang::String& fileName); + static SlangResult writeBinding(const ShaderInputLayoutEntry& entry, slang::TypeLayoutReflection* typeLayout, const void* data, size_t sizeInBytes, Slang::WriterHelper writer); }; void generateTextureDataRGB8(TextureData& output, const InputTextureDesc& desc); -- cgit v1.2.3