POV-Ray : Newsgroups : povray.general : Multiple media vs. multiple containers : Multiple media vs. multiple containers Server Time
11 Aug 2024 15:16:30 EDT (-0400)
  Multiple media vs. multiple containers  
From: Peter Popov
Date: 3 Jul 1999 16:47:37
Message: <378070b4.106214832@204.213.191.228>
Hi there.

Here're the results from the tests I promised. Sorry it took me so
long, but it's media, you know...

Please see p.b.s-f for the code and p.b.i for example images.

Type 1 - multiple densities

type1_1.tga, Quality 2  -  7 minutes
type1_2.tga, Quality 3  - 21 minutes
type1_3.tga, Quality 4  - 29 minutes

Type 2 - multiple containers

type2_0.tga, Quality 1  -  4 minutes
type2_1.tga, Quality 2  -  6 minutes
type2_2.tga, Quality 3  - 17 minutes
type2_3.tga, Quality 4  - n.a. sorry, dad played freecell :(
type2_2.tga, Quality 5  - 37 minutes

Multiple containers are faster and with better quality. The examples
posted in p.b.i. show a particle system of 50 particles. Using
multiple containers, the result was much less grainy and was rendered
in 6 minutes vs.29 for multiple media. The results differ slightly but
that's due to the small accuracy of type 1.

I also did a 100 frames 100x100 anim. It started with a single
particle and added a particle every frame (if anyone's interested I'll
post it). Here're the stats:

Type 1 (multiple media) statistics:

Total time: 3:16:34, render 3:16:11, parse 0:0:23

Intersections:
Shape		Tests		Succeeded	Percentage
Sphere		419435		1708050	70.60
Bounding Box	3831950		3830350	99.95
Vista		1030320		1030320	100.00

Media:
Intervals	4963140
Samples		34746921	7.00 per interval
Transmitted rays		1418040
I-Stack overflows		7125

Memory:
Smallest	26
Largest		8216
Peak		134132

command line:
+w100 +h100 +mb0 +uv +kfi0 +kff99 -d +a0.4 +r2

Type 2 (multiple containers) statistics:

Total time: 2:59:18, render 2:58:39, parse 0:0:16

Intersections:
Shape		Tests		Succeeded	Percentage
Sphere		54614525	37059270	67.86
Bounding Box	266093261	113576463	42.68
Vista		19936209	12944728	64.93

Media:
Intervals	45169600
Samples		313641496	6.94 per interval
Transmitted rays		7248496
I-Stack overflows		989

Memory:
Smallest	26
Largest		8216
Peak		198691

System: K6/233 96 RAM running POV-Ray for windows 3.1e on 98
command line: +w100 +h100 +mb0 +uv +kfi0 +kff99 -d +a0.4 +r2

(These look fine using Lucida Console)

The main disadvantage of type 1 is that all densities are calculated
for every interval and every sample. This leads to graininess and
inaccuracy because small radius densities may not be hit at all.

The main disadvantage of type 2 and it is that max_trace_level and
max_intersections should be really high. This could be really painful
in scenes with reflective / refractive objects. I've put in a type 3
which uses merge to avoid the problem, but preliminary tests show that
it's slower than type 1 (though more accurate).

Well, that's it for now. Any comments?


Peter Popov
ICQ: 15002700


Post a reply to this message

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