pmap

Roland Schregle wrote:

Carsten Bauer wrote:

> ahm, what's the matter? pmap and R3.6? OK, lets lean myself once more
> out of the window, I suppose that it means not *that* much work either,
> so I'll do it.

Well I'll be damned! Hail to Carsten the Saviour!!! :^)

I don't think it IS that much of a big deal, it's really just the
wrapper routines that need to be updated. The core shouldn't need any
changes, and believe me, you wouldn't want to mess with it unless you're
well versed in MC.

The ultimate goal (well, at least mine) would be to include pmap
with the official Radiance distribution. There are two things
that could help to make this possible.

The first one is that someone who understands the code will have
to be available for continuous maintenance. That needn't
necessarily involve a lot of work, but should be understood as a
serious commitment anyway.

The other thing that I'd like to see is a better seperation
between classic and pmap code. Last time I looked at it, pmap
added a number of function definitions and other code to existing
Radiance source files (eg. xxxPhotonScatter() in rt/normal.c).
An effort to move this code into seperate files would make it
much easier to adapt pmap to future (and current) versions of
Radiance.

In the ideal case, the pmap related code in the existing files
would be reduced to function calls. For one, this would make it
easier to delegate maintenance responsibility to different
people. And a "minimally invasive" integration might also lower
the psychological barrier against a quick (possibly tentative)
inclusion. The fewer and smaller conditional compiles are needed
to build Radiance with or without pmap, the better the chances.

I hope that won't scare you away again, Carsten...

-schorsch

···

--
Georg Mischler -- simulations developer -- schorsch at schorsch com
+schorsch.com+ -- lighting design tools -- http://www.schorsch.com/

Georg Mischler wrote:

The other thing that I'd like to see is a better seperation
between classic and pmap code.

> ......
> An effort to move this code into seperate files would make it

much easier to adapt pmap to future (and current) versions of
Radiance.

I definitely agree on this point (in fact I'm following the same approach of separation in my current radzilla restructuring work).

In the ideal case, the pmap related code in the existing files
would be reduced to function calls. For one, this would make it
easier to delegate maintenance responsibility to different
people. And a "minimally invasive" integration might also lower
the psychological barrier against a quick (possibly tentative)
inclusion. The fewer and smaller conditional compiles are needed
to build Radiance with or without pmap, the better the chances.

I also agree, but the problem is that this point is considerably more difficult to solve than the one above.. I had some concepts of rearranging in mind which would greatly reduce the number of invasion/interface points for additional modules, functions, whatever, but I had to put them aside as they would definitely mean quite a lot of work.
It's the usual story, at some point one better contents oneself with that what's already there.
Let me quote Peters words (ripped from another discussion thread and put into a new sentence :-):
  "and given today's abstraction level of the rendering core (or the absence of it) " -end of quotation- any additional stuff has to adapt itself a bit to this underlying structure.

Which of course doesn't mean that there aren't at least some ways to modify the current pmap/Radiance connection in favour of your proposals.

-Carsten

Lars O. Grobe wrote:

Is the photon map addition for the current release of radiance, or will
I have to switch to radzilla in this case?
  

I believe the latest iteration of pmap is the module Carsten integrated with his Radzilla, yes. Haven't heard from Roland in a while...

- Rob

Hi Rob!

I believe the latest iteration of pmap is the module Carsten integrated
with his Radzilla, yes. Haven't heard from Roland in a while...

I found that there is even no pmap for 3.8? The learnix-distribution
mentions that pmap is not supported any more in their radiance set-up
and available only in radzilla (which is in learnix). Seams that I will
have to get radzilla on my Mac (used to be difficult because of QT).

CU Lars.

Lars O. Grobe wrote:

I found that there is even no pmap for 3.8? The learnix-distribution
mentions that pmap is not supported any more in their radiance set-up
and available only in radzilla (which is in learnix). Seams that I will
have to get radzilla on my Mac (used to be difficult because of QT).

Hi Lars,

Let me know how you make out; I have never gotten QT going on my Mac, and the last time I tried radzilla I even got some errors with the CLI tools, but I have not tried Carsten's latest code.

> I believe the latest iteration of pmap is the module Carsten integrated
> with his Radzilla, yes. Haven't heard from Roland in a while...

I found that there is even no pmap for 3.8? The learnix-distribution
mentions that pmap is not supported any more in their radiance set-up
and available only in radzilla (which is in learnix)

I contacted Jan over pmap when I started working on the latest LEARNIX
around September last year. He was very busy at the time (and probably
still is) with his PhD. He was about to talk to their programmer about
some minor changes he liked to see implemented in pmap on top of the
obvious adjustments necessary to move it from Radiance 3.7 to 3.8. Seems
that Jan has just been too busy.

Carsten Bauer was kind enough to tweak the 3.7 pmap so it would compile
with 3.8. I did, however, decide not to ship it with LEARNIX since it was
not officially endorsed by the maintainer. This tough decision was
eased by the fact that one or two of the test routines shipping with pmap
failed.

As regards to Radzilla (radzilla/RADZILLA ???) -- There are three types of
photons in pmap, of which Carsten implements two. Don't ask me what they
are and when you need them. I guess that the third, unimplemented type is
not used very often, otherwise it would probably be there in Radzilla.

Because of LEARNIX, I have been following the progression of RZ very
closely and am pleased to report that it has improved tremendously over
the last 6 months. However, one thing that you always must remember is
that RZ is a complete re-write of Radiance 'classic' in C++. While the
algorithms are obviously the same, RZ has not seen as much bug-testing and
validation as 'Classic' has enjoyed over the years. This is also true for
the pmap plug-in. I am not saying that RZ is buggy, but it might be an
issue. Carten actually considers RZ 'alpha'.

So, to cut a long story short: Unless you go back to R 3.7, there is no
'official' pmap for Radiance. I would personally very much like to see
pmap integrated into the main Radiance tree and available with the same
download, but there are probably issues (license, maintainership, coding
style etc.) that have prevented this from happening. So far, anyhow.

Axel

Hi!

Carsten Bauer was kind enough to tweak the 3.7 pmap so it would compile
with 3.8.

I think I will try that besides Radzilla. The problem is that the model I want to render has been developed with classic Radiance as target engine, and as it becane rather huge, uses all kinds of optimizations that fit to classic. I will try to render it in Radzilla, but have not been successful so far. So I need the safe fall-back while integrating Radzilla step by step into the simulation.

Carten actually considers RZ 'alpha'.

I think this is one more reason to use it, who else should test it on ridicularly blown-up scenes with thousands of light sources :wink: I will try this week-end, I just compiled the latest Radzilla (still failed with some GUI-stuff on QT/Mac, but I won't need that now anyway).

I would personally very much like to see pmap integrated into the

> main Radiance tree and available with the same download

Me too... as we come to a point where the photon map is needed, is available and validated, it would be not very reasonable to keep people away from using it. Maybe something for a Radiance 4.x line?

CU Lars.

Hi Axel,

Axel Jacobs wrote:

> I believe the latest iteration of pmap is the module Carsten integrated
> with his Radzilla, yes. Haven't heard from Roland in a while...

I found that there is even no pmap for 3.8? The learnix-distribution
mentions that pmap is not supported any more in their radiance set-up
and available only in radzilla (which is in learnix)

I contacted Jan over pmap when I started working on the latest LEARNIX
around September last year. He was very busy at the time (and probably
still is) with his PhD. He was about to talk to their programmer about
some minor changes he liked to see implemented in pmap on top of the
obvious adjustments necessary to move it from Radiance 3.7 to 3.8. Seems
that Jan has just been too busy.

Yes, I'm really sorry for that! I'm still working on my PhD, now parallel to projects, which is really difficult.

We had to develop a virtual goniophotometer for pmap in order to generate btdfs for special materials. At the first stage, we thought, that we had to make some changes to pmap to realize that project. Then, it would have been no big deal to make the changes to 3.8. But then it came out, that we didn't have to make changes for that. And besides this, at that time we got some new (non-radiance related) projects for our programmer and therefore the "upgrade" of pmap from 3.7 to 3.8 unfortunately sloped down in the priority list.

For us it is really difficult to maintain software, when no related (and financed) projects are available. Additionally the author of pmap, Roland Schregle, is not at the institute any more, which increases for us the needed effort to make changes on the code.
Besides the financial aspects, our programmer is "loaded" at the moment with more than 120% with other projects until fall of the year, so I don't see a quick solution for that.
So in the next months, we can maintain pmap only , if bugs encounter.

I really support your and Lars' wish to include it in main tree!
The question is, how? We need a volunteer, who is maintaining it.
This is the main issue. License is absolutely no problem.

Jan

···

Carsten Bauer was kind enough to tweak the 3.7 pmap so it would compile
with 3.8. I did, however, decide not to ship it with LEARNIX since it was
not officially endorsed by the maintainer. This tough decision was
eased by the fact that one or two of the test routines shipping with pmap
failed.

As regards to Radzilla (radzilla/RADZILLA ???) -- There are three types of
photons in pmap, of which Carsten implements two. Don't ask me what they
are and when you need them. I guess that the third, unimplemented type is
not used very often, otherwise it would probably be there in Radzilla.

Because of LEARNIX, I have been following the progression of RZ very
closely and am pleased to report that it has improved tremendously over
the last 6 months. However, one thing that you always must remember is
that RZ is a complete re-write of Radiance 'classic' in C++. While the
algorithms are obviously the same, RZ has not seen as much bug-testing and
validation as 'Classic' has enjoyed over the years. This is also true for
the pmap plug-in. I am not saying that RZ is buggy, but it might be an
issue. Carten actually considers RZ 'alpha'.

So, to cut a long story short: Unless you go back to R 3.7, there is no
'official' pmap for Radiance. I would personally very much like to see
pmap integrated into the main Radiance tree and available with the same
download, but there are probably issues (license, maintainership, coding
style etc.) that have prevented this from happening. So far, anyhow.

Axel

_______________________________________________
Radiance-general mailing list
[email protected]
http://www.radiance-online.org/mailman/listinfo/radiance-general

--
Dipl.-Ing. Jan Wienold
Project Manager
Fraunhofer-Institut f�r Solare Energiesysteme
Thermal Systems and Buildings, Lighting and Daylighting
Heidenhofstr. 2, 79110 Freiburg, Germany
Phone: +49(0)761 4588 5133 Fax:+49(0)761 4588 9133
[email protected]

In office: Mo,Tue: 9:00-18:00
We-Fr: 8:30-14:00

> I believe the latest iteration of pmap is the module Carsten integrated
> with his Radzilla, yes. Haven't heard from Roland in a while...

I found that there is even no pmap for 3.8? The learnix-distribution
mentions that pmap is not supported any more in their radiance set-up
and available only in radzilla (which is in learnix)

I contacted Jan over pmap when I started working on the latest LEARNIX
around September last year. He was very busy at the time (and probably
still is) with his PhD. He was about to talk to their programmer about
some minor changes he liked to see implemented in pmap on top of the
obvious adjustments necessary to move it from Radiance 3.7 to 3.8. Seems
that Jan has just been too busy.

Carsten Bauer was kind enough to tweak the 3.7 pmap so it would compile
with 3.8. I did, however, decide not to ship it with LEARNIX since it was
not officially endorsed by Jan, the maintainer. This tough decision was
eased by the fact that one or two of the test routines shipping with pmap
failed.

As regards to Radzilla (radzilla/RADZILLA ???) -- There are three types of
photons in pmap, of which Carsten implements two. Don't ask me what they
are and when you need them. I guess that the third, unimplemented type is
not used very often, otherwise it would probably be there in Radzilla.

Because of LEARNIX, I have been following the progression of RZ very
closely and am pleased to report that it has improved tremendously over
the last 6 months. However, one thing that you always must remember is
that RZ is a complete re-write of Radiance 'classic' in C++. While the
algorithms are obviously the same, RZ has not seen as much bug-testing and
validation as 'Classic' has enjoyed over the years. This is also true for
the pmap plug-in. I am not saying that RZ is buggy, but it might be an
issue. Carten actually considers RZ 'alpha'.

So, to cut a long story short: Unless you go back to R 3.7, there is no
'official' pmap for Radiance. I would personally very much like to see
pmap integrated into the main Radiance tree and available with the same
download, but there are probably issues (license, maintainership, coding
style etc.) that have prevented this from happening. So far, anyhow.

Axel

Hi,

Radzilla as it is publicly available has not seen much updates for years now, so I would not really build up new projects on it. The pmap development is going on, Jan had presented the 4.x-pmap extension on the workshop in Copenhagen. It is not available at the moment, so we have to wait until he can make any new announcements, but I would for sure prefer waiting for the new pmap to be polished and released instead of tweaking the old code.

Cheers, Lars.