|
![](/i/fill.gif) |
You're right. I had done a few more tests and what I had changed hadn't
fixed the problem. Changing Radiosity_Trace_Depth to 2 causes the
problem all the time. If it is being set to two by an interrupted
render, it must only happen when the render is interrupted at a specific
portion of the radiosity code, which would explain why the problem is
intermittent and unpredictable.
In radiosit.c in Deinitialize_Radiosity_Code(), add this at the end:
if (Radiosity_Trace_Level !=1)
{
Radiosity_Trace_Level = 1;
}
This should ensure that if the render is interrupted that this variable
gets reset to 1.
Let me know if it works.
-Mike
Ben Birdsey wrote:
>
> It looks like you've gone a long way toward curing the problem with
radiosity
> for *continued* renders. However, my problem is that if the scene looks like
> junk I want to be able stop right in the middle and tweak it and then re-render
> it. But interrupting the trace almost always crashes Radiosity.
>
> As far as I can tell, the real problem with interrupted renders is that the
> global variable radiosity_trace_depth is not re-initialized every time an image
> is rendered. From my investigations, it looks like the global
> radiosity_trace_depth is only initialized when POV loads. So, if you interrupt
> a render when radiosity_trace_depth = 2 and you render a *new* image, the
> renderer will *begin* with radiosity_trace_depth = 2.
>
> A simple fix might be to move the radiosity_trace_depth initialization to
the
> code which initializes radiosity ( in Radiosity.c ) and to set
> radiosity_trace_depth = 0 if not continue_trace.
>
> In Him,
> Ben
Post a reply to this message
|
![](/i/fill.gif) |