[Radiance-general] Radiosity method implementation on Radiance

Roland Schregle roland.schregle at gmail.com
Fri Jun 21 07:54:25 PDT 2013


Hi Germán,

aeons ago I hacked up a primitive radiosity thingy for RADIANCE in an afternoon to compare with our measurements for validation of diffuse interreflection. It's actually embedded in the rendering engine and may not compile with the current release anymore, but it might be worth looking at to give you some ideas on how (not?) to do it. As I recall, it used a standard relaxation method and a fixed quadrilateral mesh, so nothing fancy.

Let me know if you're interested and I'll excavate that ancient artifact.

Regards,

--Roland


--
"END OF LINE" [MCP, 1982]


On 21/06/2013, at 2:57 PM, "Lars O. Grobe" <grobe at gmx.net> wrote:

> Hi German!
> 
>> I am thinking on implementing a hybrid methodology between Radiosity
>> method and Ray-tracing, for accelerating some calculations (by giving up
>> accuracy, maybe)
> 
> Did you think about in what use cases radiosity may be faster, and in
> which it wouldn't? And are you aware of the "hybrid" rendering approach
> used by Radiance? Especially the way that the ambient cache is working
> as a means to accelerate the stochastic diffuse-indirect calculation
> that a radiosity renderer aims at?
> 
>> I think I can make algorythms to subdivide polygons into meshes,
>> however, what I do not know how to do is:
> 
> I think most of this is already happening when you are using the ambi
> cache.
> 
>> *1.- Calculation of View (Form) Factors:* I guess a straitforward way is
>> to calculate them by randomly sending rays from one surface to the rest
>> of them, but I do not know how to do that (or use octrees). (k/N would
>> be the view factor Fij... where k is the number of rays that falled into
>> j from i, and N the total number of rays sent)
> 
> If you want to do this using scripts and the available tools, you could
> step through all surfaces in a scene file. There are tools to do the
> sampling available.
> 
>> *2.- Render:* After I have the Radiosities of every polygon. How can I
>> make a render? I guess I can use *vwrays *somehow, but I am not sure how
>> to check which polygon am I "seeing", in order to use the calculated values.
> 
> You can tell rtrace to output object names instead of radiance or
> irradiance values. You can also get both the name of the object and its
> radiance. This would even allow to add the radiance value of a scene
> with -ab 0 and the precalculated "radiosity" value. Somehow what most
> radiosity renderers do to achieve sharp shadows (they add a
> raytracing-step for direct calculation).
> 
> Still I have doubts that this can be faster than the current
> implementation.... :)
> 
> Cheers, Lars.
> 
> _______________________________________________
> Radiance-general mailing list
> Radiance-general at radiance-online.org
> http://www.radiance-online.org/mailman/listinfo/radiance-general



More information about the Radiance-general mailing list