![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
From: Warp
Subject: Re: Scattering media, lightgroups and shadowless lights
Date: 4 Mar 2002 06:36:43
Message: <3c835c4b@news.povray.org>
|
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Isn't the illumination of scattering media technically a shadow test?
Thus a shadowless light...
--
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}// - Warp -
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
From: JRG
Subject: Re: Scattering media, lightgroups and shadowless lights
Date: 4 Mar 2002 13:15:24
Message: <3c83b9bc@news.povray.org>
|
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
I don't think it's a good idea to have a flag which implies other flags. Why should
the shadowless flag imply media_interaction off? I think each flag should be specific
(that's why I'd personally love a no_radiosity and a no_specular flag).
Or, at least, this behaviour should be documented.
--
Jonathan.
"Warp" <war### [at] tag povray org> ha scritto nel messaggio
news:3c835c4b@news.povray.org...
> Isn't the illumination of scattering media technically a shadow test?
> Thus a shadowless light...
>
> --
> #macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
> N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
> N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}// - Warp -
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Mon, 4 Mar 2002 19:15:21 +0100, "JRG" <jrg### [at] hotmail com> wrote:
>I don't think it's a good idea to have a flag which implies other flags. Why should
>the shadowless flag imply media_interaction off? I think each flag should be specific
>(that's why I'd personally love a no_radiosity and a no_specular flag).
Shadowless implies not casting shadows in scattering media. It should
not imply media_interraction off. If it does, it sounds like a bug.
Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] vip bg
TAG e-mail : pet### [at] tag povray org
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Thorsten Froehlich" <tho### [at] trf de> wrote in
news:3c832a40$1@news.povray.org:
> In article <Xns### [at] 204 213 191 226> ,
> che### [at] sympatico ca (Coridon Henshaw) wrote:
>
>> While finding new and better ways to make media explosions, I ran into
>> a serious in that scattering media objects cannot be illuminated by
>> shadowless lights or by lights used in a light_group. While I know
>> that shadowless lights do some funny things, I tend to think that
>> getting ignored by media is a bit much, and that the light_group
>> problem is a blatant bug.
> Could you check if this is or isn't the same as
The issue with media and light groups appears to be the same as
<3c663dd3$1@news.povray.org>. While looking at the other report, I also
noticed that global_lights defaults to 'on' and can't be switched off for
media objects in a light_group.
The problem with shadowless is separate.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Peter Popov <pet### [at] vip bg> wrote in
news:bii78ugisrrqq0labhk54k2b2pl52cacmg@4ax.com:
> On Mon, 4 Mar 2002 19:15:21 +0100, "JRG" <jrg### [at] hotmail com> wrote:
>
>>I don't think it's a good idea to have a flag which implies other
>>flags. Why should the shadowless flag imply media_interaction off? I
>>think each flag should be specific (that's why I'd personally love a
>>no_radiosity and a no_specular flag).
> Shadowless implies not casting shadows in scattering media. It should
> not imply media_interraction off. If it does, it sounds like a bug.
As far as the Megapov lighting code is concerned, shadowless doesn't set
media_interaction=off per say but has pretty much the same effect due to
the way media illumination is calculated.
At first glance, most of the fix is to modify test_shadow() in lighting.c
such that shadow tests are performed with shadowless lights (remove
(Light->Projected_Through_Object != NULL) from the shadow test conditional)
and then to adapt block_point_light() et el so that when handling
shadowless lights, filter_shadow_ray() is only called when the shadowed
object contains a media. Unless I've overlooked something major, both of
these tasks should be relatively straight forward.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 4 Mar 2002 15:56:08 -0500, che### [at] sympatico ca (Coridon Henshaw)
wrote:
>At first glance, most of the fix is to modify test_shadow() in lighting.c
>such that shadow tests are performed with shadowless lights (remove
>(Light->Projected_Through_Object != NULL) from the shadow test conditional)
>and then to adapt block_point_light() et el so that when handling
>shadowless lights, filter_shadow_ray() is only called when the shadowed
>object contains a media. Unless I've overlooked something major, both of
>these tasks should be relatively straight forward.
So basically what you're suggesting that objects will not cast shadows
from shadowless lights anywhere except in scattering media? Doesn't it
look a bit inconsistent?
Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] vip bg
TAG e-mail : pet### [at] tag povray org
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
From: Slime
Subject: Re: Scattering media, lightgroups and shadowless lights
Date: 5 Mar 2002 02:08:25
Message: <3c846ee9@news.povray.org>
|
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
> So basically what you're suggesting that objects will not cast shadows
> from shadowless lights anywhere except in scattering media? Doesn't it
> look a bit inconsistent?
Sorry for putting words in someone's mouth, but I believe he's suggesting
that shadowless lights don't illuminate scattering media at all.
- Slime
[ http://www.slimeland.com/ ]
[ http://www.slimeland.com/images/ ]
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Tue, 5 Mar 2002 02:05:41 -0500, "Slime" <noo### [at] hotmail com>
wrote:
>Sorry for putting words in someone's mouth, but I believe he's suggesting
>that shadowless lights don't illuminate scattering media at all.
Which would also be inconsistent.
Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] vip bg
TAG e-mail : pet### [at] tag povray org
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Peter Popov <pet### [at] vip bg> wrote in
news:khp88us6ttlb5fvqe1atehojkdhkrt8jae@4ax.com:
> So basically what you're suggesting that objects will not cast shadows
> from shadowless lights anywhere except in scattering media? Doesn't it
> look a bit inconsistent?
As it stands, scattering media cannot be illuminated by shadowless lights.
What I am proposing is a way to fix this problem.
Scattering media are effectively in the shadow of their own container
object and are illuminated in part of the code in lighting.c which handles
shadows. Since shadowless lights by definition cast no shadows, scattering
media is never illuminated by shadowless lights as the shadow handling code
is never called. What I'm suggesting is to rework a few dozen lines of
code in lighting.c so the shadow handler is called when a shadowless light
shines on a scattering media. The changes will not cause shadowless lights
to cast actual shadows (i.e. dark areas) on scattering media but rather
will cause scattering media to be _technically_ 'shadowed' by their own
container objects and therefore be illuminated.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Slime" <noo### [at] hotmail com> wrote in news:3c846ee9@news.povray.org:
>> So basically what you're suggesting that objects will not cast shadows
>> from shadowless lights anywhere except in scattering media? Doesn't it
>> look a bit inconsistent?
> Sorry for putting words in someone's mouth, but I believe he's suggesting
> that shadowless lights don't illuminate scattering media at all.
Read the bug report I posted and render the example scene and you will see
just that. Shadowless lights don't illuminate scattering media. The code
changes I suggested are to correct this problem.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |