 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 2026-02-24 12:36 (-4), kurtz le pirate wrote:
>
> How this <color White=1> is interpreted and why does it turn red?
Where does the identifier `White` come from? Like BE, I would like to
know its value.
My understanding of that syntax is that it compares each component of
`White` with 1. But if `White` comes from colors.inc, the
component-wise comparison would still end up as white. The only way I
can see this evaluating as red is if `White.red` is exactly 1, and
`White.green`, `White.blue`, `White.filter`, and `White.transmit` are
all something other than 1.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 25/02/2026 04:21, Cousin Ricky wrote:
> On 2026-02-24 12:36 (-4), kurtz le pirate wrote:
>>
>> How this <color White=1> is interpreted and why does it turn red?
>
> Where does the identifier `White` come from? Like BE, I would like to
> know its value.
White come from "colors.inc"
> My understanding of that syntax is that it compares each component of
> `White` with 1. But if `White` comes from colors.inc, the
> component-wise comparison would still end up as white. The only way I
> can see this evaluating as red is if `White.red` is exactly 1, and
> `White.green`, `White.blue`, `White.filter`, and `White.transmit` are
> all something other than 1.
>
I also thought that "=" was interpreted as a comparison operator.
But since “White” is defined by rgb 1, that doesn't explain anything.
--
kurtz le pirate
compagnie de la banquise
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
[before light_source]
White = <1.000, 1.000, 1.000, 0.000, 0.000>
[after light_source]
White = <1.000, 1.000, 1.000, 0.000, 0.000>
"C:\Users\Mini\Documents\POV-Ray\v3.8-beta\scenes\_CodeScratchPad.pov" line 13:
Parse Warning: Expected pure RGB color expression,
unexpected filter and transmit components will have no effect.
-
"C:\Users\Mini\Documents\POV-Ray\v3.8-beta\scenes\_CodeScratchPad.pov" line 16:
Parse Error: Parse halted by #error directive: No
objects in scene
I'm thinking that the red must be coming from something else.
Post the whole scene, a link, or at least more to work from?
- BE
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Le 2026-02-25 à 06:45, Bald Eagle a écrit :
> [before light_source]
> White = <1.000, 1.000, 1.000, 0.000, 0.000>
>
> [after light_source]
> White = <1.000, 1.000, 1.000, 0.000, 0.000>
> "C:\Users\Mini\Documents\POV-Ray\v3.8-beta\scenes\_CodeScratchPad.pov" line 13:
> Parse Warning: Expected pure RGB color expression,
> unexpected filter and transmit components will have no effect.
> -
> "C:\Users\Mini\Documents\POV-Ray\v3.8-beta\scenes\_CodeScratchPad.pov" line 16:
> Parse Error: Parse halted by #error directive: No
> objects in scene
>
> I'm thinking that the red must be coming from something else.
> Post the whole scene, a link, or at least more to work from?
>
> - BE
>
Just tested, using this : #declare W = (White=1);
And got this :
W = <1.000, 0.000, 0.000, 1.000, 1.000>
NOT what I would expect.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Alain Martel <kua### [at] videotron ca> wrote:
> Just tested, using this : #declare W = (White=1);
> And got this :
>
> W = <1.000, 0.000, 0.000, 1.000, 1.000>
> NOT what I would expect.
Yes indeed, VERY strange.
I was going to do something like that, but I needed to head out.
what if plug (White=1) directly into a debug vstr statement?
- BE
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 226-02-24 12:36 (-4), kurtz le pirate wrote:
>
> How this <color White=1> is interpreted and why does it turn red?
I just tried it with different versions of POV-Ray. It is red only with
POV-Ray 3.8 and the discontinued POV-Ray 3.7.1. It is white for all
versions 3.5 to 3.7.0.10.
This appears to be a bug that was introduced in POV-Ray 3.7.1.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Cousin Ricky <ric### [at] yahoo com> wrote:
> On 226-02-24 12:36 (-4), kurtz le pirate wrote:
> >
> > How this <color White=1> is interpreted and why does it turn red?
>
> I just tried it with different versions of POV-Ray. It is red only with
> POV-Ray 3.8 and the discontinued POV-Ray 3.7.1. It is white for all
> versions 3.5 to 3.7.0.10.
>
> This appears to be a bug that was introduced in POV-Ray 3.7.1.
Nice work, Richard.
So what are you doing that I didn't?
Because as you can see above/below, I'm using 3.8
[after light_source]
White = <1.000, 1.000, 1.000, 0.000, 0.000>
"C:\Users\Mini\Documents\POV-Ray\v3.8-beta\scenes\_CodeScratchPad.pov" line 13:
Parse Warning: Expected pure RGB color expression,
unexpected filter and transmit components will have no effect.
Are you outputting the color value with vstr(), or performing a render using
that light source?
I'm just trying to understand where this all goes off the rails, and where to
look under the hood.
- BE
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 2026-02-25 16:11 (-4), Bald Eagle wrote:
> Cousin Ricky <ric### [at] yahoo com> wrote:
>> On 226-02-24 12:36 (-4), kurtz le pirate wrote:
>>>
>>> How this <color White=1> is interpreted and why does it turn red?
>>
>> I just tried it with different versions of POV-Ray. It is red only with
>> POV-Ray 3.8 and the discontinued POV-Ray 3.7.1. It is white for all
>> versions 3.5 to 3.7.0.10.
>>
>> This appears to be a bug that was introduced in POV-Ray 3.7.1.
>
> Nice work, Richard.
> So what are you doing that I didn't?
> Because as you can see above/below, I'm using 3.8
I just opened a bug report on GitHub, issue #486.
https://github.com/POV-Ray/povray/issues/486
> [after light_source]
> White = <1.000, 1.000, 1.000, 0.000, 0.000>
> "C:\Users\Mini\Documents\POV-Ray\v3.8-beta\scenes\_CodeScratchPad.pov" line 13:
> Parse Warning: Expected pure RGB color expression,
> unexpected filter and transmit components will have no effect.
The warning about unexpected filter and transmit components indicates
that the bug did manifest, but without altering `White`. Did you create
an image output? Did you vstr() the expression `(White=1)`?
> Are you outputting the color value with vstr(), or performing a render using
> that light source?
Both. My source code is in the GitHub report.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Cousin Ricky <ric### [at] yahoo com> wrote:
> The warning about unexpected filter and transmit components indicates
> that the bug did manifest, but without altering `White`. Did you create
> an image output? Did you vstr() the expression `(White=1)`?
As far as I can remember (it was early and I was on my way out the door to
work):
I vstr()'d the expression White,
then instantiated the light source (copy/pasted kurtz le pirate's exact code) ,
then vstr()'d the expression White again.
Which is now even weirder, because if White got changed to include filter and
transmit, then why didn't it show up with vstr? And why did it still have g&b
values of 1?
I'll check/post my actual code when I get home - but that won't be for another
5h.
- BE
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 2026-02-25 17:09 (-4), Bald Eagle wrote:
>
> I vstr()'d the expression White,
>
> then instantiated the light source (copy/pasted kurtz le pirate's exact code) ,
>
> then vstr()'d the expression White again.
>
> Which is now even weirder, because if White got changed to include filter and
> transmit, then why didn't it show up with vstr? And why did it still have g&b
> values of 1?
>
> I'll check/post my actual code when I get home - but that won't be for another
> 5h.
The value of `White` never changes. It is the expression `(White=1)`
(which is a conditional in this context, not an assignment) that you
should vstr().
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|
 |