|
|
On 02/22/2017 08:07 AM, Kenneth wrote:
>
> Confirmed on Windows 7 (64-bit) as well.
>
> However, the problem seems to be just simple syntax errors in the ior.inc file,
> causing it to fail. Easily fixed (or so it seems!)
>
> One of the new features of v3.71 is the "optional" keyword, for macros. (It's
> *completely* new to me, so I haven't had a chance to figure out how it works.)
> But in POV-Ray's help file, an example is given that's written like this...
>
> #macro Foo(P1, optional P2)
> #ifndef(local.P2) #local P2 = 0; #end // provide default for P2
> .....
> #end
>
> Note the 'dot' before P2.
>
> However, in 3.7.1 beta 3's ior.inc file, there's no 'dot' preceding such an
> 'optional' variable (quite a few of those variables, in fact.) I think that's
> where the fatal error message(s) are coming from.
>
> Instead, such constructs are erroneously(?) written there as
>
> #ifdef(local (disp)) (this is the first error at line 84)
>
> They should be like this, AFAIK...
>
> #ifdef(local.disp)
>
> I did a search-and-replace of all such syntax errors, and the ior.inc file no
> longer fails. (I haven't actually *used* that new ior.inc file yet, though...)
>
>
With commits 2b12beb and e592aaf, November 21, 2016, Christoph replaced
the `local()`/`global()` pseudo-functions with `local`/`global`
pseudo-dictionaries.
I believe your updates to ior.inc should have been implemented at that
time.
Are you up for submitting a github pull request against the 3.7.1 branch
with your updates? If not, would you please make your updates available
here in a scene file newsgroup so someone else might create the pull req
or otherwise pick up your changes?
Thanks.
Bill P.
Post a reply to this message
|
|