summaryrefslogtreecommitdiffstats
path: root/examples/shader-object
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2021-02-24 15:43:43 -0800
committerGitHub <noreply@github.com>2021-02-24 15:43:43 -0800
commit9b7a007c31072bc9aebd1134aa4f1bfd28a4c541 (patch)
treeb71a48eb30b3b09ab4e77e40dc1c68ecd854ef82 /examples/shader-object
parentd66b30729029bdb43892e05c9c80fd56ac95a24f (diff)
Explicit swapchain interface in `gfx`. (#1726)
* Explicit swapchain interface in `gfx`. * Correctly return nullptr when `IRenderer` creation failed. * Fix crashes on CUDA tests. * Cleanups.
Diffstat (limited to 'examples/shader-object')
-rw-r--r--examples/shader-object/main.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/examples/shader-object/main.cpp b/examples/shader-object/main.cpp
index b61cf30e4..9b1b4de72 100644
--- a/examples/shader-object/main.cpp
+++ b/examples/shader-object/main.cpp
@@ -137,7 +137,7 @@ int main()
Slang::ComPtr<gfx::IRenderer> renderer;
IRenderer::Desc rendererDesc = {};
rendererDesc.rendererType = RendererType::CUDA;
- SLANG_RETURN_ON_FAIL(gfxCreateRenderer(&rendererDesc, nullptr, renderer.writeRef()));
+ SLANG_RETURN_ON_FAIL(gfxCreateRenderer(&rendererDesc, renderer.writeRef()));
// Now we can load the shader code.
// A `gfx::IShaderProgram` object for use in the `gfx` layer.
@@ -211,10 +211,11 @@ int main()
// We have set up all required parameters in entry-point object, now it is time
// to bind the pipeline and root object and launch the kernel.
+ renderer->beginFrame();
renderer->setPipelineState(pipelineState);
SLANG_RETURN_ON_FAIL(renderer->bindRootShaderObject(gfx::PipelineType::Compute, rootObject));
renderer->dispatchCompute(1, 1, 1);
-
+ renderer->endFrame();
// Read back the results.
renderer->waitForGpu();
float* result = (float*)renderer->map(numbersBuffer, gfx::MapFlavor::HostRead);