From 0e71a6d40d2ccdc9e6bb861e7bbdb9479dbec636 Mon Sep 17 00:00:00 2001 From: venkataram-nv Date: Mon, 1 Jul 2024 10:08:04 -0700 Subject: Resource searching for examples (#4518) --- examples/autodiff-texture/main.cpp | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) (limited to 'examples/autodiff-texture/main.cpp') diff --git a/examples/autodiff-texture/main.cpp b/examples/autodiff-texture/main.cpp index 0578f9d47..5cd0a3523 100644 --- a/examples/autodiff-texture/main.cpp +++ b/examples/autodiff-texture/main.cpp @@ -10,6 +10,8 @@ using namespace gfx; using namespace Slang; +static const ExampleResources resourceBase("autodiff-texture"); + struct Vertex { float position[3]; @@ -45,7 +47,8 @@ struct AutoDiffTexture : public WindowedAppBase slangSession = device->getSlangSession(); ComPtr diagnosticsBlob; - slang::IModule* module = slangSession->loadModule(fileName, diagnosticsBlob.writeRef()); + Slang::String path = resourceBase.resolveResource(fileName); + slang::IModule* module = slangSession->loadModule(path.getBuffer(), diagnosticsBlob.writeRef()); diagnoseIfNeeded(diagnosticsBlob); if (!module) return SLANG_FAIL; @@ -89,7 +92,8 @@ struct AutoDiffTexture : public WindowedAppBase slangSession = device->getSlangSession(); ComPtr diagnosticsBlob; - slang::IModule* module = slangSession->loadModule(fileName, diagnosticsBlob.writeRef()); + Slang::String path = resourceBase.resolveResource(fileName); + slang::IModule* module = slangSession->loadModule(path.getBuffer(), diagnosticsBlob.writeRef()); diagnoseIfNeeded(diagnosticsBlob); if (!module) return SLANG_FAIL; @@ -294,25 +298,25 @@ struct AutoDiffTexture : public WindowedAppBase { ComPtr shaderProgram; SLANG_RETURN_ON_FAIL( - loadRenderProgram(gDevice, "train", "fragmentMain", shaderProgram.writeRef())); + loadRenderProgram(gDevice, "train.slang", "fragmentMain", shaderProgram.writeRef())); gRefPipelineState = createRenderPipelineState(inputLayout, shaderProgram); } { ComPtr shaderProgram; SLANG_RETURN_ON_FAIL( - loadRenderProgram(gDevice, "train", "diffFragmentMain", shaderProgram.writeRef())); + loadRenderProgram(gDevice, "train.slang", "diffFragmentMain", shaderProgram.writeRef())); gIterPipelineState = createRenderPipelineState(inputLayout, shaderProgram); } { ComPtr shaderProgram; SLANG_RETURN_ON_FAIL( - loadRenderProgram(gDevice, "draw-quad", "fragmentMain", shaderProgram.writeRef())); + loadRenderProgram(gDevice, "draw-quad.slang", "fragmentMain", shaderProgram.writeRef())); gDrawQuadPipelineState = createRenderPipelineState(inputLayout, shaderProgram); } { ComPtr shaderProgram; SLANG_RETURN_ON_FAIL( - loadComputeProgram(gDevice, "reconstruct", shaderProgram.writeRef())); + loadComputeProgram(gDevice, "reconstruct.slang", shaderProgram.writeRef())); gReconstructPipelineState = createComputePipelineState(shaderProgram); } { @@ -322,16 +326,17 @@ struct AutoDiffTexture : public WindowedAppBase } { ComPtr shaderProgram; - SLANG_RETURN_ON_FAIL(loadComputeProgram(gDevice, "buildmip", shaderProgram.writeRef())); + SLANG_RETURN_ON_FAIL(loadComputeProgram(gDevice, "buildmip.slang", shaderProgram.writeRef())); gBuildMipPipelineState = createComputePipelineState(shaderProgram); } { ComPtr shaderProgram; - SLANG_RETURN_ON_FAIL(loadComputeProgram(gDevice, "learnmip", shaderProgram.writeRef())); + SLANG_RETURN_ON_FAIL(loadComputeProgram(gDevice, "learnmip.slang", shaderProgram.writeRef())); gLearnMipPipelineState = createComputePipelineState(shaderProgram); } - gTexView = createTextureFromFile("checkerboard.jpg", textureWidth, textureHeight); + Slang::String imagePath = resourceBase.resolveResource("checkerboard.jpg"); + gTexView = createTextureFromFile(imagePath.getBuffer(), textureWidth, textureHeight); initMipOffsets(textureWidth, textureHeight); gfx::IBufferResource::Desc bufferDesc = {}; -- cgit v1.2.3