|
![](/i/fill.gif) |
Florian Brucker wrote:
> Nevertheless it's annoying that a degenerate cylinder causes a parse
> time error and not a warning. Degenerate triangles, spheres and boxes do
> not trigger errors (in fact they're not even triggering warnings),
> whereas an empty mesh throws an error, too. Is that really necessary?
Not really, but it certainly was a deliberate choice at the time. Not one I
personally think was the best, but things like this happen.
> What's the problem with ignoring those objects at parse time?
The errors are for some (did not check all) of these cases due to POV-Ray
precomputing some values to increase speed of intersection tests right after
parsing the object. It then detects the object is degenerate and instead of
deleting the invalid object plus issuing a warning, it generates an error
because rendering would most certainly fail if the object would be left in
the scene.
Some of these annoyances have already been addressed in POV-Ray 3.7 betas,
some more are marked on the POV-Team's internal (well, source code comments,
not more so far) todo list for 3.7 and others won't make it for 3.7 to get
improved. Eventually, I suppose all errors should be detected at parse time
(there are even some detected at render-time!) and issue warnings or
possible errors (which are non-fatal) and delete the offending object from
the scene and continue by default,. Of course, other options making this
still a fatal error might be useful, too, such that nobody wastes days
rendering a scene just to discover an object is missing due to a typo that
made in degenerate, and the final image is useless.
Thorsten
Post a reply to this message
|
![](/i/fill.gif) |