MCPcopy Create free account
hub / github.com/NVIDIAGameWorks/Falcor / onFrameRender

Method onFrameRender

Source/Samples/MultiSampling/MultiSampling.cpp:80–99  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

78}
79
80void MultiSampling::onFrameRender(RenderContext* pRenderContext, const ref<Fbo>& pTargetFbo)
81{
82 pRenderContext->clearFbo(mpFbo.get(), float4(0.f), 0.f, 0);
83
84 mpRasterPass->getState()->setFbo(mpFbo);
85 mpRasterPass->getState()->setVao(mpVao);
86 mpRasterPass->draw(pRenderContext, kTriangleCount * 3, 0);
87
88 if (mFrame++ % 2 == 0)
89 {
90 // For even frames, resolve to texture and then blit.
91 pRenderContext->resolveResource(mpFbo->getColorTexture(0), mpResolvedTexture);
92 pRenderContext->blit(mpResolvedTexture->getSRV(), pTargetFbo->getRenderTargetView(0));
93 }
94 else
95 {
96 // For odd frames, blit directly.
97 pRenderContext->blit(mpFbo->getColorTexture(0)->getSRV(), pTargetFbo->getRenderTargetView(0));
98 }
99}
100
101int runMain(int argc, char** argv)
102{

Callers

nothing calls this directly

Calls 8

clearFboMethod · 0.80
resolveResourceMethod · 0.80
getColorTextureMethod · 0.80
blitMethod · 0.80
getRenderTargetViewMethod · 0.80
getMethod · 0.45
drawMethod · 0.45
getSRVMethod · 0.45

Tested by

no test coverage detected