POV-Ray : Newsgroups : povray.beta-test : Calling a macro in layered texture : Re: Calling a macro in layered texture Server Time
4 Jul 2024 13:06:51 EDT (-0400)
  Re: Calling a macro in layered texture  
From: Kenneth
Date: 30 Jan 2010 12:35:00
Message: <web.4b646b1dd2525f1a65f302820@news.povray.org>
Thorsten Froehlich <tho### [at] trfde> wrote:>

> > [Thomas wrote:]
> > The following gives a parse error stating that it cannot find the closing
> > pigment brace but finds a macro identifier instead:
> >
> > #declare MyTex =
> > texture{ pigment{uv_mapping p_map16 }}
> > texture{ pigment {color GammaColor(<0.83,0.83,0.83>,Gamma) transmit  0.17}}
> >
>
> The question is: What does the macro return? A vector? - If so, that vector
> is interpreted to be a 5-component vector (or extended accordingly). If a
> vector is returned, the error message is correct
> (http://www.povray.org/documentation/view/3.6.1/230/) because the transmit
> would be a second color you are specifying, which is of course "unexpected".
>

I want to make sure I understand this myself. (I just re-read the "common color
pitfalls" section of the docs, but don't quite know which part is applicable
here.) Let's assume that Thomas's macro returns a simple 3-component vector.
Would adding 'rgb' solve his problem?

texture{ pigment {color rgb GammaColor(<0.83,0.83,0.83>,Gamma) transmit  0.17}}

Ken


Post a reply to this message

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