POV-Ray : Newsgroups : povray.windows : Parsing error with Pov Ray addon for blender. "No matching } in 'texture'" : Re: Parsing error with Pov Ray addon for blender. "No matching } in 'textur= Server Time
18 Apr 2024 08:45:43 EDT (-0400)
  Re: Parsing error with Pov Ray addon for blender. "No matching } in 'textur=  
From: tylerm8101
Date: 20 Sep 2019 15:30:01
Message: <web.5d852881a2069978f8be68120@news.povray.org>
"Mr" <mauriceraybaud [at] hotmail dot fr>> wrote:
> "tylerm8101" <tyl### [at] gmailcom> wrote:
> > Thomas de Groot <tho### [at] degrootorg> wrote:
> > > Op 10/09/2019 om 05:10 schreef tylerm8101:
> > > > Hi.
> > > >
> > > > I'm using the Pov ray addon for Blender 2.79. On windows 10.
> > > >
> > > > Yesterday I ran into an issue where it wouldn't parse correctly. So... I
looked
> > > > at what Pov ray said:
> > > >
> > > > "Parse error: No matching } in 'texture', undeclared identifier 'Material_051'
> > > > found instead."
> > > >
> > > > It also highlighted a line of text:
> > > >
> > > > "texture{Material_051}"
> > > >
> > > > This text was apart of a larger group of text:
> > > >
> > > > #declare MAT_Material_034 =
> > > > texture{
> > > >          slope { lampTarget1 }
> > > >          texture_map {
> > > >              [0.98 finish {diffuse 0.72}]
> > > >              [0.002
> > > >                  pigment {rgbft<1, 0.638, 0.716, 0, 0>}
> > > >                  finish {shader_Material_034}
> > > >              ]
> > > >          }
> > > >      }
> > > >      texture_list {
> > > >          9
> > > >   texture{Material_051}
> > > >
> > > >   texture{Material_052}
> > > >
> > > >   texture{Material_034}
> > > >
> > > >   texture{Material_035}
> > > >
> > > >   texture{Material_038}
> > > >
> > > >   texture{Material_059}
> > > >
> > > >   texture{Material_015}
> > > >
> > > > Im not sure if I needed to show more, I dont know what influences what. Sorry.
> > > >
> > > >
> > > >
> > >
> > > Those types of errors are often difficult to track down. At first guess
> > > I would suggest to check:
> > >
> > > - is Material_51 included somewhere in the scene or in another include
> > > file, and if yes, is its built consistent? If no, include the texture
> > > and see if everything works.
> > >
> > > - what happens if you comment out texture{Material_051} (and change the
> > > preceding '9' into '8')? Is the error gone? if not, does the error now
> > > mention Material_052? i.d. the next texture in the list?
> > >
> > > - if no remedy, copy here the complete MAT_Material_034 texture so that
> > > we may look at it.
> > >
> > > - as last resort (or first one) a successful testing involves to
> > > gradually build up the texture from simple to complex and each time test
> > > the result. If it works, add a new element until the error appears: you
> > > then know where the problem arises from.
> > >
> > > --
> > > Thomas
> >
> > Hi.
> >
> > Sorry this is a late reply but I was contacted by a dude named Alain Martel who
> > emailed me and said this...
> >
> >
> > " This looks highly suspicious to me :
> >   #declare MAT_Material_034 =
> >

> >
> > Look if you have a
> > #dedclare MAT_Material_051
> > somewhere in your scene.
> >
> > If that's the case, look in the settings if you can prevent prepending

> >
> > Alternately, do a search and replace to replace all instances of

> >
> >
> >
> > I couldn't ask him anything because google can't recognize his address, Ill ask
> > them here...
> >
> >
> > I have a #declare MAT_Material_051 in the file, what exactly does this do and
> > why is it bad?
> >
> > If I change the MAT_Material to just Material, would It need the same amount of
> > indentation?
> >
> > And... how could I possibly prevent materials having MAT_ prepended by using the
> > settings?
>
> Anything after declare can be arbitrary provided it's written the same way when

> "MAT" prefix, it appeared to us, in a way, safer, as it avoided confusion with
> POV syntax reserved keywords such as "texture" or "material" and here "MAT" also
> specifies the hierarchy of the translated Blender
> item to be a material (in Blender terms), as opposed to a texture (in Blender
> terms) that can be nested into the said materials. Since users of the graphical
> interface could perfectly have given them the same names, this explains our way
> of thinking as a disambiguation.  Now, this does not mean that you should not go
> over your scene and check whether every named #declare MAT_something is also
> called as MAT_something later in the scene. And, if not, you could indeed rename
> them with the same name (but it can be whatever you want). To do this it is
> required that you first fully grasp what is attempted by a stable working
> version of the script (before Blender 2.8 broke everything leaving us with huge
> rewriting tasks(2.78 should do)). Namely and as explained in my previous link,
> try to understand:
> *POV-Ray "finish map" trick that is used to create specular maps,
> *layered textures, as they are used to overlay various textures that could have
> transparencies,
> *what the "metallic" keyword does since it is used to emulate the colored
> specular feature of previous Blender versions by specifying a colored but
> trasparent finish to put over a simpler form of pigment,
> * normal and image_map to be used into the respective bump and diffuse Blender
> influence channels from texture slots (Blender 2.8 broke texture slots)
> *Finally the replacement of a texture by a function to be able to call its
> components (whatever.s to get its saturation or .v for value) and this allows it
> to be used equally in grey level expecting keywords or other channels with just
> one initial declaration.
>
> You will find all of this, and even more, into the excellent POV-Ray
> documentation which is objectively the best in the world, Thanks mostly to Jim
> Holsenback ! (...and the rest of this lovely community :-))
> I hope you do get there, so you can help us to get the exporter back on its feet
> after the earthquake through which we managed to hold what remains together ;-)
> Thanks for your patience.

Hi.

That is a lot of jargon.


This doesn't have to do anything with my problem, but yesterday I downloaded the
blender 2.79 nightly build, which allowed me to basically restart Blender.

When I want to enable the Pov ray addon it has these 2 branches, one saying
"binaries location" and the other say "include location".

I usually put the pvengine64.exe in the Binary branch, but leave the "Included"
empty. Am I supposed to put something there? And.. am I supposed to even put the
pov ray executable in the binaries branch?


Post a reply to this message

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