From 2f4029a753f72833c30c4e6bad28c06b20540384 Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Mon, 25 Mar 2019 11:48:10 -0400 Subject: Adapter selection for Renderer (#923) * * Make adapter used selectable on the command line * Added 'adapter' to Renderer::Desc with dx11, dx12, vk honoring it * GL will check that the renderer matches, but cannot select a specific device * Share functionality on dx adapter selection in D3DUtil Note - that on tests that use OpenGL and the adapter doesn't match it will ignore the test (and display a message that the appropriate device couldn't be started) * Small function name improvement. * Variable rename to match type. * Fix typo in Dx12 device selection. * * Add checking if an adapter is warp * Improve some comments --- tools/render-test/render-test-main.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'tools/render-test/render-test-main.cpp') diff --git a/tools/render-test/render-test-main.cpp b/tools/render-test/render-test-main.cpp index ee408f283..2bc6cd8f8 100644 --- a/tools/render-test/render-test-main.cpp +++ b/tools/render-test/render-test-main.cpp @@ -555,21 +555,30 @@ SLANG_TEST_TOOL_API SlangResult innerMain(Slang::StdWriters* stdWriters, SlangSe return SLANG_FAIL; } + StringBuilder rendererName; + rendererName << "[" << RendererUtil::toText(gOptions.rendererType) << "] "; + if (gOptions.adapter.Length()) + { + rendererName << "'" << gOptions.adapter << "'"; + } + + if (!renderer) { - fprintf(stderr, "Unable to create renderer\n"); + fprintf(stderr, "Unable to create renderer %s\n", rendererName.Buffer()); return SLANG_FAIL; } Renderer::Desc desc; desc.width = gWindowWidth; desc.height = gWindowHeight; + desc.adapter = gOptions.adapter; { SlangResult res = renderer->initialize(desc, (HWND)window->getHandle()); if (SLANG_FAILED(res)) { - fprintf(stderr, "Unable to initialize renderer\n"); + fprintf(stderr, "Unable to initialize renderer %s\n", rendererName.Buffer()); return res; } } -- cgit v1.2.3