diff options
| author | Yong He <yonghe@outlook.com> | 2021-02-04 13:50:51 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-02-04 13:50:51 -0800 |
| commit | c40f10b704b8bd5a744cc9b3964344585436b1ac (patch) | |
| tree | 1c9608f3cc32949d88fe04f3512cd3147fc3fe1f /examples/heterogeneous-hello-world/main.cpp | |
| parent | 7f266f1ea7a51213069282296a905650fd405c3f (diff) | |
[gfx] Shader-object driven shader compilation. (#1688)
Diffstat (limited to 'examples/heterogeneous-hello-world/main.cpp')
| -rw-r--r-- | examples/heterogeneous-hello-world/main.cpp | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/examples/heterogeneous-hello-world/main.cpp b/examples/heterogeneous-hello-world/main.cpp index 8610a5fa2..163b17deb 100644 --- a/examples/heterogeneous-hello-world/main.cpp +++ b/examples/heterogeneous-hello-world/main.cpp @@ -43,7 +43,6 @@ using namespace gfx; // We create global ref pointers to avoid dereferencing values // ComPtr<gfx::IShaderProgram> gShaderProgram; -Slang::RefPtr<gfx::ApplicationContext> gAppContext; Slang::ComPtr<gfx::IRenderer> gRenderer; ComPtr<gfx::IBufferResource> gStructuredBuffer; @@ -123,14 +122,12 @@ gfx::IRenderer* createRenderer( // A future version of this example may support multiple // platforms/APIs. // - gfxGetCreateFunc(gfx::RendererType::DirectX11)(gRenderer.writeRef()); - IRenderer::Desc rendererDesc; + IRenderer::Desc rendererDesc = {}; + rendererDesc.rendererType = gfx::RendererType::DirectX11; rendererDesc.width = windowWidth; rendererDesc.height = windowHeight; - { - Result res = gRenderer->initialize(rendererDesc, getPlatformWindowHandle(window)); - if (SLANG_FAILED(res)) return nullptr; - } + Result res = gfxCreateRenderer(&rendererDesc, getPlatformWindowHandle(window), gRenderer.writeRef()); + if (SLANG_FAILED(res)) return nullptr; return gRenderer; } @@ -249,7 +246,7 @@ void dispatchComputation( unsigned int gridDimsZ) { - gRenderer->setPipelineState(PipelineType::Compute, gPipelineState); + gRenderer->setPipelineState(gPipelineState); gRenderer->setDescriptorSet(PipelineType::Compute, gPipelineLayout, 0, gDescriptorSet); gRenderer->dispatchCompute(gridDimsX, gridDimsY, gridDimsZ); |
