| 66 | } |
| 67 | |
| 68 | void HelloDXR::onFrameRender(RenderContext* pRenderContext, const ref<Fbo>& pTargetFbo) |
| 69 | { |
| 70 | pRenderContext->clearFbo(pTargetFbo.get(), kClearColor, 1.0f, 0, FboAttachmentType::All); |
| 71 | |
| 72 | if (mpScene) |
| 73 | { |
| 74 | IScene::UpdateFlags updates = mpScene->update(pRenderContext, getGlobalClock().getTime()); |
| 75 | if (is_set(updates, IScene::UpdateFlags::GeometryChanged)) |
| 76 | FALCOR_THROW("This sample does not support scene geometry changes."); |
| 77 | if (is_set(updates, IScene::UpdateFlags::RecompileNeeded)) |
| 78 | FALCOR_THROW("This sample does not support scene changes that require shader recompilation."); |
| 79 | |
| 80 | if (mRayTrace) |
| 81 | renderRT(pRenderContext, pTargetFbo); |
| 82 | else |
| 83 | renderRaster(pRenderContext, pTargetFbo); |
| 84 | } |
| 85 | |
| 86 | getTextRenderer().render(pRenderContext, getFrameRate().getMsg(), pTargetFbo, {20, 20}); |
| 87 | } |
| 88 | |
| 89 | void HelloDXR::onGuiRender(Gui* pGui) |
| 90 | { |