POV-Ray : Newsgroups : povray.general : Adding inside_vector (for CSG) to HF macros in shapes.inc : Re: Adding inside_vector (for CSG) to HF macros in shapes.inc Server Time
30 Jul 2024 22:19:44 EDT (-0400)
  Re: Adding inside_vector (for CSG) to HF macros in shapes.inc  
From: Zeger Knaepen
Date: 19 Oct 2008 07:58:07
Message: <48fb20cf$1@news.povray.org>
"Warp" <war### [at] tagpovrayorg> wrote in message 
news:48fb0aa1@news.povray.org...
> Zeger Knaepen <zeg### [at] povplacecom> wrote:
>> > WITHOUT inside_vector: 735 sec.
>> > WITH inside_vector: 761 sec.
>> >
>> > That's a 3% to 4% increase, on my 2.2 GHZ single-core PC.
>
>> is this just one frame ?  I think for accurate results, you should render 
>> as
>> many frames as you can, and average the render-times.  For all we know, 
>> the
>> difference you came up with now could be due to, I don't know, Windows
>> Update for instance
>
>  If I'm not completely mistaken, POV-Ray only counts the time it's 
> running,
> not how much the system clock has advanced. (But I might remember this
> wrongly.)

I'm not sure about that, I don't think so, but that again is easily tested: 
a relatively slow rendering scene rendered identically a couple of times 
should, if you're right, always have the exact same render-time.
Setting up a scene right now :)
-- START CODE --
camera {
 location <1,3,-10>
 look_at 0
}
light_source {
 <500,500,-500>
 rgb 1
}
julia_fractal {
  <-0.083,0.0,-0.83,-0.025>
  quaternion
  sqr
  max_iteration 640
  precision 1500
  pigment {rgb 1}
}
-- END CODE --
1st try: 28s
2nd try: 32s
I tried to force a longer rendertime by moving around this reply-window 
(moving windows around is very processor-intensive apparently) while it was 
rendering.  I first tried to move around the render window, but for some 
reason, POV-Ray didn't notice it was finished rendering, and the timer kept 
on running.

>  Anyways, it would be interesting to see rendering times of such meshes
> in different situations. For example make a union of the mesh and some
> other object (non-mesh, or even another mesh). Use some atmospherical
> effects such as fog (probably makes no difference, but doesn't hurt to
> try). Instantiate the mesh several times. Things like that.

trying it now!
- a random 5000 triangle mesh, no inside_vector, no fog, no csg, average 
rendertime over 5 renders -> 33.2s
- same 5000 triangle mesh, no inside_vector, fog, no csg, average rendertime 
over 5 renders -> 34.2s
- same 5000 triangle mesh, no inside_vector, no fog, csg (union with a 
non-interfering sphere), average rendertime over 5 renders -> 34.2s
- same 5000 triangle mesh, no inside_vector, fog, csg (union with a 
non-interfering sphere), average rendertime over 5 renders -> 34.4s

- same 5000 triangle mesh, inside_vector x, no fog, no csg, average 
rendertime over 5 renders -> 36.4s
- same 5000 triangle mesh, inside_vector x, fog, no csg, average rendertime 
over 5 renders -> 37.2s
- same 5000 triangle mesh, inside_vector x, no fog, (union with a 
non-interfering sphere), average rendertime over 5 renders -> 38s
- same 5000 triangle mesh, inside_vector x, fog, (union with a 
non-interfering sphere), average rendertime over 5 renders -> 38s

(with "non-interfering sphere" I mean a sphere that doesn't overlap or 
intersects with the mesh, but is on screen)
inside_vector does seem to cause slower rendertimes, even without csg

cu!
-- 
#macro G(b,e)b+(e-b)*C/50#end#macro _(b,e,k,l)#local C=0;#while(C<50)
sphere{G(b,e)+3*z.1pigment{rgb G(k,l)}finish{ambient 1}}#local C=C+1;
#end#end _(y-x,y,x,x+y)_(y,-x-y,x+y,y)_(-x-y,-y,y,y+z)_(-y,y,y+z,x+y)
_(0x+y.5+y/2x)_(0x-y.5+y/2x)            // ZK http://www.povplace.com


Post a reply to this message

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