POV-Ray : Newsgroups : povray.general : Isosurface hills : Re: Isosurface hills Server Time
10 Aug 2024 03:25:18 EDT (-0400)
  Re: Isosurface hills  
From: Chris Huff
Date: 18 Mar 2000 14:13:00
Message: <chrishuff_99-3077B0.14145918032000@news.povray.org>
In article <38D### [at] aolcom>, Lummox JR <Lum### [at] aolcom> wrote:

> Chris Huff wrote:
> > This is a known problem, one which I wish would get fixed soon. It also
> > occurs with things like the bozo pattern(which is actually identical to
> > noise3d()).
> 
> Exactly. Another problem I knew people had was that when seen from a
> distance, the noise3d() function can have a sort of quilted look to it
> because of how the noise function behaves at near-integer values. I
> turbulated x and z a bit to get rid of that (or at least disguise it by
> varying the lines).
> 
> > > The only good solution I can think of would be to modify the f_func.c
> > > file (I've made extensive modifications already, so this isn't 
> > > entirely
> > > out of the question) to include an unclipped noise function. (Too bad
> > > the function doesn't allow a user-specified pre-clip scaling to avoid
> > > that.) I'm not particularly anxious to try that tack if something 
> > > better
> > > can be achieved with the version I'm already using.
> > 
> > I hope someone does it soon. I don't know enough about that kind of
> > function to do anything, but as I understand it, it would be a fairly
> > simple modification in one of the hash functions or in the Noise()
> > function.
> > What are the modifications you have made? Potential new features?
> 
> Modifications I've made so far to the function code:
> 
> - Added functions floor(), ceil(), if() (like the C ?: operator),
>   pi, clock, atan2(), radians(), degrees()

These sound interesting...I notice that they have already been included 
in MegaPOV.


> - int_func3d() was completely rewritten and evaluate_interval()
>   changed to allow interval (method 1) testing which wasn't possible
>   before

Could you clarify this? I don't really understand what you mean.


> - norm_<function> functions added to evaluate an exact normal where
>   possible (using a new "normal" keyword as part of an isosurface,
>   parametric, or my own isoblob)

Is this related to the second normal calculation method, also included 
in MegaPOV?


> I think I'll just go ahead and add an unclipped noise function to the
> code; I may as well at this point. I just need something to call it
> other than noise3d(), and I'll need to rewrite the interval function to
> compensate for the fact that this can reach values beyond the 0-1 limit.

Could you add 4D noise while you are at it? :-)
I think this might be useful for some things, maybe for fire.

-- 
Chris Huff
e-mail: chr### [at] yahoocom
Web page: http://chrishuff.dhs.org/


Post a reply to this message

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