diff options
Diffstat (limited to 'tools/render-test')
| -rw-r--r-- | tools/render-test/options.cpp | 10 | ||||
| -rw-r--r-- | tools/render-test/options.h | 2 | ||||
| -rw-r--r-- | tools/render-test/render-test-main.cpp | 13 |
3 files changed, 23 insertions, 2 deletions
diff --git a/tools/render-test/options.cpp b/tools/render-test/options.cpp index 1171a2a03..9d5ff35c8 100644 --- a/tools/render-test/options.cpp +++ b/tools/render-test/options.cpp @@ -151,6 +151,16 @@ SlangResult parseOptions(int argc, const char*const* argv, Slang::WriterHelper s { gOptions.useDXIL = true; } + else if (strcmp(arg, "-adapter") == 0) + { + if (argCursor == argEnd) + { + stdError.print("expected argument for '%s' option\n", arg); + return SLANG_FAIL; + } + + gOptions.adapter = *argCursor++; + } else { // Lookup diff --git a/tools/render-test/options.h b/tools/render-test/options.h index 7b55b9ac0..104906f42 100644 --- a/tools/render-test/options.h +++ b/tools/render-test/options.h @@ -57,6 +57,8 @@ struct Options bool useDXIL = false; Slang::List<Slang::String> renderFeatures; /// Required render features for this test to run + + Slang::String adapter; ///< The adapter to use either name or index }; extern Options gOptions; 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; } } |
