POV-Ray : Newsgroups : povray.general : Scene optimization : Re: Scene optimization Server Time
31 Jul 2024 12:23:08 EDT (-0400)
  Re: Scene optimization  
From: Alain
Date: 15 Mar 2007 16:56:27
Message: <45f9c10b$1@news.povray.org>
Anthony D. Baye nous apporta ses lumieres en ce 15-03-2007 14:57:
>> In the radiosity section, do you change error_bound? To what extent? When you
>> push it down, the rendering time increase. It also requires a higher count to
>> prevent splotshiness, resulting in still longer renders. One of the main reason
>> to use small error_bound is to produce sharper and deeper shadows.
>> You can try lowering pretrace_end. At the cost of more pretrace time, it may
>> allows you to use more relaxed settings elsewhere, resulting in globaly faster
>> renders.
>> Do you have "normals on" in the radiosity block? Normal computation in radiosity
>> is very computationaly heavy. If you can do without, remove normals on.

> /> My radiosity settings are pretty default, the count is set to 35, the
> error_bound is 0.2.  I do use media on, but I don't think I have normals
> on.
With an error_bound in that range, you need a larger count, 350 still been 
"low", you may need count 1000!
error_bound 0.2 is far from default (1.8)

>> Do you have large difference/intersection where you remove 100's small pieces
>> from a large base object? You may try diferencing a blob instead of many spheres
>> and cylinders. You may also try using merge to combine all the pieces that you
>> remove. That way, you only test 2 bounding box instead of one for each components.

> /> I do use a macro that creates my circular brick walls, I tried several
> methods for creating rounded brick walls, and finally came up with an
> isosurface that could do it from the outside, but I needed texture on the
> inside, so i was forced to use CSG.
> I used merge wherever possible, and tried bounding the wall manually, but
> there was no significant speed increase.
Merge may help if you have lots of objects to remove. If you use it in place of 
an union, you get longer render times in most cases.

>> If you have an isosurface with some very large max_gradient, Using the log,
>> square root or cube root of the function may allows you to reduce max_gradient
>> to a more reasonable range, speeding up it's rendering.

> /> My heaviest isosurfaces are the ones I used to carve runes into the
> floor, they typically have a ridiculous max_gradient, and I'm looking for a
> suitable runic font to replace them with.
I you use an object_pattern, you are stuck. If that's the case, try fidling with 
the treshold value, I suspect that setting it close to 1 or 0 could help, but 
nover got around to test that...

>> Many reflection or refractions? Lots of total internal reflections? Try
>> increasing adc_bailout. In some cases, the visual impact is negligeale, but the
>> resulting speed up very interesting. The default is 1/256, depending on the
>> scane, you may get by with as much as 1/100 or even 1/64 without to much
>> negative impact!

> /> I have considered trying that.

>> Any glossy object? phong and specular don't work with radiosity. You can get a
>> similar effect using a small amount of blured reflection, but it will increase
>> the rendering time.

> /> This is the real killer, besides the light sources, or perhaps because of
> them.  I have many glossy and reflective surfaces, the floor is highly
> polished, as are the columns, and there are silver accents and features
> throughout the scene.
Ading no_reflection on some of those may help. The floor can be a decent 
candidate, if you want it to show in reflections, add another one without 
reflection, no_image and no_shadow. That second "floor" will show in 
reflections, but you won't see what's reflected on it in other reflections.
If you want those objects to still show in reflections, add a copy of the object 
with a non-reflective texture and no_image and no_shadow.

>> Filtering and scattering media never react to radiosity, they need actual
>> lights. Emissive media can illuminate radiosity if you use "media on" in the
>> radiosity block.

> /> I use massive amounts of emitting media in the scene for flame effects,
> and it does render rather slowly, but I've learned to live with it,
> considering the effects.
Emissive media is perty fast as there is no shadow tests to do.

>> Simple textures can't be optimised, they are as simple as can be. Layered ones
>> can be worked upon. You need some test scene with some simple objects to receive
>> your test textures. Start with your layered texture on one object. Now, on
>> another object in the same scene, try to emulate the complex texture with a
>> simpler one. Once you find a suitable, simpler texture, copy it to your real scene.

> /> I am currently pulling almost all of my textures straight from the
> standard texture library, specifically stones.inc (The textures there are
> much better than most of my attempts.)

>> In some cases, using light_group can significatively improve your rendering time.

> /> I did introduce a light group, to limit the effect of the light_sources
> to the candles only, the speed increase that resulted was nothing short of
> incredible (Well in excess of 500%.  In twelve hours, it had rendered
> almost half of the scene, when previously, it had taken several days to
> render less than a quarter.)

> Thanks for the input.

> ADB






-- 
Alain
-------------------------------------------------
   Last night my wife met me at the front door. She was wearing a Sexy negligee. 
The only trouble was, she was coming home.
	Rodney Dangerfield


Post a reply to this message

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