POV-Ray : Newsgroups : povray.general : Spotlights and shadowless Server Time
18 Nov 2024 23:15:09 EST (-0500)
  Spotlights and shadowless (Message 1 to 6 of 6)  
From: Paragon
Subject: Spotlights and shadowless
Date: 14 Jul 2002 02:02:37
Message: <3d3113fd@news.povray.org>
This might be a question with an obvious answer, but I'll ask it anyways.
Is there any way to have a spot light not cast shadows but still cast light
like...well...a spotlight?  If I use the shadowless keyword before the
spotlight keyword than it seems to have no effect.  But if I use the
shadowless keyword after the spotlight keyword (and modifiers), then the
light does not cast a shadow but becomes similar to a point light.  My guess
as why this is is because the darkness outside the cone of light of the
spotlight is considered the light's shadow so using the shadowless keyword
in effect makes it a point light.
The reason I ask this is I want a spotlight as a key light to cast a single
shadow for an object and I want another (dimmer) spotlight to be the fill
light for that object.  I need the fill light to not cast shadows but still
be spotlight (I don't want an omnidirectional light as a fill light).  And
since I do need a single shadow, I can't use the keyword no_shadow for my
object.

-Paragon


Post a reply to this message

From: Sir Charles W  Shults III
Subject: Re: Spotlights and shadowless
Date: 14 Jul 2002 02:34:19
Message: <3d311b6b$1@news.povray.org>
Can you put a second object exactly inside the first, but make it
"no_shadow" and get what you want?  Then your fill light might be made to fill
the shadow area.  Not certain if this will work, but just a thought.

Cheers!

Chip Shults
My robotics, space and CGI web page - http://home.cfl.rr.com/aichip


Post a reply to this message

From: hughes b
Subject: Re: Spotlights and shadowless
Date: 14 Jul 2002 06:57:37
Message: <3d315921@news.povray.org>
"Sir Charles W. Shults III" <aic### [at] cflrrcom> wrote in message
news:3d311b6b$1@news.povray.org...
>     Can you put a second object exactly inside the first, but make it
> "no_shadow" and get what you want?  Then your fill light might be made to
fill
> the shadow area.  Not certain if this will work, but just a thought.

Would seem a plausible solution to me, yes. Using no_image on the duplicate
object with it having a shadow while the visible object has no_shadow. Or
I'm lost as to what the idea is ;-)

If specular highlights are involved then this might be another matter. No
wait, nevermind. no_shadow doesn't seem to affect that. Had to check.

I was thinking light_group could be the answer but a quick attempt to get
all the pieces together can be tricky. Just now, I managed a highlightless
and shadowless cone atop a sphere with highlighting and shadow, both lit by
a pair of spotlights but only one to each. Then I would need to consider the
floor plane, the dimmer spotlight shining into the shadowed area there.

Something's probably possible but I didn't get far enough to say the
original question could be done like that. In the following pov script I
also tried nesting the floor plane into the other groups but I'm not certain
you could ever get exactly the right setup to cover all the variables. Maybe
Chip had the right idea to begin with, without all the rest of this. I
needed the practice anyway.

// Shadow(less)/highlight(less)/spotlight light_groups example, for P-R v3.5

camera {
  location <-4, 4, -4>
  look_at y
  angle 60
}

union {

// visible sphere with shadow from previous lightgroup
light_group {
light_source { <10,20,-20>, <1,1,0>
        spotlight
        point_at y
        radius 1
        falloff 6 // each of these...
   // shadowless // comment out have highlighting
}
sphere { 0,1 }
 global_lights off
}

// cone without a shadow (shadowless light fouls this up*)
light_group {
light_source { <10,20,-20>, <1,0,1>/2
        spotlight
        point_at y
        radius 1
        falloff 3 // ...are not the same...
   // shadowless // comment out to have highlighting (*read above)
}
    cone { <0,1,0>, 1, <0,3,0>, 0 no_shadow}
 global_lights off
}
 pigment { color rgb <1,1,1> }
        finish {
                specular 0.9
                roughness 0.03
                ambient 0.2
                diffuse 0.7
    }
} // union

// floor, and shadow-making sphere (unseen besides)
light_group {
light_source { <10,20,-20>, <1,1,1>
        spotlight
        point_at y
        radius 1
        falloff 9 // ...just to be different
}
plane { y,-1
    pigment { checker color rgb <1,1,0>, color rgb <0,1,1> scale 0.5}
    finish { ambient 0 diffuse 1 }
}
sphere { 0,1
 pigment { color rgb <1,1,1> }
        no_image
        }
 global_lights on
}


Post a reply to this message

From: Warp
Subject: Re: Spotlights and shadowless
Date: 14 Jul 2002 11:36:49
Message: <3d319a90@news.povray.org>
Paragon <use### [at] hostcom> wrote:
> Is there any way to have a spot light not cast shadows but still cast light
> like...well...a spotlight?

  I have complained about this in the past, but for no avail... It seems
to be something inherited from a very early version of povray, and no-one
has changed it since then.
  However, probably projected_through will help, even thought it might be
slightly slower than a pure spotlight.

-- 
#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

From: Sir Charles W  Shults III
Subject: Re: Spotlights and shadowless
Date: 14 Jul 2002 12:21:30
Message: <3d31a50a@news.povray.org>
Ah, yes- then you could do it.

Cheers!

Chip Shults
My robotics, space and CGI web page - http://home.cfl.rr.com/aichip


Post a reply to this message

From: Peter Popov
Subject: Re: Spotlights and shadowless
Date: 14 Jul 2002 16:08:37
Message: <h9m3ju0hi3nseq5j2urrt11ea9uh799ovj@4ax.com>
On Sat, 13 Jul 2002 23:02:52 -0700, "Paragon" <use### [at] hostcom> wrote:

>This might be a question with an obvious answer, but I'll ask it anyways.
>Is there any way to have a spot light not cast shadows but still cast light
>like...well...a spotlight?  If I use the shadowless keyword before the
>spotlight keyword than it seems to have no effect.  But if I use the
>shadowless keyword after the spotlight keyword (and modifiers), then the
>light does not cast a shadow but becomes similar to a point light.  My guess
>as why this is is because the darkness outside the cone of light of the
>spotlight is considered the light's shadow so using the shadowless keyword
>in effect makes it a point light.

A shadowless light is internally considered a fill-light. It is a
remnant from the very first time shadowless lights were introduced to
POV. There might still be some evidence lingering in the source code
supporting this thesis, I know there was back in 3.1.

A fill-light is, well, a fill-light. Therefore it's not a spotlight -
at least from the point of view of the person who designed the
feature. It's for that same reason that shadowless lights do not cause
highlights either.

Try using light groups to avoid the limitation. Don't quote me on this
but I think this was one of the reasons light groups were introduced.


Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] vipbg
TAG      e-mail : pet### [at] tagpovrayorg


Post a reply to this message

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