POV-Ray : Newsgroups : povray.unofficial.patches : ANNOUNCE: MegaPOV 1.0 available : Re: ANNOUNCE: MegaPOV 1.0 available Server Time
5 Oct 2024 05:14:06 EDT (-0400)
  Re: ANNOUNCE: MegaPOV 1.0 available  
From: Christopher James Huff
Date: 1 Jan 2003 14:13:50
Message: <cjameshuff-1738CC.14093701012003@netplex.aussie.org>
In article <3e1331bd$1@news.povray.org>, "Mael" <mae### [at] hotmailcom> 
wrote:

> I wasn't talking about saving the whole rays history.. Just adding options
> to output one or more kind of pixel contribution (diffuse, radiosity,
> photons, etc) as a separate image. Exactly as in the post-process patch ,
> but instead of keeping depth, normal, etc we'll keep diffuse, highlights, or
> whatever the user asks for. So i don't think the memory overhead would be
> too important.

My point was that you do need the ray tree to get full use of it. 
Otherwise you have to accumulate the data in a 2D buffer or only use the 
primary rays...not that helpful, and making it optional would add (a 
little) overhead even when you aren't using the feature.

I think these buffers about strike the right balance:
Raw color values (unclipped, antialiased)
first intersection depth
first intersection point
first intersection normal
first ray origin
first ray direction
object "ID" (internally object pointer)

136 bytes per pixel if all are used, a max of about 102MB for a 1024*768 
image. More reasonable, and enough for almost anything. A minimum of 
18MB for just the color information. (for comparison, a 24-bit 
uncompressed image of the same size would be 2.25MB)
I'm not sure if the other buffers should be antialiased as well...it 
doesn't really make a lot of sense, and would slow rendering.

You could get rid of ray direction and depth or intersection point, 
direction and depth can be calculated from origin and point, point can 
be calculated by direction, origin, and depth. The max memory could go 
down to 78MB. This makes more calculation later on though, keeping them 
means faster filters.
You could also use fixed point, especially for normal and direction, 
where there is a definite range of component values.

-- 
Christopher James Huff <cja### [at] earthlinknet>
http://home.earthlink.net/~cjameshuff/
POV-Ray TAG: chr### [at] tagpovrayorg
http://tag.povray.org/


Post a reply to this message

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