POV-Ray : Newsgroups : povray.unofficial.patches : Having Trouble adding Chris Huff's Post Process Filters Patch : Re: Having Trouble adding Chris Huff's Post Process Filters Patch Server Time
2 Sep 2024 06:15:31 EDT (-0400)
  Re: Having Trouble adding Chris Huff's Post Process Filters Patch  
From: Chris Huff
Date: 1 May 2000 07:36:19
Message: <chrishuff_99-0C252F.06392601052000@news.povray.org>
In article <H0wNOQovLPI7G9Hdpawnc5YNnZja@4ax.com>, Glen Berry 
<7no### [at] ezwvcom> wrote:

> I downloaded Aladdin's Expander and managed to extract all the files,

Well, *some* good news. :-)


> but when trying to compile the patch I got some errors. I think I
> didn't modify parse.c properly.
> 
> In particular, the section starting with:
> 
> Parse_Camera():
> 
> DJGPP says "too few arguments to function `Parse_Camera'
> and also:    "parse error before `:'   "

You are supposed to put that part of the code in the Parse_Camera() 
function, though you can just leave it out, all it does is allow 
post_process to be specified in the camera(and currently, if you have 
some cameras defined but not used, their post_processes are still used). 
Don't put the Parse_Camera(): itself in parse.c, I was just using that 
line as a label to show where to put the following code. It might have 
helped if I had used something like "In the function Parse_Camera():" 
instead...

In the first section, labeled "tokenize.c", find the part that starts
ifdef PostProcessPatch
  {POST_PROCESS_TOKEN, "post_process"},
  {FOCAL_BLUR_TOKEN, "focal_blur"},

And add in COLOR_MATRIX_TOKEN to PATTERN_BLUR_TOKEN so that part of the 
code looks like the snippet in the file.

Do the same thing in the next section, labeled "parse.h": find the right 
spot in parse.h and copy the additional lines.
Then, in parse.c, find the function Parse_Camera(), and copy this block 
of code into the EXPECT block with all the CASE...END_CASE statements, 
right before the focal blur(although the location isn't that important, 
it seems like a good place to put it):

#ifdef PostProcessPatch
     CASE (POST_PROCESS_TOKEN)
#ifdef UnofficialBlocking
       parseUnofficialFeature(0.4);
#endif
       Parse_Post_Process();
     END_CASE
#endif

Next, delete the current Parse_Post_Process() function, and replace it 
with the given one. Replace the postproc.c and postproc.h files, and 
that should be it!

-- 
Christopher James Huff - Personal e-mail: chr### [at] yahoocom
TAG(Technical Assistance Group) e-mail: chr### [at] tagpovrayorg
Personal Web page: http://chrishuff.dhs.org/
TAG Web page: http://tag.povray.org/


Post a reply to this message

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