POV-Ray : Newsgroups : povray.general : Internal Nesting Limit Server Time
28 Dec 2024 04:40:54 EST (-0500)
  Internal Nesting Limit (Message 1 to 10 of 20)  
Goto Latest 10 Messages Next 10 Messages >>>
From: Sereib
Subject: Internal Nesting Limit
Date: 2 Apr 2014 02:50:01
Message: <web.533bb22160a99e42effb1f90@news.povray.org>
Hi,

I know this issue has frequently been discussed, but I would like to understand
the reason with the goal, to adjust my scene:

In a scene with many transparent objects with emitting media such as:

sphere{P, r pigment{rgbt 1} hollow no_shadow interior{media{emission rgb 1}}}

rendering stops with the message:

Internal limit exceeded in FixedSimpleVector
Fatal error in renderer: A POV-Ray internal nesting limit was reached.
Render failed

if

1) the number of objects exceeds a certain number

2) the objects come close to each other and overlap

Changing bounding on/off or max_trace_level does not help.

Is there anything I can do?

Thank you!


Post a reply to this message

From: Le Forgeron
Subject: Re: Internal Nesting Limit
Date: 3 Apr 2014 05:38:34
Message: <533d2c1a$1@news.povray.org>
Le 02/04/2014 08:45, Sereib a écrit :
> Hi,
> 
> I know this issue has frequently been discussed, but I would like to understand
> the reason with the goal, to adjust my scene:
> 
> In a scene with many transparent objects with emitting media such as:
> 
> sphere{P, r pigment{rgbt 1} hollow no_shadow interior{media{emission rgb 1}}}
> 
> rendering stops with the message:
> 
> Internal limit exceeded in FixedSimpleVector
> Fatal error in renderer: A POV-Ray internal nesting limit was reached.
> Render failed
> 
> if
> 
> 1) the number of objects exceeds a certain number

Nope, not directly. But the number of media might.

> 
> 2) the objects come close to each other and overlap

Neither.

> 
> Changing bounding on/off or max_trace_level does not help.
> 
> Is there anything I can do?

Without seeing your code, it's difficult to say.

The limit is inherited from old code (that used static C array in
structure). When the conversion was done, I guess the single allocation
aspect was kept for simplicity of handling failure (and speed!)
(allocate the whole array on first element). It has been tagged to be
corrected... later.

Workaround: If you are compiling your own povray, you can raise the
values which sizes the various FixedSimpleVector:
* LIGHTSOURCE_VECTOR_SIZE
* MEDIA_VECTOR_SIZE
* MEDIA_INTERVAL_VECTOR_SIZE
* LIT_INTERVAL_VECTOR_SIZE
* LIGHT_INTERSECTION_VECTOR_SIZE
* RAYINTERIOR_VECTOR_SIZE
* WEIGHTEDTEXTURE_VECTOR_SIZE


-- 
Just because nobody complains does not mean all parachutes are perfect.


Post a reply to this message

From: Sereib
Subject: Re: Internal Nesting Limit
Date: 3 Apr 2014 07:35:00
Message: <web.533d46bfc1f5941aa69b8e140@news.povray.org>
Hi,

thank you!

However, I can confirm 2)
In one scene, I have approx. 5000 spheres (hollow, with emitting media in the
interior statement) which - as "photons" travel through a lens system depicting
how light diffraction works. If these photons come closer and closer and finally
many of them overlap in the focus, the error occurs.

My work-around is to lower the number of "photons" (the emitting spheres) in my
animation for the frames when they come close together, which pretty works.

I observed this overlap-effect in several different scenes, so are you sure this
error has nothing to do with it?

Le_Forgeron <lef### [at] freefr> wrote:
> Le 02/04/2014 08:45, Sereib a écrit :
> > Hi,
> >
> > I know this issue has frequently been discussed, but I would like to understand
> > the reason with the goal, to adjust my scene:
> >
> > In a scene with many transparent objects with emitting media such as:
> >
> > sphere{P, r pigment{rgbt 1} hollow no_shadow interior{media{emission rgb 1}}}
> >
> > rendering stops with the message:
> >
> > Internal limit exceeded in FixedSimpleVector
> > Fatal error in renderer: A POV-Ray internal nesting limit was reached.
> > Render failed
> >
> > if
> >
> > 1) the number of objects exceeds a certain number
>
> Nope, not directly. But the number of media might.
>
> >
> > 2) the objects come close to each other and overlap
>
> Neither.
>
> >
> > Changing bounding on/off or max_trace_level does not help.
> >
> > Is there anything I can do?
>
> Without seeing your code, it's difficult to say.
>
> The limit is inherited from old code (that used static C array in
> structure). When the conversion was done, I guess the single allocation
> aspect was kept for simplicity of handling failure (and speed!)
> (allocate the whole array on first element). It has been tagged to be
> corrected... later.
>
> Workaround: If you are compiling your own povray, you can raise the
> values which sizes the various FixedSimpleVector:
> * LIGHTSOURCE_VECTOR_SIZE
> * MEDIA_VECTOR_SIZE
> * MEDIA_INTERVAL_VECTOR_SIZE
> * LIT_INTERVAL_VECTOR_SIZE
> * LIGHT_INTERSECTION_VECTOR_SIZE
> * RAYINTERIOR_VECTOR_SIZE
> * WEIGHTEDTEXTURE_VECTOR_SIZE
>
>
> --
> Just because nobody complains does not mean all parachutes are perfect.


Post a reply to this message

From: Kenneth
Subject: Re: Internal Nesting Limit
Date: 3 Apr 2014 18:25:00
Message: <web.533ddf25c1f5941ac2d977c20@news.povray.org>
"Sereib" <nomail@nomail> wrote:

>
> rendering stops with the message:
>
> Internal limit exceeded in FixedSimpleVector
> Fatal error in renderer: A POV-Ray internal nesting limit was reached.
> Render failed
>

I don't know if this will help, but have you tried upping the
'max_intersections' value in your global_settings{} block? By default, it is 64.
(Admittedly, I don't know the technical aspects of what it does; but changing it
might be worth a try.)


Post a reply to this message

From: scott
Subject: Re: Internal Nesting Limit
Date: 4 Apr 2014 02:44:09
Message: <533e54b9$1@news.povray.org>
> I know this issue has frequently been discussed, but I would like to understand
> the reason with the goal, to adjust my scene:
>
> In a scene with many transparent objects with emitting media such as:
>
> sphere{P, r pigment{rgbt 1} hollow no_shadow interior{media{emission rgb 1}}}
>
> rendering stops with the message:
>
> Internal limit exceeded in FixedSimpleVector
> Fatal error in renderer: A POV-Ray internal nesting limit was reached.
> Render failed
>
> if
>
> 1) the number of objects exceeds a certain number
>
> 2) the objects come close to each other and overlap
>
> Changing bounding on/off or max_trace_level does not help.
>
> Is there anything I can do?

Try to minimise your scene as much as possible whilst it still produces 
the error, then post the code here.


Post a reply to this message

From: Sereib
Subject: Re: Internal Nesting Limit
Date: 4 Apr 2014 07:15:00
Message: <web.533e932dc1f5941a1dc1864b0@news.povray.org>
Hi,

here we go:

##################################

global_settings {assumed_gamma 1.5  max_trace_level 5}
#declare rnd1=seed(1);

#declare n=900;
#declare r1=1;
#declare r2=5;

#declare k=1; #while(k<=n)
    #declare P=<rand(rnd1)-0.5,rand(rnd1)-0.5,0>*r2;
    sphere{<0,0,0>,r1 pigment{rgbt 1} hollow no_shadow interior{media{emission
1/r1}} translate P}
#declare k=k+1; #end

camera{location<0,0,-5*r2> look_at<0,0,0>}

##################################

As you see, n is the number of spheres, r1 their radius, and r2 the edge length
of the box which contains all spheres.

If I set r2 = 2 the error occurs, but for r2 = 5 (and otherwise same values)
rendering works.

Maybe this helps?


>
> Try to minimise your scene as much as possible whilst it still produces
> the error, then post the code here.


Post a reply to this message

From: FractRacer
Subject: Re: Internal Nesting Limit
Date: 4 Apr 2014 08:35:58
Message: <533ea72e$1@news.povray.org>

> ##################################
>
> global_settings {assumed_gamma 1.5  max_trace_level 5}
> #declare rnd1=seed(1);
>
> #declare n=900;
> #declare r1=1;
> #declare r2=5;
>
> #declare k=1; #while(k<=n)
>      #declare P=<rand(rnd1)-0.5,rand(rnd1)-0.5,0>*r2;
>      sphere{<0,0,0>,r1 pigment{rgbt 1} hollow no_shadow interior{media{emission
> 1/r1}} translate P}
> #declare k=k+1; #end
>
> camera{location<0,0,-5*r2> look_at<0,0,0>}
>
> ##################################
>
> As you see, n is the number of spheres, r1 their radius, and r2 the edge length
> of the box which contains all spheres.
>
> If I set r2 = 2 the error occurs, but for r2 = 5 (and otherwise same values)
> rendering works.
>

I have tried your code, without the media statement no error occurs, 
even if r2=2. Maybe the stuff is here.

Lionel.


-- 
Do not judge my words, judge my actions.

---

http://www.avast.com


Post a reply to this message

From: Sereib
Subject: Re: Internal Nesting Limit
Date: 4 Apr 2014 09:30:00
Message: <web.533eb38ac1f5941a1dc1864b0@news.povray.org>
Hi,

o.K. ... I have version 3.7 - you too?


>
> I have tried your code, without the media statement no error occurs,
> even if r2=2. Maybe the stuff is here.
>
> Lionel.
>


Post a reply to this message

From: FractRacer
Subject: Re: Internal Nesting Limit
Date: 4 Apr 2014 10:01:23
Message: <533ebb33$1@news.povray.org>

> Hi,
>
> o.K. ... I have version 3.7 - you too?
>

Woouhh...
I have tested your code (with media and r2=2) with v3.6, all works.
But the problem occurs with v3.7. Maybe some changes between the versions...


-- 
Do not judge my words, judge my actions.

---

http://www.avast.com


Post a reply to this message

From: Alain
Subject: Re: Internal Nesting Limit
Date: 4 Apr 2014 15:44:21
Message: <533f0b95@news.povray.org>

> "Sereib" <nomail@nomail> wrote:
>
>>
>> rendering stops with the message:
>>
>> Internal limit exceeded in FixedSimpleVector
>> Fatal error in renderer: A POV-Ray internal nesting limit was reached.
>> Render failed
>>
>
> I don't know if this will help, but have you tried upping the
> 'max_intersections' value in your global_settings{} block? By default, it is 64.
> (Admittedly, I don't know the technical aspects of what it does; but changing it
> might be worth a try.)
>
>

I don't think that it'll work in this case.
If the value is to low, you get an "I-Stack Overflows" message in the 
statistics after the scene is rendered.
It's normaly a non-fatal error, and may be more similar to a 
max_gradiant error. The scene renders, but not correctly.



Alain


Post a reply to this message

Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.