diff --git a/src/pew/renderpass/renderpass.cpp b/src/pew/renderpass/renderpass.cpp index e27fc4f2bdd33aa52f61db478a5fd5879e3fa685..6ea8718c06b1d64cfa8fa619065e4d05319aa356 100644 --- a/src/pew/renderpass/renderpass.cpp +++ b/src/pew/renderpass/renderpass.cpp @@ -168,6 +168,12 @@ namespace pew { void RenderPass::renderColor(bool detectEdges) { for (auto i = 0; i < buffers.color.size(); ++i) { +#if !defined(__EMSCRIPTEN__) + if (!(i % config.resolution.width)) { + if (pixelUpdateFun()) return; + } +#endif + if (config.samples && (!detectEdges || needsSampling(buffers.hit, config.resolution, i, false))) { vec3 pixelColor {}; @@ -189,7 +195,9 @@ namespace pew { buffers.color[i] = colorFunction(camera->ray(u, v), config.maxDepth).asColor(); } } +#if defined(__EMSCRIPTEN__) pixelUpdateFun(); +#endif } #endif } // namespace pew \ No newline at end of file