appleseed icon indicating copy to clipboard operation
appleseed copied to clipboard

Endless Loop when Scene fails on_render_begin()

Open JaanWilli opened this issue 2 years ago • 0 comments

This issue occured while working on PR #2914, where the camera returns false in on_render_begin() when there are errors. In such a case, and endless loop is entered that infinitely calls on_render_begin(). All other cameras always return true and therefore never run into this problem, but the issue can easily be reproduced by forcing a return false.

It appears that the MasterRenderer skips the frame, if the scene entities failed to perform on_render_begin() (see here). It does so by returning renderer_controller.get_status(), which is ContinueRendering, but this is what causes the infinite loop. In my eyes, AbortRendering should be returned instead, like is done a bit further below.

Is there a reason that I am missing, why the rendering process should not be aborted here?

JaanWilli avatar Feb 07 '22 12:02 JaanWilli