diff options
| author | jsmall-nvidia <jsmall@nvidia.com> | 2018-05-03 14:25:13 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-05-03 14:25:13 -0400 |
| commit | 367f3a78a40731da45ee12b9a18c94707f1d1429 (patch) | |
| tree | 5993ef627e1a094ea1d401c31e6b00e3c63c308a /tools/render-test/options.h | |
| parent | 78935493587ec65a199d844327613021667acc1b (diff) | |
Feature/vulkan first render (#545)
* First pass at InputLayout for Vulkan
Add support for RGBA_Float32
* Use VulkanModule and VulkanApi to handle accessing Vulkan types.
* First pass at Vulkan swap chain/Device queue.
* Added VulkanUtil for generic function functions.
* Move more functionality to VulkanApi and VulkanUtil.
Make Buffer able to initialize itself.
* More tidy up around VulkanDeviceQueue
* First pass use of VulkanDeviceQueue in VkRenderer
* First pass use of VulkanSwapChain on VkRenderer
* Added depth formats.
Binding for constant and vertex buffers for Vulkan.
* Setting up VkImageView on backbuffers.
* First pass support for setting up vkRenderPass.
* Fixes to work around Vulkan swap chain/verification issues.
* Added support for Pipeline and a pipeline cache.
* Working without waiting - because use of pipeline cache.
* Added support for VkFramebuffer in Vulkan.
* First pass at creating Vulkan graphics pipeline.
* More efforts to get Vulkan to render.
* Small improvement for checking of Binding flags.
* Removed setConstantBuffers from the Renderer interface - so that all resource binding takes place through the BindingState.
To make this work required a 'hack' in render-test main.cpp - so that the constant buffer binding that is needed in some tests is only added when it doesn't clash.
* RendererID -> unified into RendererType. Added getRendererType to Renderer interface.
Added ProjectionStyle, and function to get from RendererType.
Added getIdentityProjection to RendererUtil - to get projection that is the 'identity' - but hits the same pixels for all projection styles.
* Fix build problem on Win32 on Vulkan where should use VK_NULL_HANDLE.
* Improve naming, comments. Remove dead code.
* Remove unwanted comment.
Diffstat (limited to 'tools/render-test/options.h')
| -rw-r--r-- | tools/render-test/options.h | 67 |
1 files changed, 29 insertions, 38 deletions
diff --git a/tools/render-test/options.h b/tools/render-test/options.h index 8dbff76ea..56bd638ef 100644 --- a/tools/render-test/options.h +++ b/tools/render-test/options.h @@ -5,53 +5,44 @@ #include "../../source/core/slang-result.h" -namespace renderer_test { - -typedef intptr_t Int; -typedef uintptr_t UInt; - -enum class RendererID -{ - NONE, - D3D11, - D3D12, - GL, - VK, -}; +#include "render.h" -enum class InputLanguageID -{ - // Slang being used as an HLSL-ish compiler - Slang, - - // Raw HLSL or GLSL input, bypassing Slang - Native, - - // Raw HLSL or GLSL input, passed through the Slang rewriter - NativeRewrite -}; - -enum -{ - // maximum number of command-line arguments to pass along to slang - kMaxSlangArgs = 16, -}; - -enum class ShaderProgramType -{ - Graphics, - Compute, - GraphicsCompute -}; +namespace renderer_test { struct Options { + enum + { + // maximum number of command-line arguments to pass along to slang + kMaxSlangArgs = 16, + }; + + enum class InputLanguageID + { + // Slang being used as an HLSL-ish compiler + Slang, + + // Raw HLSL or GLSL input, bypassing Slang + Native, + + // Raw HLSL or GLSL input, passed through the Slang rewriter + NativeRewrite + }; + + + enum class ShaderProgramType + { + Graphics, + Compute, + GraphicsCompute + }; + char const* appName = "render-test"; char const* sourcePath = nullptr; char const* outputPath = nullptr; ShaderProgramType shaderType = ShaderProgramType::Graphics; - RendererID rendererID = RendererID::NONE; + RendererType rendererType = RendererType::Unknown; InputLanguageID inputLanguageID = InputLanguageID::Slang; char const* slangArgs[kMaxSlangArgs]; |
